咱們都錯了。當開始討論觀點時,這就是事情自己的樣子。每一個人有他或她本身的信念,它由該領域的多年經驗、使人沮喪的代碼、書、成功等等造成。全部這些背景是如何歸結爲一個統一理論的?它們只是還不能夠。html
你一直被告訴在工做中找到正確的工具。但什麼是正確的工具呢?你決定的,根據你的實踐知識。segmentfault
我愛Ruby由於我以爲它天然,可是其餘開發者討厭這種語言。我喜歡乾淨的代碼,其餘人不關心。我同意RSpec和Capybara,其餘人喜歡Test::Unit。CoffeeScript 和 plain JavaScript, ERb 和 HAML,Postgres 和 MySQL. Vim 或 Emacs? Mac 或 Linux? TDD 或 不用TDD, 任何一個呢?架構
有了這些分割,咱們不能把人們從教條中解放出來,但僅僅產生了一個相反觀點的粉絲。框架
相對論也能夠被應用到軟件設計。我須要多少級的間接尋址才能完成必定的工做?好吧,看狀況。它取決於各類不錯的理由,可是主要在於你的判斷。對你來講是優秀的,然而對於其餘人倒是讓人失望的。工具
咱們能夠討論折衷方案,可是請不要把你的成功產品當作你在代碼方面是正確的資格。ui
我在Litmus工做,一家盈利豐厚的公司。若是我把下面的代碼放在一個模板裏,你會由於個人員工就發現它是合理的嗎?spa
嗨,是的!誰須要那些像控制器和ORM的高級抽象,誰徹底須要框架!那種結構是爲太空架構師(architecture astronauts)準備的。離開個人草坪!看看我,我是個實用主義者。我經過 破壞了我工做的億萬富翁的軟件 證實了這一點。.net
這不是一個論據,只是廢話。設計
原文地址:http://lucaguidi.com/2014/04/28/we-are-all-wrong-about-software-design.html
文章首發「臘八粥」,http://www.labazhou.net/2014/04/we-are-all-wrong-about-software-design/htm