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 14
Search
Javier Gonzalez-Sanchez
PRO
October 22, 2024
Programming
0
160
CSC305 Lecture 14
Individual Software Design and Development
Strategy
(202502)
Javier Gonzalez-Sanchez
PRO
October 22, 2024
Tweet
Share
More Decks by Javier Gonzalez-Sanchez
See All by Javier Gonzalez-Sanchez
CSC509 Lecture 08
javiergs
PRO
0
230
CSC509 Lecture 07
javiergs
PRO
0
240
CSC305 Lecture 10
javiergs
PRO
0
220
CSC305 Lecture 09
javiergs
PRO
0
300
CSC305 Lecture 08
javiergs
PRO
0
270
CSC509 Lecture 06
javiergs
PRO
0
260
CSC305 Lecture 07
javiergs
PRO
0
300
CSC509 Lecture 05
javiergs
PRO
0
310
CSC305 Lecture 06
javiergs
PRO
0
270
Other Decks in Programming
See All in Programming
Cursorハンズオン実践!
eltociear
2
1.2k
Webサーバーサイド言語としてのRustについて
kouyuume
1
4.2k
なぜGoのジェネリクスはこの形なのか? - Featherweight Goが明かす設計の核心
qualiarts
0
240
タスクの特性や不確実性に応じた最適な作業スタイルの選択(ペアプロ・モブプロ・ソロプロ)と実践 / Optimal Work Style Selection: Pair, Mob, or Solo Programming.
honyanya
3
190
bootcamp2025_バックエンド研修_WebAPIサーバ作成.pdf
geniee_inc
0
120
Introduce Hono CLI
yusukebe
6
3k
Devvox Belgium - Agentic AI Patterns
kdubois
1
140
20251016_Rails News ~Rails 8.1の足音を聴く~
morimorihoge
2
670
pnpm に provenance のダウングレード を検出する PR を出してみた
ryo_manba
1
150
品質ワークショップをやってみた
nealle
0
610
スマホから Youtube Shortsを見られないようにする
lemolatoon
27
33k
Flutterで分数(Fraction)を表示する方法
koukimiura
0
140
Featured
See All Featured
How to train your dragon (web standard)
notwaldorf
97
6.3k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
The World Runs on Bad Software
bkeepers
PRO
72
11k
The Straight Up "How To Draw Better" Workshop
denniskardys
238
140k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
930
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.7k
Building Adaptive Systems
keathley
44
2.8k
Designing for Performance
lara
610
69k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.7k
Transcript
Dr. Javier Gonzalez-Sanchez
[email protected]
www.javiergs.info o ffi ce: 14 -227
CSC 305 Individual Software Design and Development Lecture 14. Factory + Strategy
Previously …
Builder 3 https://refactoring.guru/design-patterns/builder
Chain of Responsibility 4
GoF Patterns 5
Abstract Factory
Factory 7
Strategy
Strategy 9
Connecting the Dots
From an Idea 11 Main Factory Gift Ball Box Envelop
From an Idea B 12 Main Factory Gift Ball Box
Envelop Handler Supervisor Bin ShippingStrategy Land Air
To A Software Design (UML Class Diagram) 13
To Code 14
Factory 15
Chain of Responsibilities 16
Decorator 17
Decorator 18
Observer 19
None
Bin 21 In main: In ConcreteHandlerWithBox: In ConcreteHandlerWithEnvelop:
Questions 22
Assignment
Code 24 Main Factory Gift Ball Box Envelop Handler Supervisor
Bin ShippingStrategy Land Air
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.