讀古今文學網 > 程序員必讀之軟件架構 > 第28章 協同設計是一把雙刃劍 >

第28章 協同設計是一把雙刃劍

讓我們想像一下,你被任命負責建設一個三層的Web應用程序,有一個由具備Web技術、服務端編程和數據庫專長的人組成的小團隊。從資源的角度來看,這堪稱完美,因為你擁有跨越整個棧的經驗。你不應該有任何問題,對吧?

整個團隊的有效性取決於很多因素,其中之一是克制自負的情緒,專注於交付給定語境下的最佳解決方案的意願。有時候,個別人由於缺乏團隊合作的經驗,或在工作中產生了自負情緒,都會拖團隊的後腿。如果有需求是為用戶查看和處理我們的三層Web應用程序上的數據提供一種方式,每一個專家可能都會給你不同的方法。

  • Web開發者 :只要給我JSON格式的數據,我們就能用它在Web層做任何想做的事。甚至能加入一些jQuery來動態處理瀏覽器中的數據;
  • 服務端開發者 :我們應該重用和擴展一些中間服務層已有的業務邏輯。這增加了重用,比把全部數據都發到Web層更安全,還能在周圍編寫自動化單元測試;
  • 數據庫開發者 :你們都是白癡。不管你們要什麼數據,我都能很快地寫一個存儲過程出來。