摘要:編程之精髓在于編程思想,而不同的編程方法有不同的編程思想。結(jié)構(gòu)化程序設計方法一直以來都是編程人員基本的編程方法,而近年來流行的面向?qū)ο蠓椒ㄒ矀涫苋藗兦嗖A。文章通過介紹編程世界的這兩種主要編程方法,結(jié)構(gòu)化方法和面向?qū)ο蠓椒ǖ姆治觥⒃O計和應用。并在最后對兩種方法進行比較分析,比較結(jié)構(gòu)化方法和面向?qū)ο蠓椒ň幊趟枷氲漠愅蛢煞N方法的應用。
關(guān)鍵詞:結(jié)構(gòu)化方法;面向?qū)ο蠓椒?;編程思想;再抽象;再模塊化;
0 前言
結(jié)構(gòu)化方法和面向?qū)ο蠓椒ㄊ钱斍败浖_發(fā)最常用的方法?;凇捌俨寄P汀钡能浖_發(fā)方法中,以軟件架構(gòu)為核心,采用結(jié)構(gòu)化設計和分析方法將軟件開發(fā)的生命周期劃分為制定計劃、需求分析、軟件設計、程序編寫、軟件測試和運行維護六個基本階段。而在通過迭代式和增量式進行開發(fā)的敏捷軟件開發(fā)方法中,主要采用面向?qū)ο蟮脑O計和分析方法。結(jié)構(gòu)化方法與面向?qū)ο蠓椒ǖ氖褂茫c具體的開發(fā)環(huán)境和開發(fā)方法有關(guān),如傳統(tǒng)軟件工程中更適合用結(jié)構(gòu)化方法,而敏捷軟件開發(fā)方法中面向?qū)ο箝_發(fā)方法更受青睞。
1 結(jié)構(gòu)化方法
結(jié)構(gòu)化編程思想由艾慈格·迪杰斯特拉在1976年在《GOTO陳述有害論》中提出,1975年賴瑞·康斯坦丁和愛德華·尤登提出結(jié)構(gòu)化設計,1978年湯姆·迪馬克和愛德華·尤登等在1975年提出結(jié)構(gòu)化分析,后來逐漸被完善,形成現(xiàn)在軟件開發(fā)方法中主要采用的結(jié)構(gòu)化方法。結(jié)構(gòu)化方法從功能上對系統(tǒng)進行劃分,將系統(tǒng)按功能劃分成各個模塊,將子模塊編寫成子程序,通過子程序之間的結(jié)構(gòu)和層次之間的耦合來解決復雜的問題。結(jié)構(gòu)化方法按軟件周期可劃分為結(jié)構(gòu)化分析、結(jié)構(gòu)化設計和結(jié)構(gòu)化實現(xiàn),這里主要討論SA和SD。