Framework 和Architecture 有何不同? | 小朱® 的技術隨手寫
文章推薦指數: 80 %
軟體也是一樣,所謂的軟體架構(Software Architecture)是一種軟體的藍圖,它告訴你這個軟體的結構,功能,介面,用法,與其他系統的構連以及資料 ...
前幾天我在幫我顧問公司的員工上課,剛好講題就是SoftwareArchitecture,我在課堂上順便問了一個小問題:Framework和Architecture有什麼不同?結果學員多數都答不出來,因為那間公司都把Framework叫做架構,但光是架構這個詞在很多技術用語上都會被套到,那麼,Framework和Architecture到底哪裡不同?
前幾天我在幫我顧問公司的員工上課,剛好講題就是SoftwareArchitecture,我在課堂上順便問了一個小問題:Framework和Architecture有什麼不同?結果學員多數都答不出來,因為那間公司都把Framework叫做架構,但光是架構這個詞在很多技術用語上都會被套到,像網站架構,其實是SiteMap或SiteLayout或是SiteStructure,和真正的architecture根本沒有關係,只是用語上好用而已...套句Bill大的話:資訊業的解釋名詞真的很難,因為大家每天都有新名詞會發明出來。
昨天我在噗浪中發問:你認為Framework和Architecture有什麼不同?結果出現了兩種不同的答案,有人認為Framework可以coverArchitecture,但又有人認為Architecture的位階比Framework要高,其實,Architecture這個字是建築之意,也就是由沒有建築物到完成的過程,以及如何將建築生產出來的方法(即建築學),它是一種Guideline,又稱藍圖(blueprint),它指導了建築物應該要怎麼蓋,牆要幾公分高,樑柱的位置,地基的面積,基礎要打在哪,高度要多高,房間要多大等等都有。
但它卻沒有叫你要用什麼方式(工法)蓋。
軟體也是一樣,所謂的軟體架構(SoftwareArchitecture)是一種軟體的藍圖,它告訴你這個軟體的結構,功能,介面,用法,與其他系統的構連以及資料交換等等規範,但它並沒有叫你要用什麼方式實作,因此軟體架構通常會產生文件,圖樣,原型以及規格等,就是沒有可用的程式碼,因為那不是軟體架構應該有的東西,就像蓋房子時是給你藍圖,而不是一幢蓋好的房子。
相對的,軟體框架(Framework)的英文名稱原意是骨架,拆開來看是"Frame"-"work",表示是在一個既定的框架下可以做的工作,也就是說,這是一個已經成形的方法,而且有程式碼實體(例如鋼構工法也是要有鋼材才能做),並且會告訴你要如何使用它(即FrameworkDocumentation,MSDNLibrary即為一最佳例子),但怎麼使用它是程式設計師(也就是監工)的工作,與Framework無關。
Framework和Architecture經常被用來叫做架構,其實它們兩個本質上的差異是很大的,Framework只會告訴你怎麼用,但不會告訴你怎麼實作出特定功能,而Architecture是告訴你某些功能的走向以及方針,但卻沒有程式碼給你,所以Architecture通常會需要Framework來實現,而Framework也需要Architecture才能發揮其所長。
架構設計實戰學習基礎概念
回首頁
延伸文章資訊
- 1什麼是架構師(Architect)以及要如何養成? - 數位時代
分享文所談的雲端軟體架構師,比較偏向軟體技術,但是也要懂得系統架構 ... 其實這些就像英文和數學一樣,是資訊科技人的基本素養,某些公司面試新進 ...
- 2「系統架構師」找工作職缺-2022年3月|104人力銀行
- 3軟體架構師技能培訓班 - iSpan資展國際
從對系統全貌有著概括的瞭解,再進而往精細面逐一實現。 從如何理解與調和軟體的三大面向-需求、結構與實作,並進而利用UML與C#.NET/Java 程式 ...
- 4系統架構師- 維基百科,自由的百科全書
系統架構師(System Architect,簡稱SA或SAr),是在信息系統研發中,負責依據需求來確定主要的技術選擇、設計系統的主體框架結構,並負責搭建實施的人。
- 5系統架構師英文- 英語翻譯 - 查查在線詞典
系統架構師英文翻譯: java…,點擊查查綫上辭典詳細解釋系統架構師英文發音,英文單字,怎麽用英語翻譯系統架構師,系統架構師的英語例句用法和解釋。