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
Javier Gonzalez-Sanchez
PRO
October 03, 2025
Programming
350
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
CSC509 Lecture 05
Software Design
Software Architecture II
(202410)
Javier Gonzalez-Sanchez
PRO
October 03, 2025
More Decks by Javier Gonzalez-Sanchez
See All by Javier Gonzalez-Sanchez
CSC307 Lecture 21
javiergs
PRO
0
59
CSC307 Lecture 17
javiergs
PRO
0
320
CSC305 Lecture 18
javiergs
PRO
0
370
final project
javiergs
PRO
0
120
CSC305 Lecture 18
javiergs
PRO
0
94
CSC307_L17_mqtt.pdf
javiergs
PRO
0
60
UP Lecture 28
javiergs
PRO
0
55
CSC307_L99_TDD.pdf
javiergs
PRO
0
66
CSC307_L99_TDD.pdf
javiergs
PRO
0
63
Other Decks in Programming
See All in Programming
AIとASP.NET Coreで雑Webアプリを作った話
mayuki
0
670
肥大化するレガシーコードに立ち向かうためのインターフェース分離と依存の逆転 / JJUG CCC 2026 Spring
hirokunimaeta
0
590
Contextとはなにか
chiroruxx
1
360
Vite+ Unified Toolchain for the Web
naokihaba
0
330
Oxcを導入して開発体験が向上した話
yug1224
4
330
The NotImplementedError Problem in Ruby
koic
1
880
エンジニア向け会社紹介/Findy Company Profile
findyinc
6
350k
キャリア迷子上等 ─ "ない道"は自分で作ればいい
16bitidol
3
2.2k
Spring Security 実践 ─ GraphQL APIで実務に役立つ 認証・認可 を学ぶ
wagyu
0
250
LLM本来の能力を解き放つサンドボックス技術とAI民主化への適用
yukukotani
3
4.5k
DynamoDBには集計系のクエリがないけどなんとかしたい
musan
1
180
IBM Bobを活用したレガシーアプリの最新化
oniak3ibm
PRO
1
210
Featured
See All Featured
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
55k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
320
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
330
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
1.8k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.8k
Mind Mapping
helmedeiros
PRO
1
260
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
170
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
580
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
260
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
270
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
370
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.