循環(huán)定律是什么意思 什么樣的代碼叫好代碼?
什么樣的代碼叫好代碼?好的代碼,滿足兩個條件:能達到預期效果,容易理解。代碼的不同不在于功能能否實現(xiàn),而主要在于實現(xiàn)的質量。有些代碼雖然實現(xiàn)了效果,但另一個程序員看不懂,無法維護,也是壞代碼?,F(xiàn)在在軟
什么樣的代碼叫好代碼?
好的代碼,滿足兩個條件:能達到預期效果,容易理解。
代碼的不同不在于功能能否實現(xiàn),而主要在于實現(xiàn)的質量。
有些代碼雖然實現(xiàn)了效果,但另一個程序員看不懂,無法維護,也是壞代碼。
現(xiàn)在在軟件行業(yè),程序員加班是很常見的。疲勞將不可避免地影響代碼的質量。
他們大多急于達到職能要求,完成領導安排的任務,只以完成為目標。
這種不考慮長遠的工作方式在短時間內實現(xiàn)了目標,但從長遠來看是個大問題。
一旦程序員離開,新來的人需要很長時間才能接手。項目的可擴展性和穩(wěn)定性沒有保證。
尤其是一些外行領導只知道如何為上級做貢獻,不能科學安排時間。
功能需求一經(jīng)更改就立即更改,新功能即將出現(xiàn)。因此,工程設計不斷調整,整體建筑穩(wěn)定性受損。
整個行業(yè)還沒有意識到代碼質量的重要性,也沒有對代碼的敬畏。它只著眼于現(xiàn)在而忽視了長遠。
只有行業(yè)人員達到飽和,淘汰不合格的程序員和產(chǎn)品經(jīng)理,好的代碼才能形成趨勢。
迪米特法則:如果兩個類不必彼此直接通信,例如什么情況?
在狹義的德米特定律中,如果兩個類不必直接相互通信,那么這兩個類就不應該直接交互。如果其中一個類需要調用另一個類的方法,可以通過第三方轉發(fā)調用。朋友圈的“朋友”條件:1)當前對象本身(this)2)以參數(shù)形式傳入當前對象方法的對象3)當前對象的實例變量直接引用的對象4)如果當前對象的實例變量是聚合,那么聚合中的所有元素都是朋友5)如果當前對象創(chuàng)建的任何對象滿足上述要求,其中一個條件是當前對象是“朋友”;否則,它是“陌生人”。狹義的德米特定律:系統(tǒng)中產(chǎn)生了大量的小方法。這些方法只是間接調用,與系統(tǒng)的業(yè)務邏輯無關。在類之間遵循Dimiter定律將簡化系統(tǒng)的本地設計,因為每個部分都不會與遠程對象直接相關。但是,這也會降低系統(tǒng)不同模塊之間的通信效率,使系統(tǒng)不同模塊之間的協(xié)調變得困難。表面模型和中介模型實際上是迪米特定律的應用。廣義迪米特定律在類設計中的體現(xiàn):應優(yōu)先考慮將類設置為不變類。最小化對類的訪問。小心使用serializable。盡量減少對成員的訪問。