某圖形界面系統(tǒng)提供了各種不同形狀的按鈕,客戶端代碼可針對這些按鈕進(jìn)行編程,用戶可能會改變需求要求使用不同的按鈕,原始設(shè)計方案如圖所示,請指出設(shè)計存在的問題,并基于開閉原則對該系統(tǒng)進(jìn)行重構(gòu)。
某基于Java的C/S系統(tǒng)的“登錄功能”通過如下登錄類(Login)實現(xiàn),請指出設(shè)計存在的問題,并基于單一職責(zé)原則進(jìn)行重構(gòu)。
功能太過于集成,嚴(yán)重違反類的單一原則。就一個類而言,應(yīng)該僅有一個引起它變化的原因。