讀古今文學網 > 程序員必讀之軟件架構 > 初識軟件架構 >

初識軟件架構

我是從一個小互聯網公司走出來的野生程序員。小公司裡沒有很細的分工,程序員必須像萬金油,什麼都會一點。數據怎麼分表,後端接口怎麼分,URL 結構怎麼定,前後端怎麼接,這些都得搞定。事情多了,必須想清楚。

我在盛大創新院做的最後一個項目是一個iOS垂直社交應用。兩個同事合作開發iOS客戶端,而我在這個項目裡的工作是開發一個REST 架構的數據服務。需求很簡單,就是根據客戶端的應用場景編寫一整套API。當第一個里程碑的所有工作完成之後,我發現需求開發只佔用了一小部分時間,而設計關係型數據庫的結構,設計認證、授權和報告,設計應用簽名和令牌,設計REST風格的URL 結構,開發API 調試工具,編寫API 文檔,這些事情卻耗費了大量的時間。我就想,花了這麼多時間做這些事情,並沒有增加任何功能,又感覺不能不做,這到底是為什麼?對這個問題的思考和學習,應該算是我對軟件架構的入門。