《程序員修煉之道——從小工到專家》讀後感二

        最近一段時間又繼續閱讀了《程序員修煉之道——從小工到專家》這本書,主要是閱讀了第二章的內容,對於其中關於bug方面的閱讀,曳光彈的使用,構建軟件原型有着較爲深入的印象。  程序員

        1.重複的危害架構

        給予計算機兩項自相矛盾的知識,可以使代碼失效。知識是變化的,系統中的每一項知識都必須具備單1、無歧義、權威的表示,可靠的開發軟件,並讓咱們的開發更易於理解和維護的惟一途徑,要遵循DRY原則(不要重複你本身)。重複的發生分爲四點:強加的重複,無心的重複,無耐性的重複,開發者之間的重複。測試

        2.正交性編碼

        在計算技術中,正交性用於表示某種不相依賴性或是解耦性。正交的好處:消除無關事物之間的影響;提升生產率:改動得以局部化,開發和測試的時間得以下降;促進複用;對正交的組件進行組合,生產率會有所提升;下降風險:有問題的代碼被隔離開來:系統更健壯;正交系統極可能能獲得更好的測試;不會與特定的供應商、產品,或者死是平臺緊綁在一塊兒。    開發

        3.可撤銷性部署

        可撤銷性: 考慮可撤銷性,沒必要作出許多關鍵的,不可逆轉的決策,可讓咱們應對一些突如其來的變化。靈活的架構:保持代碼的靈活性考慮維持架構,部署及供應商集成等領域的靈活性。原型

        4.曳光彈產品

        在黑暗中發光的代碼:用曳光彈找到目標,讓咱們能快速、直觀和可重複的從需求出發,知足最終系統的某個方面要求。優勢是:用戶可以及早看到工做的東西;開發者構建了一個他們能在其中工做的結構;你有了一個工做平臺;你有了一個可用於演示的東西;你將更能感覺到工做的進展。曳光代碼方法處理的是不一樣的問題,你須要知道應用怎樣結合成--個總體你想要向用戶演示,實際的交互是怎樣工做的,同時你還想要給出一個架構骨架,開發者能夠在其上增長代碼。模板

        咱們要明白任何人不可能寫出完美的代碼,金無足赤,人無完人,雖然這聽起來難以接受,但你能夠把它轉化爲有利條件,針對本身的錯誤進行防衛性的編碼,要確保在找出bug的過程當中,不會對代碼形成任何破壞,因此咱們設法檢查各類事項,並在程序出問題的時候終止程序。 軟件

        要編寫能編寫代碼的代碼,簡而言之就是咱們在生活中看到木匠重複的製做一個東西的時候,他們給本身建造夾具或者模板,一旦作好了這些,他們就能夠快速的作出相同的東西出來,而且下降了出錯的機會,只要第一個做品是正確的還有模具沒有問題,一樣咱們也須要這樣,要構建代碼生成器,構建好了整個項目生命期內均可以用它而且沒有人格代價。而代碼生成器分爲主動和被動兩種,被動至關於參數化模板,而主動是一種便利手段。代碼生成不必定很複雜,而且代碼生成器不必定要生成代碼。

相關文章
相關標籤/搜索