軟件結(jié)構(gòu)程序設(shè)計
瀏覽量:2276
1.軟件開發(fā)結(jié)構(gòu)程序設(shè)計基本概念:1966年C.Bohm和G.Jacopini從理論上證明:任何程序都可用三種基本控制結(jié)構(gòu)(順序結(jié)構(gòu)、條件結(jié)構(gòu)、當(dāng)型循環(huán)結(jié)構(gòu))表示出來。這為結(jié)構(gòu)程序設(shè)計技術(shù)奠定了理論基礎(chǔ)。1972年IBM公司的H.Mills提出,程序模塊控制結(jié)構(gòu)應(yīng)該只有一個入口和一個出口,補(bǔ)充了結(jié)構(gòu)程序設(shè)計的規(guī)則。1974年D.E.Knuth對CoTO語句的爭論作了全面公正的評論:不加限制地使用GOTO語句,特別是往回跳的GoTO語句,會使程序結(jié)構(gòu)難以理解。如果在某些情形,用GoTO語句能提高效率,同時又不破壞程序的良好結(jié)構(gòu),這種有控制地使用GoTO語句是必要的。
2.定義:軟件開發(fā)結(jié)構(gòu)程序設(shè)計是一種程序設(shè)計的原則和方法,它采用自頂向下逐步求精的設(shè)計方法和單入口單出口的控制結(jié)構(gòu)。這樣設(shè)計出的程序,結(jié)構(gòu)清晰、易讀易修改、易驗證。
3.優(yōu)缺點(diǎn):
優(yōu)點(diǎn):
(1)自頂向下逐步求精的方法,符合人類解決復(fù)雜問題的普遍規(guī)律,因此可顯著提高軟件開發(fā)的成功率和生產(chǎn)率。
(2)逐步求精過程先整體后局部,先功能后細(xì)節(jié),先抽象后具體,因此開發(fā)出的軟件有清晰的層次結(jié)構(gòu),易讀易理解。
(3)僅使用單入口單出口的控制結(jié)構(gòu),使程序的靜態(tài)結(jié)構(gòu)和它的動態(tài)執(zhí)行情況比較一致,開發(fā)時容易保證程序的正確性。即使出現(xiàn)錯誤也易診斷和糾正。
(4)程序結(jié)構(gòu)清晰和模塊化技術(shù)的使用,使修改或重新設(shè)計時可復(fù)用部分增加。
缺點(diǎn):結(jié)構(gòu)程序設(shè)汁使所需存儲量和運(yùn)行時間都有增加,約為10%一25%。
不少語言是非結(jié)構(gòu)化的(現(xiàn)在這些語言絕大多數(shù)也已結(jié)構(gòu)化),并不直接提供單入口單11J口的其此控制結(jié)構(gòu)。
本文由軟件開發(fā)提供:http://www.shaigong.cn
上一篇:軟件用戶界面設(shè)計
下一篇:沒有了

