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
150
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
CSC307 Lecture 16
javiergs
PRO
0
150
CSC570 Lecture 13
javiergs
PRO
0
39
CSC307 Lecture 17
javiergs
PRO
0
120
UP Lecture 30
javiergs
PRO
0
86
UP Lecture 25
javiergs
PRO
0
77
CSC486 Lecture 14
javiergs
PRO
0
160
CSC486 Lecture 13
javiergs
PRO
0
120
CSC486 Lecture 12
javiergs
PRO
0
110
CSC486 Lecture 11
javiergs
PRO
0
67
Other Decks in Programming
See All in Programming
商品比較サービス「マイベスト」における パーソナライズレコメンドの第一歩
ucchiii43
0
190
リバースエンジニアリング新時代へ! GhidraとClaude DesktopをMCPで繋ぐ/findy202507
tkmru
4
1.1k
Streamlitで実現できるようになったこと、実現してくれたこと
ayumu_yamaguchi
2
150
顧客の画像データをテラバイト単位で配信する 画像サーバを WebP にした際に起こった課題と その対応策 ~継続的な取り組みを添えて~
takutakahashi
4
1.3k
The Niche of CDK Grant オブジェクトって何者?/the-niche-of-cdk-what-isgrant-object
hassaku63
1
650
TypeScriptでDXを上げろ! Hono編
yusukebe
3
830
AI時代の『改訂新版 良いコード/悪いコードで学ぶ設計入門』 / ai-good-code-bad-code
minodriven
24
9.9k
Git Sync を超える!OSS で実現する CDK Pull 型デプロイ / Deploying CDK with PipeCD in Pull-style
tkikuc
4
400
ペアプロ × 生成AI 現場での実践と課題について / generative-ai-in-pair-programming
codmoninc
2
22k
テスト駆動Kaggle
isax1015
1
830
型で語るカタ
irof
0
750
状態遷移図を書こう / Sequence Chart vs State Diagram
orgachem
PRO
2
230
Featured
See All Featured
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
How GitHub (no longer) Works
holman
314
140k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
8
350
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.9k
Making Projects Easy
brettharned
116
6.3k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
22k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
108
19k
Reflections from 52 weeks, 52 projects
jeffersonlam
351
21k
Mobile First: as difficult as doing things right
swwweet
223
9.7k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Transcript
Dr. Javier Gonzalez-Sanchez javiergs@calpoly.edu 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.
javiergs@calpoly.edu 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.