架構的東方起源
當我們談起架構一詞時,第一個想到的往往是軟體架構,在現代社會中,我們往往稱那些在軟體領域比較資深的,有著多年工作經驗的朋友為“架構師”,但是架構一詞最初的起源是什麼呢?
可能我們不確定它最原始的記載是在哪裡了,但是現在能找到的是,在唐朝盧仝(約795-835)的《月蝕詩》中已經出現過架構一詞:
譎險萬萬黨,架構何可當。
這裡的架構指代政治上的架構,或許我們腦海中會映出古代官員手持笏板和帝王漫談“架構”的樣子。而宋朝的朱復之在《與靜使君約遊姑山記事古風二十韻》也曾提到架構一詞:
窮惚某氏建,架構溯斯堂。
這裡的架構指代的卻是建築上的架構。
在西漢皇族淮南王劉安(公元前179-前122年)及其門客集體編寫的《淮南子》一書中,曾出現過“搆駕”一詞。
大搆駕,興宮室。
這雖然不像我們現在看到的“架構”這樣直觀,但也可以看出,這樣的“搆駕”或者是“架構”,其實最開始代表不僅僅是某種體系結構,更是一種“規劃”。
在東漢許慎的《說文解字》中,對“構”字釋義:
構,蓋也。從木,冓聲。
構,蓋房子。“木”作邊旁,“冓”為聲旁。 冓,是聲旁也是形旁,表示連線,其造字本義是架木造屋。而”構“為動詞,亦表示設計,造成,連成。古人使用“搆駕”或者是“架構”一詞,來從巨集觀上表述一種”規模“或是其規劃設計。
在中國古代建築設計中,有專業的建築架構設計師,不過他們更多是被稱為工匠。其中比較著名的有魯班、宇文愷等。宇文愷熟悉多種工藝技能,官至隋朝工部尚書,長期主管隋朝建造事務,曾主持建造隋朝多處都城,其設計的建築城中有城,規模巨集大,氣勢雄偉,既便於保證安全,又利於管理維護。
而工部則為中國古代六部之一,古代政治中對於架構的設計也佔有著不可或缺的地位。朝鮮、越南等國家也都曾受到中國文化影響,紛紛特設工部。
軟體架構的起源
其實對於目前的記載,軟體架構的具體起源已經很難被發現了,在1960年代,艾茲格·迪傑斯特拉等開始涉及軟體架構領域,從1990年代後,軟體架構這個概念開始變得愈發流行。而碰巧的是,1968年秋季,NATO科技委員會召集了一群優秀的軟體工程師,來腦暴“軟體危機”的解決方案,也是在這次會議上誕生了Software Engineering概念,即軟體工程。
1993年,電氣電子工程師學會(IEEE)給出了對於Software Engineering的定義:”將系統化的、規範的、可度量的方法用於軟體的開發、執行和維護的過程,即將工程化應用於軟體開發中”。
軟體工程是面向工程領域的,軟體工程包含軟體架構的設計,而軟體架構即是一張開發藍圖,是一個計劃,是整體的規劃,亦是軟體工程的指導方針。