从面向过程到面向对象
http://blog.csdn.net/hjf19790118/article/details/6919578
面向過程 → 面向?qū)ο?→ 面向組件 → 面向服務(wù)
?
約翰·巴庫斯(John Backus)
FORTRAN語言創(chuàng)始人
尼古拉斯·沃思(Niklaus Wirth)
結(jié)構(gòu)化編程思想的創(chuàng)始人
從IBM公司的約翰·巴庫斯在1957年開發(fā)出世界上第一個(gè)高級(jí)程序設(shè)計(jì)語言Fortran至今,高級(jí)程序設(shè)計(jì)語言的發(fā)展已經(jīng)經(jīng)歷了整整半個(gè)世紀(jì)。在這期間,程序設(shè)計(jì)語言主要經(jīng)歷了從面向過程(如C和Pascal語言)到面向?qū)ο?#xff08;如C++和Java語言),再到面向組件編程(如.NET平臺(tái)下的C#語言),以及正在快速發(fā)展的面向服務(wù)架構(gòu)技術(shù)(如SOA和WebService)。
◆??面向過程編程
???????結(jié)構(gòu)化編程思想的核心:功能分解(自頂向下,逐層細(xì)化)。
結(jié)構(gòu)化編程思想主要是將一個(gè)大的問題劃分為幾個(gè)小的問題,再將幾個(gè)小的問題劃分為更小的問題,我們解決大問題非常困難,但是解決劃分后的最小的問題卻比較容易。
面向過程編程把編程任務(wù)劃分成一個(gè)一個(gè)的步驟,然后按照步驟分別去執(zhí)行。其中每完成一個(gè)步驟就像是完成一個(gè)任務(wù)中的單個(gè)過程一樣。
?
尼古拉斯·沃思(Niklaus Wirth):結(jié)構(gòu)化編程思想的創(chuàng)始人。因發(fā)明了Euler、Alogo-W、Modula和Pascal等一系列優(yōu)秀的編程語言并提出了結(jié)構(gòu)化編程思想而在1984年獲得了圖靈獎(jiǎng)。
尼古拉斯·?沃思教授在編程界提出了一個(gè)著名的公式:
程序?=?數(shù)據(jù)結(jié)構(gòu)?+?算法
?
?
阿倫·凱(Alan Kay)
面向?qū)ο缶幊趟枷氲膭?chuàng)始人
◆??面向?qū)ο缶幊?/strong>
???????面向?qū)ο缶幊趟枷氲暮诵?#xff1a;應(yīng)對(duì)變化,提高復(fù)用。
面向?qū)ο缶幊趟枷胫饕菑?fù)用性和靈活性(彈性)。復(fù)用性是面向?qū)ο缶幊痰囊粋€(gè)主要機(jī)制。靈活性主要是應(yīng)對(duì)變化的特性,因?yàn)榭蛻舻男枨笫遣粩喔淖兊?#xff0c;怎樣適應(yīng)客戶需求的變化,這是軟件設(shè)計(jì)靈活性或者說是彈性的問題。
?
阿倫·凱(Alan Kay):面向?qū)ο?/span>編程思想的創(chuàng)始人。2003年因在面向?qū)ο缶幊躺纤龅木薮筘暙I(xiàn)而獲得圖靈獎(jiǎng)。
阿倫·凱:麻省理工學(xué)院的院長。阿倫·凱是Smalltalk面向?qū)ο缶幊陶Z言的發(fā)明人之一,也是面向?qū)ο缶幊趟枷氲膭?chuàng)始人之一,同時(shí),他還是筆記本電腦最早的構(gòu)想者和現(xiàn)代Windows GUI的建筑師。最早提出PC概念和互聯(lián)網(wǎng)的也是阿倫·凱,所以人們都尊稱他為“預(yù)言大師”。他是當(dāng)今IT界屈指可數(shù)的技術(shù)天才級(jí)人物。
?
面向組件和面向服務(wù)
?
面向組件:
我們知道面向?qū)ο笾С种赜?#xff0c;但是重用的單元很小,一般是類;而面向組件則不同,它可以重用多個(gè)類甚至一個(gè)程序。也就是說面向組件支持更大范圍內(nèi)的重用,開發(fā)效率更高。如果把面向?qū)ο蟊茸髦赜昧慵?#xff0c;那么面向組件則是重用部件。
?
?
面向服務(wù):
將系統(tǒng)進(jìn)行功能化,每個(gè)功能提供一種服務(wù)。現(xiàn)在非常流行WebService技術(shù)以及SOA(面向服務(wù)架構(gòu))技術(shù)。
?
面向過程(C)→面向?qū)ο?#xff08;Java)→面向組件(C#)→面向服務(wù)(WebService)
總結(jié)
以上是生活随笔為你收集整理的从面向过程到面向对象的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Docker - 手动迁移镜像
- 下一篇: MariaDB Spider:实现MyS