Johnny850807 / Coding-GYM

自己菜鳥階段時在練習Java物件導向、設計模式時,所設計的題庫,此專案庫目前用來讓我的同學/學生 (欠調教的) 們提交程式碼來進行Review,欲參考OOP題目者可直接到Projects區觀看,題目皆(85%)擁有示範解答程式碼。ISSUE放的都是Code Review嘴砲。(物件導向設計學分兩階段→JAVA→設計模式)
24 stars 6 forks source link

Abstract Factory: Lin #98

Open Johnny850807 opened 6 years ago

Johnny850807 commented 6 years ago

命名 image image

setup中文是建置、準備,不應該有回傳值, 而create才是產生的意思,應該要有回傳值, 兩個使用情境相反了。

維護性 image

你的Role的變動性是生命跟魔力,而每個Role依賴抽象的工廠來取得裝備,此為Bridge模式,很棒。 但是假如我今天要開發一個新的Role,繼承你的Role之後完全不知道接下來該怎麼做,此為維護性疏失。 開發子類別的人根本不知道有hp跟mp可以使用。

解決方法:使用兩個Template Method讓子類別回傳自己的生命及魔力 (就像名稱一樣)

重複利用 image

有重複的邏輯,請把可重複利用的函數產生出來並重構,這樣的程式碼一看便不重用你。 請想辦法解決這問題,非常重要,這樣的程式碼請勿留下。

多型 image

重複邏輯*2,這樣的程式碼請你改到正確為止,你似乎忘記多型怎麼用了,自己走回去二轉第一題。

可讀性 image

請化簡並重構你的程式碼,不自律的工程師,是沒辦法有成就的。