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
OO training homework 3 review and summary
Search
hatelove
July 24, 2012
Technology
1
11k
OO training homework 3 review and summary
將大家 homework 2 需注意的地方,延伸思考的部分提出來
hatelove
July 24, 2012
Tweet
Share
More Decks by hatelove
See All by hatelove
1. 在沙箱中開發
hatelove
12
3k
BDD in .NET - TDD 在實務上的最後一塊拼圖
hatelove
4
2.8k
OO training 基本原則整理
hatelove
2
5.2k
OO training homework 2 review and summary
hatelove
1
4.6k
OO training homework 1 review and summary
hatelove
1
8k
Object Oriented Training - Session 4
hatelove
1
5.1k
Object Oriented Training - Session 3
hatelove
1
11k
Object Oriented Training - Session 2
hatelove
1
4.8k
Object Oriented Training - Session 1
hatelove
1
8.3k
Other Decks in Technology
See All in Technology
事例で学ぶ!B2B SaaSにおけるSREの実践例/SRE for B2B SaaS: A Real-World Case Study
bitkey
1
280
american aa airlines®️ USA Contact Numbers: Complete 2025 Support Guide
aaguide
0
470
TLSから見るSREの未来
atpons
2
200
伴走から自律へ: 形式知へと導くSREイネーブリングによる プロダクトチームの信頼性オーナーシップ向上 / SRE NEXT 2025
visional_engineering_and_design
2
190
敢えて生成AIを使わないマネジメント業務
kzkmaeda
2
500
20250708オープンエンドな探索と知識発見
sakana_ai
PRO
4
630
「Chatwork」のEKS環境を支えるhelmfileを使用したマニフェスト管理術
hanayo04
1
210
TableauLangchainとは何か?
cielo1985
1
140
オーティファイ会社紹介資料 / Autify Company Deck
autifyhq
10
130k
NewSQLや分散データベースを支えるRaftの仕組み - 仕組みを理解して知る得意不得意
hacomono
PRO
3
210
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
3
980
全部AI、全員Cursor、ドキュメント駆動開発 〜DevinやGeminiも添えて〜
rinchsan
2
640
Featured
See All Featured
Navigating Team Friction
lara
187
15k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.7k
The World Runs on Bad Software
bkeepers
PRO
69
11k
4 Signs Your Business is Dying
shpigford
184
22k
What's in a price? How to price your products and services
michaelherold
246
12k
Building Applications with DynamoDB
mza
95
6.5k
Why Our Code Smells
bkeepers
PRO
336
57k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.9k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
970
Designing for Performance
lara
610
69k
Done Done
chrislema
184
16k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
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