本文首先通過與傳統行業的對比,回顧了軟件行業的發展歷程;然后探討了互聯網背景下面向構件的發展趨勢。通過本章,你可以對面向構件的歷史與現狀有一個大致的了解。
1.1 面向構件的演變
你需要把事物追究到最早的起源,并且考察它們因何并且如何變為退化的,但是仍要向古今兩個時代都去求教;向古時要問何者是最良好的;向現時要問何者是最適當的?!喔?,《培根論說文集》
面向構件實乃一種思想、一種方法,從本質上說,就是將需求分配到諸如類、包、服務等構件中。其核心思想還是來自于分割的原理,就像我們研究物質一樣,自然界一切物質都由有限數量的元素組成,每種元素對應著相應的分子或原子等。所以,通過與傳統行業的構件化進程的對比,也許是理解軟件構件化的一個最佳起點。
1.1.1 汽車行業的構件史②
20世紀是人類進入工業化社會的世紀。制造業是工業化的龍頭,它影響著整個工業化的發展進程。其中汽車工業又是20世紀對人類生活影響最大的產業之一。汽車技術已有100年以上的歷史,汽車制造技術已經從手工打造一步步地發展到基于構件的大規模的生產。這里我們將與讀者一起回顧這個發展過程以及構件思想對汽車制造業產生的影響。
1.從第一輛蒸汽汽車的產生到第一個汽車構件工廠的誕生
1769年,法國人N.J.居紐(Cugnot)制造了世界上第一輛蒸汽驅動三輪汽車。1879年,德國工程師卡爾.苯茨(KartBenz),首次試驗成功一臺二沖程試驗性發動機。1885年,后者在曼海姆制成了第一輛苯茨專利機動車,此車具備了現代汽車的一些基本特點,如火花點火、水冷循環、鋼管車架、鋼板彈簧懸架、后輪驅動前輪轉向和制動手把等。這代表著第一個汽車構件工廠的產生。
2.基于構件的組裝,使大規模的快速生產成為可能
20世紀80年代,汽車模塊化生產方式初露鋒芒,技術實力雄厚的零配件生產商德爾福系統公司相繼推出了座艙、接口盤制動、車門、前端、集成空氣/燃油等模塊,在現代汽車裝配線上注入了新的概念。
1.1.2 軟件行業的構件史
任何一個行業的發展都與當時的技術發展狀況有著直接或間接的關聯,汽車行業如此,軟件行業也不例外。但是軟件就其本身特征而言更加具有復雜性,它從一開始應用于簡單計算到現在滲透到各行各業,甚至與每個人的生活都休戚相關。與傳統行業相比,無論從其外延還是其解決問題的復雜性,都有其獨特性。
我們將短短幾十年的軟件史,劃分為以下幾個階段。
1.面向機器階段
這個時期的核心是“機器”,其代表性語言“匯編語言”,要求開發者以機器的思考方式來編寫程序代碼。匯編語言寫出來的程序與機器代碼一一對應,你不僅必須要知道諸如CPU、寄存器、存儲地址等計算機的內部構造,還要知道其類似加、與、或等直接運算指令。要關注這么多的細節,開發者的思維就只能局限于類似計算、控制這樣狹窄的領域。
2.面向過程階段
面向過程使得人們不用再局限于機器的思維邏輯,人們可以站在解決問題的角度來設計軟件,這個時期的核心是“算法”,關心的是怎樣用程序或者說數學模型來解決一個個的難題。面向過程的代表性語言是C、Fortran等語言,它們是高效的代表,也是頗受歡迎的語言,大多數操作系統的實現都離不開它們。面向過程使得人們的思維水平由“機器”上升到了“問題”的層面。
原文轉自:http://www.anti-gravitydesign.com