Architecture(架構) 和 Framework(框架) 有何不同?_軟體設計前的事前規劃的藍圖概念


一個應用程式(軟體)


不管是  互動拍照 也好、 投影也好、車牌偵測...

舞台演唱會後方電視牆的互動應用程序、

粒子特效、3D或2D遊戲  等等


開發者通常都需要在一開始做規劃


ㄟ  假設我今天要寫 跟影像有關 可能需要偵測、可能需要提取前景、可能需要偵測圓形
之類的

我有  emgucv 、AForge.Net、 opencv 等等可以用


但是 假設我今天要做的應用程序是需要有視窗介面的~~

emgucv 跟 C# windows form 媒合性 就很高 而且直接在 visual studio 做開發



opencv 我可能還需要依賴 Qt 之類等等  framework







假設我今天是要寫一個 演唱會電視牆互動粒子特效

可能就會挑   openframeworks  、 processing 、kinect 來寫互動












Achitecture


 --->全稱 :  Software Architecture   軟體架構

Achitecture  由好多framework 組成





軟體架構(Software Architecture)是一種軟體在開發前的設計藍圖,

用來告訴軟體的結構,功能,介面,用法,與其他系統的構連以及資料交換等等規範,
但它並沒有叫你要用什麼方式實作,
因此軟體架構通常會產生文件,圖樣,原型以及規格等,

就是沒有可用的程式碼,因為那不是軟體架構應該有的東西,
就像蓋房子時是給你藍圖,而不是一幢蓋好的房子。





軟體框架(Framework):是一個已經成形的方法,而且有程式碼實體
(例如鋼構工法也是要有鋼材才能做),並且會告訴你要如何使用它
(即 Framework Documentation,MSDN Library 即為一最佳例子)




















留言

這個網誌中的熱門文章

何謂淨重(Net Weight)、皮重(Tare Weight)與毛重(Gross Weight)

經得起原始碼資安弱點掃描的程式設計習慣培養(五)_Missing HSTS Header