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
Javier Gonzalez-Sanchez
PRO
August 10, 2025
Programming
0
37
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
CSC305 Summer Lecture 09
javiergs
PRO
0
12
CSC305 Summer Lecture 08
javiergs
PRO
0
34
CSC305 Summer Lecture 06
javiergs
PRO
0
71
CSC305 Summer Lecture 05
javiergs
PRO
0
88
CSC305 Summer Lecture 04
javiergs
PRO
1
71
CSC305 Summer Lecture 03
javiergs
PRO
0
84
CSC305 Summer Lecture 02
javiergs
PRO
0
44
CSC305 Summer Lecture 01
javiergs
PRO
0
67
CSC307 Lecture 16
javiergs
PRO
0
150
Other Decks in Programming
See All in Programming
構文解析器入門
ydah
7
2.1k
階層化自動テストで開発に機動力を
ickx
1
480
AIのメモリー
watany
13
1.4k
DataformでPythonする / dataform-de-python
snhryt
0
160
WebAssemblyインタプリタを書く ~Component Modelを添えて~
ruccho
1
710
可変性を制する設計: 構造と振る舞いから考える概念モデリングとその実装
a_suenami
10
1.7k
技術的負債で信頼性が限界だったWordPress運用をShifterで完全復活させた話
rvirus0817
0
830
kiroでゲームを作ってみた
iriikeita
0
150
CLI ツールを Go ライブラリ として再実装する理由 / Why reimplement a CLI tool as a Go library
ktr_0731
3
1k
SQLアンチパターン第2版 データベースプログラミングで陥りがちな失敗とその対策 / Intro to SQL Antipatterns 2nd
twada
PRO
38
11k
대규모 트래픽을 처리하는 프론트 개발자의 전략
maryang
0
120
AHC051解法紹介
eijirou
0
260
Featured
See All Featured
Mobile First: as difficult as doing things right
swwweet
223
9.9k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Practical Orchestrator
shlominoach
190
11k
Why Our Code Smells
bkeepers
PRO
337
57k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Visualization
eitanlees
146
16k
Side Projects
sachag
455
43k
Scaling GitHub
holman
461
140k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
A designer walks into a library…
pauljervisheath
207
24k
Embracing the Ebb and Flow
colly
86
4.8k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
332
22k
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.