Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
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
CSC310 Lecture 07
javiergs
PRO
0
26
CSC510 Lecture 10
javiergs
PRO
0
22
CSC510 Lecture 09
javiergs
PRO
1
46
CSC310 Lecture 06
javiergs
PRO
0
38
CSC310 Lecture 05
javiergs
PRO
0
62
CSC310 Lecture 04
javiergs
PRO
0
45
CSC510 Lecture 03
javiergs
PRO
0
76
CSC310 Lecture 03
javiergs
PRO
0
55
CSC310 Lecture 02
javiergs
PRO
0
68
Other Decks in Programming
See All in Programming
AWS DevOps Agentで インシデント対応をAIに任せたい
honmarkhunt
7
3.2k
UnityでSystem.Net.WebSocketsなWebSocketサーバが動かないのでUnity Monoのコードを覗いてみた / about implementing websocket server with unity mono
drumath2237
1
390
マイコン向けの軽量Ruby「PicoRuby」で各種デバイスを制御するネイティブアプリの実現手法
bash0c7
0
440
Everything will be SERVERLESS — 信じて運用した10年の経験値 / Everything Will be Serverless — Lessons Learned from 10 Years of Operational Experience
seike460
PRO
1
510
Security issues being discussed on Web Platforms
petamoriken
0
1.2k
選挙速報を多くのユーザーへ 届ける Live Activities 設計
hamayokokuririn
0
170
Go × SIMDで高速化するベクトル検索 ~ルーフラインモデルでSIMDが効く境界を探れ! ~
po3rin
1
3.7k
Omarchy Tokyo やると聞いて UMPC 買ってセットアップしてきた
mtsmfm
0
160
世界の中心で、AI(App Intents)をさけぶ ー App Intents中心設計の実践ガイド
touyou
0
680
モバイル交通系ICへのチャージ実例から考える、クロスプラットフォーム開発におけるiOS実機テスト設計とCI運用
yusuga
1
540
[ハンズオン]AIへの指示だけで「五目並べ」を作ってみよう
satoshi256kbyte
1
220
Agents on Rails - Rails at Scale 2026
irinanazarova
0
260
Featured
See All Featured
4 Signs Your Business is Dying
shpigford
187
23k
AI: The stuff that nobody shows you
jnunemaker
PRO
10
1.1k
Git: the NoSQL Database
bkeepers
PRO
432
67k
Fashionably flexible responsive web design (full day workshop)
malarkey
409
67k
Optimizing for Happiness
mojombo
378
71k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.7k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Mobile First: as difficult as doing things right
swwweet
225
10k
The Pragmatic Product Professional
lauravandoore
37
7.5k
Building Adaptive Systems
keathley
44
3.2k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
440
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.