相信對於很多計算機專業的同學來說,軟體架構師是乙個自帶光環的職業。在他們的印象中,軟體架構師不僅在公司的地位高,不用編碼,而且還有非常可觀的收入。但是很多人並不是很清楚,軟體架構師的主要作用究竟是什麼,為什麼需要軟體架構師?
1、為什麼需要軟體架構師?
稍微複雜一點的軟體,都是需要進行分層、分塊、本地遠端設計的。各個模組之間的處理邏輯、介面定義都是極其重要的。資深一點的軟體工程師應該是協助軟體架構師完成架構,而一般的軟體工程師則是利用這個架構完成具體業務模組的實現就可以了。
2、軟體架構師的難點?
對於軟體架構師來說,他所要負責的內容就是將客戶的需求進行流程和邏輯化處理。客戶的需求是多種多樣的,他必須將這些流程提取出來,並且抽象出普適的規律,使得未來的功能開發和功能迭代能夠滿足客戶的要求。架構的目的還是為了業務、為了效率、為了質量、為了穩定,當然也離不開技術的實現,做到這些就很難了。
3、軟體架構師需要編寫**嗎?
就我個人的經驗而言,稍微資深一點的軟體架構師本身都有很強的**編寫能力和**除錯能力。和業務的複雜性相比,**除錯真的算不上什麼難的事情。
4、軟體架構師對軟體質量來說有什麼意義?
很多人認為軟體質量是測試工程師的事情,但是從我實際體會來說,需求工程師和軟體架構師承擔的責任更大。換句話說,如果需求部隊或者**架構設計不對,軟體質量其實好不到哪去,成本極大。不管**寫的多好、測試多充分,無非就是一些打補丁的事情,沒有辦法從根本上提高**質量。
5、如何成為乙個軟體架構師?
模仿和實踐。可以找一些很成熟的軟體,比如即使通訊工具、office軟體、影象軟體,可以自己試試如何編寫這樣乙個軟體。當**是1000行、10000行、100000行乃至於更大的時候,相信你對**的認識會越來越深刻。寫之前,最好完成乙個詳細的架構設計。
6、看開源**對自己成為軟體架構師有幫助嗎?
有幫助的,不過最好是**行數多一點的專案,但是又不能太大,比如幾萬行到幾十萬行,這樣的專案就不錯。太小沒有價值,因為純c語言的很多專案就是面向流程的,而幾百萬行的專案會直接摧毀你的信心。
7、大公司為什麼看重軟體架構師?
公司越大,溝通的成本越高。有過大公司工作經驗的同學都知道,專案涉及的人越多,花費在溝通上面的時間會比你code的時間更多,這很正常,每個人都有自己的立場和利益訴求,這個情況下不做比做更重要。所以,需要乙個軟體架構師作為介面人,給大家劃分任務和設定介面,並且為最終的軟體質量負責。
8、好的軟體架構是什麼樣的?
好的軟體架構其實都是相似的:軟體主流程和分支流程都非常清晰、新增功能容易、架構質量高、**除錯完善、便於快速新增新功能等等。
9、用什麼軟體來進行軟體架構設計?
目前用的比較多的還是uml,軟體方面就是visio、startuml、ea、mindjet這些軟體。其實真的不拘泥於形式,大家可以根據自己的習慣,使用自己熟悉的軟體,將客戶的需求轉換成合理的**架構。
10、架構設計和編碼衝突嗎?
再好的軟體架構也需要慢慢實現,所以架構設計師最好將自己的設計預先用乙個小demo實現,這樣更具有說服力。同時,他還需要很好的文件整理、溝通、抽象、分析、組織的能力。本身,軟體架構設計不是一件輕鬆的事情,但也不是什麼可望不可及的事情。
11、架構設計代替不了什麼?
軟體架構只是負責業務的邏輯建模和抽象,它本身代替不了具體的軟體技術、資料庫技術、網路技術、行業技術等等,這完全就是兩個領域的事情。
12、做不了軟體架構師怎麼辦?
做不了也沒什麼大不了的,那就做好業務專家、語言專家、技術專家好了,條條大路通羅馬。就自己觀察而言,目前國內利用各種中介軟體搭積木的軟體架構師很多,但是真正能獨當一面的架構師少之又少,努力一點還是有很多機會的。
《uml團隊開發流程與管理》
軟體隨想錄
最近閱讀了由阮一峰翻譯的,有程式設計師部落酋長之稱的 joel 撰寫的 軟體隨想錄 精華摘抄如下 就如同所有行業最好的人才一樣,那些優秀的程式設計師是不會出現在招聘市場的。通常優秀的程式設計師在整個職業生涯中,可能會有4次求職。實習生制度創造了輸送優秀人才的管道,但是這個管道比較長,而且一路上損耗很...
軟體隨想錄
在圖書館閒逛,翻到這邊書,書如其名,像本雜記。書翻譯得極好,每個不明晰的名詞作者都給做了標記,使得外行的人,也能看的明白。1.畢業前練好寫作,但凡出眾的程式設計師,大多能夠清晰地表達自己的思想。2.畢業前學好一門偏底層語言,如c c 3.畢業前看一看微觀經濟學,至少認識市場對軟體的需求。4.不要因為...
隨想錄(軟體除錯)
對於很多程式設計師朋友來說,編寫 要比除錯 快樂的多。似乎創造軟體比維護軟體更能給人帶來成就感。然而,在企業裡面維護前人留下的 也是工作中不可缺少的一項內容。所以,如何除錯軟體,更快更好地尋找軟體中的bug,就成了我們必須學習的一門功課。當然,有人查詢故障很快,而有的人卻要慢一點,這中間的原因很多,...