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
CSC305 Summer Lecture 07
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Javier Gonzalez-Sanchez
PRO
August 10, 2025
Programming
0
88
CSC305 Summer Lecture 07
Individual Software Design and Development
Blackboard
(202508)
Javier Gonzalez-Sanchez
PRO
August 10, 2025
Tweet
Share
More Decks by Javier Gonzalez-Sanchez
See All by Javier Gonzalez-Sanchez
CSC307 Lecture 10
javiergs
PRO
1
660
CSC364 Lecture 10
javiergs
PRO
0
82
CSC364 Lecture 09
javiergs
PRO
0
100
CSC307 Lecture 09
javiergs
PRO
1
840
CSC307 Lecture 08
javiergs
PRO
0
670
CSC364 Lecture 08
javiergs
PRO
0
33
CSC307 Lecture 07
javiergs
PRO
1
550
CSC364 Lecture 07
javiergs
PRO
0
93
CSC307 Lecture 06
javiergs
PRO
0
690
Other Decks in Programming
See All in Programming
Vibe Coding - AI 驅動的軟體開發
mickyp100
0
180
例外処理とどう使い分ける?Result型を使ったエラー設計 #burikaigi
kajitack
16
6.1k
なるべく楽してバックエンドに型をつけたい!(楽とは言ってない)
hibiki_cube
0
140
責任感のあるCloudWatchアラームを設計しよう
akihisaikeda
3
180
AIによるイベントストーミング図からのコード生成 / AI-powered code generation from Event Storming diagrams
nrslib
2
1.9k
AIで開発はどれくらい加速したのか?AIエージェントによるコード生成を、現場の評価と研究開発の評価の両面からdeep diveしてみる
daisuketakeda
1
2.5k
Architectural Extensions
denyspoltorak
0
290
AtCoder Conference 2025
shindannin
0
1.1k
humanlayerのブログから学ぶ、良いCLAUDE.mdの書き方
tsukamoto1783
0
200
dchart: charts from deck markup
ajstarks
3
990
15年続くIoTサービスのSREエンジニアが挑む分散トレーシング導入
melonps
2
220
コマンドとリード間の連携に対する脅威分析フレームワーク
pandayumi
1
460
Featured
See All Featured
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
450
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.2k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
150
Visualization
eitanlees
150
17k
From π to Pie charts
rasagy
0
120
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
310
Automating Front-end Workflow
addyosmani
1371
200k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
120
Abbi's Birthday
coloredviolet
1
4.8k
Testing 201, or: Great Expectations
jmmastey
46
8k
Transcript
Dr. Javier Gonzalez-Sanchez
[email protected]
www.javiergs.info o ffi ce: 14 -227
CSC 305 Individual Software Design and Development | Summer Version Lecture 07. Blackboard
Model-View-Controller 2
Observer One More Thing
Main
Observer 5 https://github.com/CSC3100/Patterns
Observable 6 https://github.com/CSC3100/Patterns
Classroom | New Version 7 https://github.com/CSC3100/Patterns
Student | New Version 8 https://github.com/CSC3100/Patterns
Teacher | New Version 9 https://github.com/CSC3100/Patterns
Important 10 Do not reinvent the wheel! (Do not make
another implementation for classes Observer or Observable -they already exist in libraries!)
Important 11 Depreciated java.util.Observer java.util.Observable The implementation of these packages
That is NOT about the Observer pattern being depreciated.
Important 12 Use java.beans.PropertyChangeListener java.beans.PropertyChangeSupport
Classroom | Listener Version 13 https://github.com/CSC3100/Patterns
Student | Listener Version 14 https://github.com/CSC3100/Patterns
Teacher | Listener Version 15 https://github.com/CSC3100/Patterns
Scenario A 16
Scenario B 17
Singleton
Singleton 19
Singleton 20 https://github.com/CSC3100/Patterns
Singleton 21 https://github.com/CSC3100/Patterns
Warning 22 Do not Abuse of the Singleton You are
transforming OOP into Structural Programming!! 🙈
Example 1
Lab 24
Blueprint 25 M a in Dr a wAre a Dr
a wAre a Listener Repository
Main 26
DrawArea 27
DrawAreaListener 28
Repository 29
To be Continued…
Questions 31
Lab
None
CSC 305 Individual Software Design and Development Javier Gonzalez-Sanchez, Ph.D.
[email protected]
Summer 2025 Copyright. These slides can only be used as study material for the class CSC305 at Cal Poly. They cannot be distributed or used for another purpose.