愚蠢的實現(xiàn)各有各的蠢法,好的代碼有相似的氣質(zhì)。比如說吧,在一個既有的函數(shù)里增加一個分支,寫法包括 1. 敲一顆釘子進(jìn)去 foo(){ ……...
全無設(shè)計的代碼會將數(shù)據(jù)一股腦的扔到一個結(jié)構(gòu)或類中,最終導(dǎo)致上帝類,超長的函數(shù)和超長的文件的出現(xiàn)。這樣的實現(xiàn)是難以擴(kuò)展,難以應(yīng)對變化的。如果你...
數(shù)據(jù)大體上可以分為 接口類數(shù)據(jù) 和非接口類數(shù)據(jù)。前者意味著契約,后者關(guān)于實現(xiàn),后邊提及數(shù)據(jù),一般指后一種。數(shù)據(jù)還可以從 生命周期,聚合根,等...
即便是使用c語言的嵌入式開發(fā),也不應(yīng)該直接用類似p->a.b的方式訪問數(shù)據(jù)。這么做一方面意味著對數(shù)據(jù)缺乏抽象,毫無設(shè)計。另一方面意味著數(shù)據(jù)存...
為什么需要self 這兩天coding的時候想到一個問題,Python中class為什么需要self作為內(nèi)部方法的第一個入?yún)ⅲ棵黠@的解釋是解決...
軟件和組織架構(gòu)的一致性 先做一個小結(jié),軟件面臨的核心問題是功能擴(kuò)展時的成本(人力、時間、故障等綜合考慮)。解決的基本思路,其一、引入各種軟件設(shè)計...