Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
OO training homework 3 review and summary
Search
hatelove
July 24, 2012
Technology
11k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
OO training homework 3 review and summary
將大家 homework 2 需注意的地方,延伸思考的部分提出來
hatelove
July 24, 2012
More Decks by hatelove
See All by hatelove
1. 在沙箱中開發
hatelove
12
3.1k
BDD in .NET - TDD 在實務上的最後一塊拼圖
hatelove
4
3k
OO training 基本原則整理
hatelove
2
5.3k
OO training homework 2 review and summary
hatelove
1
4.7k
OO training homework 1 review and summary
hatelove
1
8.1k
Object Oriented Training - Session 4
hatelove
1
5.2k
Object Oriented Training - Session 3
hatelove
1
11k
Object Oriented Training - Session 2
hatelove
1
4.9k
Object Oriented Training - Session 1
hatelove
1
8.4k
Other Decks in Technology
See All in Technology
猫でもわかるKiro Web
kentapapa
1
160
メルカリにおけるAI時代の高速プロトタイピング基盤「Arca」
ryotarai
18
13k
Databricksメトリクスビューはじめてのもくもく会
taka_aki
0
140
HolmesGPTで始めるSREエージェント入門!プラットフォームの障害調査はAIにお任せ 〜
sanghyuk
0
250
1人アドミンな私はAWSアカウント申請をSlackで完結したい!
ysuzuki
0
100
GitHub Agentic Workflows を触ってみる
htkym
2
880
大阪オフィスに Unitree Go2 がやってきたので Physical AI やってみた
dafujii
0
150
「今盗んで、後で解く」に備える ― AWSのポスト量子暗号入門
yama3133
2
270
手を動かして実感する、Kiro が変える開発体験
inariku
0
420
ScotSecure West 2026 - Glasgow
raybugg
0
210
個別開発で終わらせない。 現場の課題をプロダクトの強さに変える StockmarkのFDE
ktkrhr
0
430
AI感のないAWS構成図をAIエージェントに描かせたい!
sagochiko
2
480
Featured
See All Featured
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
470
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
330
Practical Orchestrator
shlominoach
192
12k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
20k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
290
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
500
Art, The Web, and Tiny UX
lynnandtonic
304
22k
Documentation Writing (for coders)
carmenintech
77
5.5k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
530
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
620
Ruling the World: When Life Gets Gamed
codingconduct
0
380
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
120
120k
Transcript
Date: 2012/06/28 OO training – homework 3 review
- 2 - Context與工廠職責分離 • new class的動作與使用class的動作分開 – context為使用場景 –
生成物件為工廠的職責 – 使用class都應相依於介面
- 3 - 職責分離 • BL也要遵守單一職責原則 – 商業邏輯不代表得把domain併在一起 • 禁止跨層叫用
– 例如:頁面叫用DA層
- 4 - 依賴於介面 • 物件相依於介面,而非實體 class • Log, Setting,
DA 的介面使用 – 開放封閉原則 – 容易抽換 • 物件結合方式 – constructor – public property – 注意!沒有值給預設值作法的問題 • 應改為 assert / contract 方式的防呆與檢查 • 或透過 overload 無參數 constructor 來給預設值
- 5 - 封裝 • 介面上只開放需要用的方法 – YAGNI ( You
ain’t gonna need it ! ) 原則 • 將實作細節封裝成抽象意義 – 將QueryString封裝成property – 將ViewState封裝成property
Q & A