軟體架構師應該知道的97件事 筆記(三)

來源:互聯網
上載者:User


31. 程式設計是一種設計

 

代碼即文檔,寫代碼即是設計行為,而非生產行為。

 

32. 讓開發人員自己作主

應該給自己的團隊足夠的自主權,讓他們發揮自己的創意和能力。不要過於拘泥於細節,要為開發人員創造一個良好的開發體驗,如自己設計的API是否易於理解及使用,如果經常被誤用,應該怎麼修改。而且要創造一個良好的氛圍,讓大家主動起來,如果遇到什麼問題,及時的向你徵求意見。

 

33. 時間改變一切

讓結果說話,認真執行KISS原則。現在的設計,可能會被兩三年之後的自己所否定,同樣,以前的設計也容易被自己否定,所以不要跟以前的工作過不去。

 

34. 設計軟體架構專業為時尚早

軟體開發仍處於相對初級的嘗試階段

 

35. 控制項目規模

盡量控制和縮小項目規模,提高項目成功機會。

a) 抓住真正需求

b) 分而治之

c) 設定優先權

d) 儘快交付

 

36. 架構師不是演員是管家

炫耀和作秀放到市場營銷上去,而不是設計中,架構師應該把自己看成管家,承擔著管理他人資產的責任,為客戶利益著想。

 

37. 軟體架構的道德責任

任何浪費使用者時間的行為,就是不道德的行為。即使只浪費使用者一點時間,但影響到幾百萬使用者時,累加起來就是一個非常長的時間。應該浪費自己的時間,節省使用者的時間。

 

38. 摩天大廈不可申縮

軟體相對建築,擴充新功能要簡單的多,而且產品發布越早,公司的淨收益就會越高,所以,應用軟體只要具備了使用者要求的關鍵功能就發行就緒了。提早發布,還能持續改善軟體架構的品質。

 

39. 混合開發的時代已經來臨

混合編程是指在同一套軟體系統中同時採用多種核心程式設計語言。

把若干強大的工具組合起來,形成更巧妙的解決方案。

 

40. 效能至上

效能和其它指標一樣重要,減少軟體回應時間,提高人機互動效率。

不要拿摩爾定律來安慰自己,認為硬體及系統的速度足夠快並且以後會更快,而忽略了軟體效能。

 

41. 留意架構圖裡的空白地區

架構圖中的兩個模組之間,仍有很多細節需要考慮,比如A和B的通訊,在架構圖上可能只是簡單的一個箭頭,但實際上要考慮兩個程式之間的回應時間,如果逾時如何處理,如果中間電纜出問題怎麼辦等。

 

42. 學習軟體專業的行話

使用行話可以提高交流品質及效率。如企業架構模式、應用架構模式、整合模式、設計模式、反模式等。

 

43. 具體情境決定一切

設計架構的過程就是做出明智決策的過程。脫離了具體的情景比較技術的優劣是無意義的。

 

44. 侏儒、精靈、巫師和國王

一個團隊中要有各種性格和各種特長的人,招聘時盡量招聘不同性格的人。

相同的人在一起,視野往往不夠開闊。安排任務時也盡量根據團隊成員的特點來安排,讓大家相互學習。

 

45. 向建築師學習

要想成為偉大的建築師,優雅豐富的心靈遠比聰明才智重要。 --- 弗蘭克·勞埃特·賴特

建築師應該是偉大的雕塑家,或者偉大的畫家,否則他不過是個建築工人。 --- 約翰·拉斯金

架構應該蘊涵適當的藝術成份。

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.