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 Lecture 12
Search
Javier Gonzalez-Sanchez
PRO
October 16, 2024
Programming
0
230
CSC305 Lecture 12
Individual Software Design and Development
Connecting the Dots
(202502)
Javier Gonzalez-Sanchez
PRO
October 16, 2024
Tweet
Share
More Decks by Javier Gonzalez-Sanchez
See All by Javier Gonzalez-Sanchez
CSC305 Lecture 08
javiergs
PRO
0
220
CSC509 Lecture 06
javiergs
PRO
0
260
CSC305 Lecture 07
javiergs
PRO
0
270
CSC509 Lecture 05
javiergs
PRO
0
300
CSC305 Lecture 06
javiergs
PRO
0
250
CSC509 Lecture 04
javiergs
PRO
0
300
CSC305 Lecture 05
javiergs
PRO
0
220
CSC509 Lecture 03
javiergs
PRO
0
340
CSC305 Lecture 04
javiergs
PRO
0
270
Other Decks in Programming
See All in Programming
All About Angular's New Signal Forms
manfredsteyer
PRO
0
180
AIと人間の共創開発!OSSで試行錯誤した開発スタイル
mae616
1
650
私はどうやって技術力を上げたのか
yusukebe
44
19k
2分台で1500examples完走!爆速CIを支える環境構築術 - Kaigi on Rails 2025
falcon8823
3
3.7k
組込みだけじゃない!TinyGo で始める無料クラウド開発入門
otakakot
1
300
Domain-centric? Why Hexagonal, Onion, and Clean Architecture Are Answers to the Wrong Question
olivergierke
3
910
スマホから Youtube Shortsを見られないようにする
lemolatoon
27
33k
iOSエンジニア向けの英語学習アプリを作る!
yukawashouhei
0
200
uniqueパッケージの内部実装を支えるweak pointerの話
magavel
0
1k
Devoxx BE - Local Development in the AI Era
kdubois
0
130
詳しくない分野でのVibe Codingで困ったことと学び/vibe-coding-in-unfamiliar-area
shibayu36
3
5.1k
Le côté obscur des IA génératives
pascallemerrer
0
150
Featured
See All Featured
Automating Front-end Workflow
addyosmani
1371
200k
Context Engineering - Making Every Token Count
addyosmani
7
260
The Power of CSS Pseudo Elements
geoffreycrofte
79
6k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
22k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
Code Reviewing Like a Champion
maltzj
526
40k
Thoughts on Productivity
jonyablonski
70
4.9k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
61k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.7k
Being A Developer After 40
akosma
91
590k
Transcript
Dr. Javier Gonzalez-Sanchez
[email protected]
www.javiergs.info o ffi ce: 14 -227
CSC 305 Individual Software Design and Development Lecture 12. Connecting the Dots
Previously
GoF Patterns 3
Observer 4
Singleton 5
Composite 6
Application 7
Connecting the Dots
Application | GUI 9 Main JFrame ChartPanel JPanel
Application | Data Gathering 10 Main JFrame ChartPanel Thread Genius
JPanel
Application | Observer 11 Main JFrame ChartPanel Thread <<Singleton>> Board
Genius JPanel PropertyChange Listener PropertyChange Support
MarkerDecoratorShadow MarkerDecoratorDot MarkerSimple Application | Decorator 12 MarkerDecoratorDot MarkerSimple MarkerSimple
ChallengePlotter | Main 13 https://github.com/CSC3100/Patterns
ChallengePlotter | Genius | Runnable 14 https://github.com/CSC3100/Patterns
ChallengePlotter | Board | Singleton, Observable 15 https://github.com/CSC3100/Patterns
ChallengePlotter | ChartPanel | Observer 16 https://github.com/CSC3100/Patterns
ChallengePlotter | Marker | Decorator 17 https://github.com/CSC3100/Patterns
ChallengePlotter | MarkerDecorator | Decorator 18 https://github.com/CSC3100/Patterns
ChallengePlotter | MarkerDecoratorBar | Decorator 19 https://github.com/CSC3100/Patterns
ChallengePlotter | MarkerDecoratorDot | Decorator 20 https://github.com/CSC3100/Patterns
ChallengePlotter | MarkerSimple | Decorator 21 https://github.com/CSC3100/Patterns
Questions 22
Lab
GUI 24
Shape Decorator 25 New 1st-click 2nd-click 3rd-click 4th-click
Shape Decorator 26 New 1st-click 2nd-click 3rd-click 4th-click
CSC 305 Individual Software Design and Development Javier Gonzalez-Sanchez, Ph.D.
[email protected]
Winter 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.