国产成人精品无码青草_亚洲国产美女精品久久久久∴_欧美人与鲁交大毛片免费_国产果冻豆传媒麻婆精东

18143453325 在線咨詢 在線咨詢
18143453325 在線咨詢
所在位置: 首頁 > 營銷資訊 > 信息時代 > 第4代語言(數(shù)據(jù)庫)

第4代語言(數(shù)據(jù)庫)

時間:2022-12-15 00:30:01 | 來源:信息時代

時間:2022-12-15 00:30:01 來源:信息時代

    第4代語言 : 4GL是以數(shù)據(jù)庫管理系統(tǒng)所提供的功能為核心,進一步構(gòu)造開發(fā)高層軟件系統(tǒng)的開發(fā)環(huán)境,如報表生成、多窗口表格設(shè)計、菜單生成系統(tǒng)、圖形圖像處理系統(tǒng)和決策支持系統(tǒng)等。它提供了功能強大的非過程化問題定義手段,用戶只需告知系統(tǒng)做什么,而無需說明怎么做,因此可顯著提高軟件生產(chǎn)率。
第4代語言來自于商業(yè)需要。20世紀80年代初期,人們發(fā)現(xiàn)這一類語言具有“面向問題”、“非過程化程度高”等特點,可以成數(shù)量級地提高軟件生產(chǎn)率,縮短軟件開發(fā)周期,因此4GL產(chǎn)品贏得了很多用戶。1985年,美國召開了全國性的4GL研討會,也正是在這前后,許多著名的計算機科學(xué)家對4GL展開了全面研究,4GL進入了計算機科學(xué)的研究范疇。進入90年代,隨著計算機軟硬件技術(shù)的發(fā)展和應(yīng)用水平的提高,大量基于數(shù)據(jù)庫管理系統(tǒng)的4GL商品化軟件已在計算機應(yīng)用開發(fā)領(lǐng)域中獲得廣泛應(yīng)用,成為面向數(shù)據(jù)庫應(yīng)用開發(fā)的主流工具,如Power Builder、Delphi、Visual BASIC等。
由于近代軟件工程實踐所提出的大部分技術(shù)和方法并未受到普遍的歡迎和采用,軟件供求矛盾進一步惡化,軟件的開發(fā)成本日益增長,導(dǎo)致了所謂“新軟件危機”。這既暴露了傳統(tǒng)開發(fā)模型的不足,又說明了單純以勞動力密集的形式來支持軟件生產(chǎn),已不再適應(yīng)社會信息化的要求,必須尋求更高效、自動化程度更高的軟件開發(fā)工具來支持軟件生產(chǎn)。4GL就是在這種背景下產(chǎn)生并發(fā)展的。
1. 4GL的衡量標(biāo)準
確定一種語言是否是4GL,主要考察以下四個標(biāo)準:
(1)生產(chǎn)率標(biāo)準: 4GL應(yīng)比3GL提高生產(chǎn)率在一個數(shù)量級以上。
(2)非過程化標(biāo)準: 4GL是面向問題的,即只需告知計算機“做什么”,而不必告知計算機“怎么做”。
(3)用戶界面標(biāo)準:4GL具有良好的用戶界面,簡單、易學(xué)、易掌握,使用方便、靈活。
(4)功能標(biāo)準: 4GL要具有生命力,適用范圍不能太窄,在某一范圍內(nèi)應(yīng)具有通用性。
2.4GL的不足
雖然4GL具有很多優(yōu)點和優(yōu)勢,成為目前應(yīng)用開發(fā)的主流工具,但也存在著以下一些不足:
(1)整體功能范圍有限: 4GL功能強大,但就其整體功能與3GL相比有一定的差距。這是語言抽象級別提高以后不可避免地帶來的(正如高級語言不能做某些匯編語言做的事情);另一方面是人為帶來的,許多4GL只面向?qū)m棏?yīng)用。有的4GL為了提高對問題的表達能力,提供了與3GL的接口。
(2) 4GL系統(tǒng)對硬件要求高: 4GL由于其抽象級別較高的原因,不可避免地帶來系統(tǒng)開銷龐大,運行效率低下(正如高級語言的運行效率沒有匯編語言的運行效率高一樣),對軟硬件資源要求較高。
(3)開發(fā)出應(yīng)用軟件的可移植性低: 由于缺乏統(tǒng)一的工業(yè)標(biāo)準,4GL產(chǎn)品繁多,用戶界面差異很大,與具體的機器聯(lián)系緊密,語言的獨立性較差,影響了應(yīng)用軟件的移植與推廣。
3.4GL分類
按照4GL功能可以將它們劃分為以下幾類:
(1)查詢語言和報表生成器: 查詢語言是數(shù)據(jù)庫管理系統(tǒng)的主要工具,它為用戶提供對數(shù)據(jù)庫進行查詢的功能,例如SQL查詢語言提供對數(shù)據(jù)庫的查詢、操縱、定義、控制等多種功能。報表生成器(report generator)是為用戶提供的自動產(chǎn)生報表的重要工具,它提供非過程化的描述手段讓用戶方便地根據(jù)數(shù)據(jù)庫中信息來生成報表。
(2)圖形語言: 目前較有代表性的是Gupta公司開發(fā)的SQL Windows系統(tǒng),它以SQL語言為引擎,讓用戶在屏幕上以圖形方式定義用戶需求,系統(tǒng)自動生成相應(yīng)的源程序,用戶可修改或增加相應(yīng)的源程序,從而完成應(yīng)用開發(fā)。
(3) 應(yīng)用生成器: 應(yīng)用生成器(application generator)是一類綜合的4GL工具,它用來生成完整的應(yīng)用系統(tǒng)。應(yīng)用生成器讓用戶不必使用多個軟件,而只用這樣一個綜合工具來實現(xiàn)多種功能。應(yīng)用生成器按其使用對象可以分為交互式和編程式二類。屬于前者的有FOCUS、RAMIS、MAPPER、UFO、NOMAD、SAS等。它們服務(wù)于維護、準備和處理報表,允許用戶以交互方式在終端上創(chuàng)建文件、報表和進行其他的處理。目前較有代表性的有Power Builder和Oracle的應(yīng)用開發(fā)環(huán)境。Oracle提供的SQL*FormS、SQL*Menu、SQL*Reportwriter等工具建立在SQL語言基礎(chǔ)之上,借助了數(shù)據(jù)庫管理系統(tǒng)功能,讓用戶交互式地定義需求,系統(tǒng)生成相應(yīng)的屏幕格式、菜單和打印報表。編程式應(yīng)用生成器是為建造復(fù)雜系統(tǒng)的專業(yè)程序人員設(shè)計的,如NATURAL、FOXPRO、MANTIS、IDEAL、CSP、DMS、INFO、LINC等即屬于這一類。這一類4GL中有許多是程序生成器(program generator),如LINC生成COBOL程序,formAL生成PASCAL程序等。為了支持專業(yè)人員建造復(fù)雜的應(yīng)用系統(tǒng),有的語言具有很強的過程化描述能力。雖然語句的形式有差異,其實質(zhì)與3GL的過程化語句相同,如Informix—4GL和Oracle的PRO*C。
(4)形式規(guī)格說明語言: 軟件規(guī)格說明是對軟件應(yīng)滿足的需求、功能、性能及其他重要方面的陳述,是軟件開發(fā)的基礎(chǔ)。按照軟件生存周期的階段來劃分,有軟件的需求規(guī)格說明、功能規(guī)格說明、設(shè)計規(guī)格說明等。用來書寫規(guī)格說明的語言稱為規(guī)格說明語言。傳統(tǒng)的規(guī)格說明語言是自然語言。自然語言為開發(fā)者和用戶所熟悉,易于使用,但也不可避免地會將自然語言的歧義性、不精確性引入到軟件規(guī)格說明中,從而給軟件的開發(fā)和軟件的質(zhì)量帶來隱患?!靶问降囊?guī)格說明語言”則很好地解決上述問題,而且還是軟件自動化的基礎(chǔ)。從形式的需求規(guī)格說明和功能規(guī)格說明出發(fā),可以自動或半自動地轉(zhuǎn)換成某種可執(zhí)行的語言(如高級語言)。需求規(guī)格說明和功能規(guī)格說明是面向問題、非過程化的,因此屬于4GL。這一類語言有Z、NPL、SPECINT等。設(shè)計規(guī)格說明語言由于包含大量過程化成分,原則上不應(yīng)劃入4GL。
4. 4GL的發(fā)展
在今后相當(dāng)一段時期內(nèi),4GL仍然是應(yīng)用開發(fā)的主流工具。但其功能、表現(xiàn)形式、用戶界面、所支持的開發(fā)方法將會發(fā)生一系列深刻的變化。主要表現(xiàn)在以下幾個方面:
(1) 4GL與面向?qū)ο蠹夹g(shù)將進一步結(jié)合。面向?qū)ο蠹夹g(shù)集數(shù)據(jù)抽象、抽象數(shù)據(jù)類型和類繼承為一體,使軟件工程公認的模塊化、信息隱蔽、抽象、局部化、軟件重用等原則在面向?qū)ο髾C制下得到充分的體現(xiàn)。它追求自然地刻畫和求解現(xiàn)實世界中的問題,即追求問題結(jié)構(gòu)與軟件結(jié)構(gòu)的一致性,使得開發(fā)人員可以把主要精力放在系統(tǒng)一級上,按照自己的意圖創(chuàng)建對象,并將問題映射到該對象上。面向?qū)ο蠹夹g(shù)所追求的目標(biāo)和4GL所追求的目標(biāo)實際上是一致的。目前有代表性的4GL普遍具有面向?qū)ο蟮奶卣?但這些特征都很有限。所采用的實現(xiàn)技術(shù)往往是在傳統(tǒng)的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)的基礎(chǔ)上再加上一層面向?qū)ο蟮拈_發(fā)工具,而這層工具未能完全與數(shù)據(jù)庫管理系統(tǒng)有機結(jié)合在一起,對抽象數(shù)據(jù)類型和繼承性的表達也很有限,極大地限制了面向?qū)ο箝_發(fā)技術(shù)對4GL的支持。隨著面向?qū)ο髷?shù)據(jù)庫管理系統(tǒng)和/或?qū)ο?關(guān)系數(shù)據(jù)庫管理系統(tǒng)研究的深入,建立在其上的4GL將會出現(xiàn)在應(yīng)用開發(fā)者面前。
(2) 4GL將全面支持以Internet為代表的網(wǎng)絡(luò)分布式應(yīng)用開發(fā)。隨著Internet為代表的網(wǎng)絡(luò)技術(shù)的廣泛普及,4GL又有了新的活動空間。出現(xiàn)類似于Java,但比Java抽象級更高的4GL不僅是可能的,而且是完全必要的。
(3) 4GL將出現(xiàn)事實上的工業(yè)標(biāo)準。目前4GL產(chǎn)品很不統(tǒng)一,給軟件的可移植性和應(yīng)用范圍帶來了極大的影響。但基于SQL的4GL已成為主流產(chǎn)品。隨著競爭和發(fā)展,有可能出現(xiàn)以SQL為引擎的事實上的工業(yè)標(biāo)準。
(4) 4GL將以受限的自然語言加圖形作為用戶界面。目前4GL基本上還是以傳統(tǒng)的程序設(shè)計語言或交互方式為用戶界面的。前者表達能力強,但難于學(xué)習(xí)使用;后者易于學(xué)習(xí)使用,但表達能力弱。在自然語言理解未能徹底解決之前,4GL將以受限自然語言加圖形作為用戶界面,以提高用戶界面的友好性。
(5) 4GL需要數(shù)據(jù)庫管理系統(tǒng)的繼續(xù)支持。4GL的主要應(yīng)用領(lǐng)域是商務(wù)。商務(wù)處理領(lǐng)域中需要大量的數(shù)據(jù),沒有數(shù)據(jù)庫管理系統(tǒng)的支持是很難想像的。事實上大多數(shù)4GL建立在某種數(shù)據(jù)庫管理系統(tǒng)基礎(chǔ)之上,是數(shù)據(jù)庫管理系統(tǒng)功能的擴展。
(6) 4GL要求軟件開發(fā)方法發(fā)生變革。4GL的發(fā)展將促進軟件開發(fā)方法的變遷和發(fā)展。預(yù)計基于構(gòu)件的開發(fā)方法將居主導(dǎo)地位,再配之以一些輔助性的方法,如快速原型方法、并行式軟件開發(fā)、協(xié)同式軟件開發(fā)等,以加快軟件的開發(fā)速度,提高軟件的質(zhì)量。

74
73
25
news

版權(quán)所有? 億企邦 1997-2022 保留一切法律許可權(quán)利。

為了最佳展示效果,本站不支持IE9及以下版本的瀏覽器,建議您使用谷歌Chrome瀏覽器。 點擊下載Chrome瀏覽器
關(guān)閉