Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
CSC509 Lecture 05
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Javier Gonzalez-Sanchez
PRO
October 03, 2025
Programming
0
340
CSC509 Lecture 05
Software Design
Software Architecture II
(202410)
Javier Gonzalez-Sanchez
PRO
October 03, 2025
Tweet
Share
More Decks by Javier Gonzalez-Sanchez
See All by Javier Gonzalez-Sanchez
CSC364 Lecture 18
javiergs
PRO
0
42
CSC364 Lecture 17
javiergs
PRO
0
160
CSC307_L17_review_5050.pdf
javiergs
PRO
0
16
CSC307 Lecture 16
javiergs
PRO
0
260
CSC364 Lecture 16
javiergs
PRO
0
180
CSC307 Lecture 15
javiergs
PRO
0
270
CSC364 Lecture 15
javiergs
PRO
0
70
CSC364 Lecture 14
javiergs
PRO
0
140
CSC307 Lecture 14
javiergs
PRO
0
480
Other Decks in Programming
See All in Programming
Kubernetesでセルフホストが簡単なNewSQLを求めて / Seeking a NewSQL Database That's Simple to Self-Host on Kubernetes
nnaka2992
0
180
Codexに役割を持たせる 他のAIエージェントと組み合わせる実務Tips
o8n
4
1.4k
モックわからないマン卒業記 ~振る舞いを起点に見直した、フロントエンドテストにおけるモックの使いどころ~
tasukuwatanabe
3
430
20260315 AWSなんもわからん🥲
chiilog
2
180
AI時代のシステム設計:ドメインモデルで変更しやすさを守る設計戦略
masuda220
PRO
6
1.1k
Redox OS でのネームスペース管理と chroot の実現
isanethen
0
460
Linux Kernelの1文字のミスで 権限昇格ができた話
rqda
0
2.2k
ローカルで稼働するAI エージェントを超えて / beyond-local-ai-agents
gawa
0
150
LM Linkで(非力な!)ノートPCでローカルLLM
seosoft
0
250
実践ハーネスエンジニアリング #MOSHTech
kajitack
7
4.6k
AI活用のコスパを最大化する方法
ochtum
0
340
AWS×クラウドネイティブソフトウェア設計 / AWS x Cloud-Native Software Design
nrslib
16
3.4k
Featured
See All Featured
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
91
Designing for Timeless Needs
cassininazir
0
170
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
140
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2k
Designing for humans not robots
tammielis
254
26k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.5k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.2k
How to train your dragon (web standard)
notwaldorf
97
6.6k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
2.6k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Transcript
Dr. Javier Gonzalez-Sanchez
[email protected]
www.javiergs.info o ffi ce: 14 -227
CSC 508/9 Software Engineering (Design & Deployment) Lecture 05. Software Architecture II
Environment 2
Blueprint 3 Architecture Design Code
Model-View-Controller
Model-View-Controller 5
None
None
None
None
Appendix Observer Pattern
Observer 11
Classroom | Initial Version 12 https://github.com/CSC3100/Patterns
Student | Initial Version class Student { public String answerQuestion
(String question) { String answer; // solve the question return answer; } } 13 https://github.com/CSC3100/Patterns
Teacher | Initial Version 14 https://github.com/CSC3100/Patterns
Observer 15
https://github.com/CSC3100/Patterns
https://github.com/CSC3100/Patterns
https://github.com/CSC3100/Patterns
https://github.com/CSC3100/Patterns
https://github.com/CSC3100/Patterns
Important 21 Do not reinvent the wheel! (Do not make
another implementation for classes Observer or Observable -they already exist in libraries!)
Important 22 Depreciated java.util.Observer java.util.Observable The implementation of these packages
That is NOT about the Observer pattern being depreciated.
Important 23 Use java.beans.PropertyChangeListener java.beans.PropertyChangeSupport
https://github.com/CSC3100/Patterns
https://github.com/CSC3100/Patterns
https://github.com/CSC3100/Patterns
Thoughts? 27
Questions 28
CSC 509 Software Engineering Javier Gonzalez-Sanchez, Ph.D.
[email protected]
Fall 2025
Copyright. These slides can only be used as study material for the class CSC509 at Cal Poly. They cannot be distributed or used for another purpose.