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 1 review and summary
Search
hatelove
July 20, 2012
Technology
1
8k
OO training homework 1 review and summary
將大家 homework 1 需注意的地方,延伸思考的部分提出來。
hatelove
July 20, 2012
Tweet
Share
More Decks by hatelove
See All by hatelove
1. 在沙箱中開發
hatelove
12
3k
BDD in .NET - TDD 在實務上的最後一塊拼圖
hatelove
4
2.7k
OO training 基本原則整理
hatelove
2
5.2k
OO training homework 3 review and summary
hatelove
1
11k
OO training homework 2 review and summary
hatelove
1
4.6k
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.2k
Other Decks in Technology
See All in Technology
Python と Snowflake はズッ友だょ!~ Snowflake の Python 関連機能をふりかえる ~
__allllllllez__
1
120
「スニダン」開発組織の構造に込めた意図 ~組織作りはパッションや政治ではない!~
rinchsan
3
550
本当のAWS基礎
toru_kubota
0
510
AWSに詳しくない人でも始められるコスト最適化ガイド
yuhta28
1
220
アクセス制御にまつわる改善 / Improving access control
itkq
0
530
20分で完全に理解するGrafanaダッシュボード
hamadakoji
3
500
ChatworkのSRE部って実は 半分くらいPlatform Engineering部かもしれない
saramune
0
160
開発生産性大幅アップ!Postman VS Code拡張機能
nagix
2
370
DevOpsDays History and my DevOps story
kawaguti
PRO
9
2.5k
一生覚えておきたい「システム開発=コミュニケーション」〜初めての実務案件振り返りLT〜
maimyyym
0
130
家族アルバム みてねにおけるGrafana活用術 / Grafana Meetup Japan Vol.1 LT
isaoshimizu
1
630
Databricks における 『MLOps』
databricksjapan
2
170
Featured
See All Featured
Making Projects Easy
brettharned
108
5.5k
Making the Leap to Tech Lead
cromwellryan
124
8.5k
GitHub's CSS Performance
jonrohan
1025
450k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
20
1.9k
Thoughts on Productivity
jonyablonski
58
3.8k
Mobile First: as difficult as doing things right
swwweet
216
8.6k
Infographics Made Easy
chrislema
238
18k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
6
1.5k
Intergalactic Javascript Robots from Outer Space
tanoku
266
26k
Creatively Recalculating Your Daily Design Routine
revolveconf
210
11k
Robots, Beer and Maslow
schacon
PRO
155
7.9k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
501
140k
Transcript
Date: 2012/05/21 OO training – homework 1 review
作業整理摘要
- 3 - 物件職責 • 將商品資訊聚合成為Entity • 把new Class的動作,與使用Class的動作隔開 •
物流商是否具有長、寬、高、重點等商品屬性 • 商品上是否應該擁有計算運費的方法 • 物流商的名稱,是否可由外部設定
- 4 - 重構 • 重構應確保重構後的結果,與重構前相同 – 工具 • Selenium
• 單元測試 – 例子 • 物流商配置顛倒 • double改成float或int • 衍生設計 • Visual Studio重構功能 – 擷取方法 – 擷取介面 – 封裝欄位
- 5 - DRY • 判斷式中,重複出現相同的程式碼,是否可以移出判斷式之 外 • 子類與父類相同的部份,是否只需放在父類 •
抽象來看,是否相同,不同的地方在哪
- 6 - 建議 • 每個Class獨立一個檔案 • 預設的todo註解請記得清除 – 工作清單視窗
- 7 - 衍生需求 • 當每間物流商計算運費所需要的商品資訊增加時,該如何修 改程式 • 低溫冷藏時,計算運費的方式不同 •
頁面新需求為,選擇最便宜的物流商,並呈現運費結果
- 8 - 課程補充 • new與override • overload
- 9 - Step • 把計算運費抽出來,成為BL – abstract – interface
• 把new class與使用class隔開 – function – Factory class • 把商品資訊定義成Entity • 抽象工廠 • 物流商名稱使用Enum Description
Q & A