国产啪视频1000部免费视频_本年度最佳→偷自拍日韩精品蜜月_亚洲尤物在线观看_成人国产精品视频网站_亚洲成a人片在线观_天天看片在线无码免费_免费日韩一区二区_国产精品久久亚洲高潮野花社喷水_再深点灬舒服灬太大了av_中文字幕无码一级麻豆精品国产综合.

談一談軟件開發(fā)工具的選擇

發(fā)布時間:2020-08-14 09:50:04

我國的軟件開發(fā)已從最初的手工工作室風格逐步發(fā)展到軟件工程階段。 同時,軟件開發(fā)本身也在不斷發(fā)展,從“算法+數(shù)據(jù)結(jié)構(gòu)=程序”到“設(shè)計模式+對象組件+開發(fā)工具=程序”。 開發(fā)工具的選擇已成為成功進行軟件開發(fā)的要素之一。

開發(fā)工具的選擇主要取決于兩個因素:最終用戶和開發(fā)系統(tǒng)的開發(fā)人員。 最終用戶的需求是所有軟件的來源和目的地,也是影響開發(fā)工具的決定性因素; 開發(fā)人員的愛好,習慣和經(jīng)驗也會影響開發(fā)工具的選擇。 嚴格的軟件工程管理和開發(fā)人員的技術(shù)水平是成功開發(fā)軟件的關(guān)鍵。

本文介紹了一些選擇軟件開發(fā)工具的想法,強調(diào)了在滿足客戶群體時,服務于軟件工程思想的軟件工具的重要性。

開發(fā)工具競爭優(yōu)勢

首先要強調(diào)的是,沒有絕對的標準可用于比較開發(fā)工具。 評估開發(fā)工具不僅取決于其對設(shè)計模式,對象結(jié)構(gòu)和管理的支持,而且更重要的是,有必要根據(jù)特定的使用環(huán)境,開發(fā)方法,結(jié)構(gòu)系統(tǒng),開發(fā)組和使用組來評估工具的性能。  。 適應性。  

現(xiàn)有的開發(fā)工具大致分為兩種類型:大型和綜合以及小型和專業(yè)化。 微軟的Visual Studio系列和IBM的Visual Age系列應屬于前者; 許多其他工具,例如Delphi / C ++ Builder / JBuilder / Kylix,PowerBuilder / PowerJ,以及大量的各種SDK,等等。它們都有自己的特點,雖然很小,但卻很專業(yè)。  

大型完整工具通常提供從前端到后端,從設(shè)計到編碼和測試的完整工具,但是在某些特定功能上,它們不如小型專用工具那么好。  

Visual Studio.NET的UML開發(fā)工具(Visual Modeler / Visio)通常只能與Rational Suite中的Rational Rose Logical View進行比較,它不能具有完整的Rational Unified Process流程。  ; 它的視覺Visual Basic在速度和功能上無法與Delphi / C ++ Builder進行比較。  

盡管Visual Studio.NET的所有部分都有缺點,但其Visio工具可以更快,更輕松地與編程語言集成。 與Office和其他工具集成時,與Delphi / C ++ Builder相比,Visual Basic具有更少的問題(數(shù)據(jù)類型轉(zhuǎn)換等)。 因此,工具的類型和特定的條件決定了在特定條件下軟件開發(fā)工具的最佳選擇。

如果您想做點好事,請先完善您的工具

開發(fā)工具的選擇主要取決于兩個因素:最終用戶和開發(fā)系統(tǒng)的開發(fā)人員。 最終用戶的需求是所有軟件的來源和目的地,也是影響開發(fā)工具的決定性因素; 開發(fā)人員的愛好,習慣和經(jīng)驗也會影響開發(fā)工具的選擇。

最終用戶的需求

程序的最終用戶組是軟件開發(fā)的服務對象,并且也影響開發(fā)工具的選擇。 從計算機的使用程度來看,最終用戶可以分為IT人員,各個行業(yè)的專業(yè)人員和普通用戶。 不同的用戶對軟件有不同的要求。   IT人員自然需要更多功能和更多免費的自定義/輔助開發(fā)空間; 行業(yè)用戶通常需要一個整體解決方案來增強他們的整體競爭力; 普通用戶顯然需要更方便和簡單的使用。 用戶的需求在自由,覆蓋,針對性和便利性的維度上得到了擴展。

擴大軟件自由度

為了擴大軟件自由度,不可避免的是減少包裝和充分的功能暴露。 為了允許用戶自由使用Windows,C ++或匯編程序的功能,自由選擇訪問操作系統(tǒng)和硬件資源的語言應該是最佳選擇。  Visual C ++已成為其操作系統(tǒng)功能的Microsoft“權(quán)威”軟件包,到目前為止,它已在Windows系統(tǒng)級開發(fā)中占據(jù)主流地位。  C ++ Builder擴展了標準C ++語法并提供了RAD(快速應用程序 開發(fā)),但是其大多數(shù)VCL(可視組件庫)都是用Delphi編寫的,這與MFC / ATL庫的純C ++源代碼不同 Visual C ++,對C ++程序員的深度編程不利。 最近,開放源代碼(Open Source)運動席卷全球。 在開源C ++工具中,GCC已被廣泛采用。 它不僅可以在各種流行的操作系統(tǒng)(Windows,Linux,Solaris,HP-Unix)上運行,而且還支持Object C和C ++的各種擴展語法,甚至可以編譯Java代碼。

我國的軟件開發(fā)已從最初的手工工作室風格逐步發(fā)展到軟件工程階段。 同時,軟件開發(fā)本身也在不斷發(fā)展,從“算法+數(shù)據(jù)結(jié)構(gòu)=程序”到“設(shè)計模式+對象組件+開發(fā)工具=程序”。 開發(fā)工具的選擇已成為成功進行軟件開發(fā)的要素之一。

開發(fā)工具的選擇主要取決于兩個因素:最終用戶和開發(fā)系統(tǒng)的開發(fā)人員。 最終用戶的需求是所有軟件的來源和目的地,也是影響開發(fā)工具的決定性因素; 開發(fā)人員的愛好,習慣和經(jīng)驗也會影響開發(fā)工具的選擇。 嚴格的軟件工程管理和開發(fā)人員的技術(shù)水平是成功開發(fā)軟件的關(guān)鍵。

本文介紹了一些選擇軟件開發(fā)工具的想法,強調(diào)了在滿足客戶群體時,服務于軟件工程思想的軟件工具的重要性。

開發(fā)工具競爭優(yōu)勢

首先要強調(diào)的是,沒有絕對的標準可用于比較開發(fā)工具。 評估開發(fā)工具不僅取決于其對設(shè)計模式,對象結(jié)構(gòu)和管理的支持,而且更重要的是,有必要根據(jù)特定的使用環(huán)境,開發(fā)方法,結(jié)構(gòu)系統(tǒng),開發(fā)組和使用組來評估工具的性能。  。 適應性。  

現(xiàn)有的開發(fā)工具大致分為兩種類型:大型和綜合以及小型和專業(yè)化。 微軟的Visual Studio系列和IBM的Visual Age系列應屬于前者; 許多其他工具,例如Delphi / C ++ Builder / JBuilder / Kylix,PowerBuilder / PowerJ,以及大量的各種SDK,等等。它們都有自己的特點,雖然很小,但卻很專業(yè)。  

大型完整工具通常提供從前端到后端,從設(shè)計到編碼和測試的完整工具,但是在某些特定功能上,它們不如小型專用工具那么好。  

Visual Studio.NET的UML開發(fā)工具(Visual Modeler / Visio)通常只能與Rational Suite中的Rational Rose Logical View比較。不可能有一個完整的Rational Unified Process。 就速度和功能而言,其視覺 Basic不能與Delphi / C ++ Builder相比。  

盡管Visual Studio.NET的所有部分都有缺點,但其Visio工具可以更快,更輕松地與編程語言集成。 與Office和其他工具集成時,與Delphi / C ++ Builder相比,Visual Basic具有更少的問題(數(shù)據(jù)類型轉(zhuǎn)換等)。 因此,工具的類型和特定的條件決定了在特定條件下軟件開發(fā)工具的最佳選擇。

如果您想做點好事,請先完善您的工具

開發(fā)工具的選擇主要取決于兩個因素:最終用戶和開發(fā)系統(tǒng)的開發(fā)人員。 最終用戶的需求是所有軟件的來源和目的地,也是影響開發(fā)工具的決定性因素; 開發(fā)人員的愛好,習慣和經(jīng)驗也會影響開發(fā)工具的選擇。

最終用戶的需求

程序的最終用戶組是軟件開發(fā)的服務對象,并且也影響開發(fā)工具的選擇。 從計算機的使用程度來看,最終用戶可以分為IT人員,各個行業(yè)的專業(yè)人員和普通用戶。 不同的用戶對軟件有不同的要求。   IT人員自然需要更多功能和更多免費的自定義/輔助開發(fā)空間; 行業(yè)用戶通常需要一個整體解決方案來增強他們的整體競爭力; 普通用戶顯然需要更方便和簡單的使用。 用戶的需求在自由,覆蓋,針對性和便利性的維度上得到了擴展。

擴大軟件自由度

為了擴大軟件自由度,不可避免的是減少包裝和充分的功能暴露。 為了允許用戶自由使用Windows,C ++或匯編程序的功能,自由選擇訪問操作系統(tǒng)和硬件資源的語言應該是最佳選擇。  Visual C ++已成為其操作系統(tǒng)功能的Microsoft“權(quán)威”軟件包,并已在Windows系統(tǒng)級開發(fā)中占據(jù)了主流地位。  C ++ Builder擴展了標準C ++語法提供了RAD(快速應用程序 開發(fā))支持,但是其大多數(shù)VCL(Visual Component Library)是用Delphi編寫的,這與Visual C ++代碼的MFC / ATL庫的純C ++源代碼不同。 對C ++程序員的深入編程很有用。 最近,開放源代碼(Open Source)運動席卷全球。 在開源C ++工具中,GCC已被廣泛采用。 它不僅可以在各種流行的操作系統(tǒng)(Windows,Linux,Solaris,HP-Unix)上運行,而且還支持Object C和C ++的各種擴展語法,甚至可以編譯Java代碼。

覆蓋范圍取決于您想要的內(nèi)容。關(guān)于覆蓋范圍要求,不同的系統(tǒng)也有所不同:某些系統(tǒng)可能需要前端,中間件,后端,數(shù)據(jù)庫或各種操作系統(tǒng)和硬件平臺。  Visual Studio .NET和IBM的電子商務平臺都可以提供從客戶端,中間件到數(shù)據(jù)庫的整體開發(fā)支持。  

Visual Studio.NET甚至將可視化帶到Web客戶端。 通過拖放完成網(wǎng)頁后,您可以雙擊進入后臺處理程序的框架代碼。 從軟件工程的角度來看,Visual Studio.NET為程序員提供了強大而便捷的功能,但它并未明確支持需求分析過程。  IBM的Visual Age系列在這方面做得很好。  Visual Age UML Designer支持從需求分析到設(shè)計和編碼的相對完整的過程(但是,在代碼生成方面僅支持Java和Smalltalk。)。  

Visual Studio.NET使用COM +作為組件模型,并且生成的Web客戶端對該平臺沒有任何限制。 但是,盡管.NET框架應該可移植以在非Windows平臺上運行,但是中間件和服務器在Unix或Mac OS上還沒有成功的案例。  IBM VisualAge + WebSphere + DB2系列采用JavaBEAn / J2EE作為組件模型。 由于Java的平臺獨立性,客戶端和中間件的跨平臺性更好。  

當然,可以通過組合小型專用工具來完成這些任務。  Rational Suite可以完成業(yè)務建模,系統(tǒng)建模,模塊建模和發(fā)布測試的完整過程,Delphi / C ++ Builder可以使用CORBA或COM +作為中間件,JBuilder 6可以 還可以使用Visibroker或orbix等各種CORBA產(chǎn)品,或WebSphere,iPlanet,BAS,WebLogic等各種J2EE產(chǎn)品。 但是,如果您不了解Rational中的UML和代碼映射方法以及C ++ Builder / Delphi / JBuilder管理代碼的方式,如果您想?yún)f(xié)調(diào)建模和編碼,則需要在其中進行設(shè)置。  Rational Rose ClassPath并在Borland工具中設(shè)置源代碼目錄。 存在許多過程和可能的問題,在Visual Studio.NET中,只需單擊幾下鼠標即可完成這些任務。  

還有像Ensemble這樣的公司,專門從事小型和專業(yè)工具的集成,但是這些軟件的成熟度以及學習和掌握仍然是一個問題。 當然,就部分覆蓋而言,使用CLX的Delphi程序可以在Kylix上編譯并在Linux上運行。  Raining 數(shù)據(jù)公司的Omnis Studio 3.1甚至直接支持跨Windows和Linux平臺的RAD開發(fā)。

針對性具有自己的特征

就相關(guān)性而言,每種工具都有其自身的優(yōu)勢。 在獨立應用程序中,Visual FoxPro具有世界上最快的數(shù)據(jù)訪問引擎。 在開發(fā)兩層數(shù)據(jù)庫應用程序時,PowerBuilder特別是使用數(shù)據(jù)窗口和Sybase數(shù)據(jù)庫后端連接,通過PowerDesign進行建模,不僅開發(fā)速度快,而且效率和穩(wěn)定性更高。 在三層應用程序中,使用Visual Basic / C ++ / C#+ ADO。 如果再次使用SQL Server,則可以保證性能,開發(fā)效率和穩(wěn)定性。 在使用C ++ Builder / Delphi + DataSnap(MIDAS)時,在連接到非Microsoft數(shù)據(jù)庫或與CORBA程序進行交互時具有優(yōu)勢。  

對于多層分布式應用程序,COM +規(guī)范和CORBA產(chǎn)品(orbix, visibroker等)通常決定開發(fā)工具的選擇。  COM +開發(fā)工具通常使用Visual Studio.NET或Borland產(chǎn)品,但是由于CORBA編程語言和系統(tǒng)平臺的獨立性,通??梢允褂酶鞣N開發(fā)平臺。 此外,對于C / C ++編程,DSET的DSG用于高端應用程序(通常在電信領(lǐng)域)。 它具有獨立于網(wǎng)絡協(xié)議堆棧,同步/異步消息處理,強大的通信功能以及從嵌入式到大型機的遷移的獨立性。 就性別而言,它具有獨特的優(yōu)勢。 在服務器端開發(fā)中,COM +,CORBA 3.0和J2EE都支持組件模型,分別使用MSMQ,CORBA Messaging 系統(tǒng)和JMS完成異步通信。  COM +仍主要集中在Windows平臺上,并且CORBA 3.0的Java語言部分包括整個J2EE規(guī)范。 但是,CORBA是跨語言和跨平臺的規(guī)范。 支持3.0版本的非Java語言的產(chǎn)品很少。 支持其核心CCM(CORBA 組件模型)的C ++編程產(chǎn)品包括iCMG K2-CCM Wait。  

J2EE組件(EJB)已開發(fā)到1.2版。 滿足此規(guī)范的產(chǎn)品-BEA WebLogic,Borland BAS,IBM WebSphere,Oracle 9i甚至免費的JBOSS都已被廣泛使用。  BEA WebLogic 7.0在前端開發(fā)工具上做了很多工作,聲稱將J2EE開發(fā)和Visual Basic置于同一級別(其內(nèi)部名稱為Java的Visual Basic)。

覆蓋范圍取決于您想要的內(nèi)容。關(guān)于覆蓋范圍要求,不同的系統(tǒng)也有所不同:某些系統(tǒng)可能需要前端,中間件,后端,數(shù)據(jù)庫或各種操作系統(tǒng)和硬件平臺。  Visual Studio .NET和IBM的電子商務平臺都可以提供從客戶端,中間件到數(shù)據(jù)庫的整體開發(fā)支持。  

Visual Studio.NET甚至將可視化帶到Web客戶端。 通過拖放完成網(wǎng)頁后,您可以雙擊進入后臺處理程序的框架代碼。 從軟件工程的角度來看,Visual Studio.NET為程序員提供了強大而便捷的功能,但它并未明確支持需求分析過程。  IBM的Visual Age系列在這方面做得很好。  Visual Age UML Designer支持從需求分析到設(shè)計和編碼的相對完整的過程(但是,在代碼生成方面僅支持Java和Smalltalk。)。  

Visual Studio.NET使用COM +作為組件模型,并且生成的Web客戶端對該平臺沒有任何限制。 但是,盡管.NET框架應該可移植以在非Windows平臺上運行,但是中間件和服務器在Unix或Mac OS上還沒有成功的案例。  IBM VisualAge + WebSphere + DB2系列采用JavaBEAn / J2EE作為組件模型。 由于Java的平臺獨立性,客戶端和中間件的跨平臺性更好。  

當然,可以通過組合小型專用工具來完成這些任務。  Rational Suite可以完成業(yè)務建模,系統(tǒng)建模,模塊建模和發(fā)布測試的完整過程,Delphi / C ++ Builder可以使用CORBA或COM +作為中間件,JBuilder 6可以 也使用各種CORBA產(chǎn)品,例如Visibroker或orbix或WebSphere,各種J2EE產(chǎn)品,例如iPlanet,BAS,WebLogic等。但是,如果您不了解Rational中的UML和代碼映射方法以及C ++ Builder / Delphi / JBuilder管理代碼的方式, 要協(xié)調(diào)建模和編碼,您需要在Rational Rose ClassPath中進行設(shè)置,并在Borland工具中設(shè)置源代碼目錄。 存在許多過程和可能的問題,在Visual Studio.NET中,只需單擊幾下鼠標即可完成這些任務。  

還有像Ensemble這樣的公司,專門從事小型和專業(yè)工具的集成,但是這些軟件的成熟度以及學習和掌握仍然是一個問題。 當然,就部分覆蓋而言,使用CLX的Delphi程序可以在Kylix上編譯并在Linux上運行。  Raining 數(shù)據(jù)公司的Omnis Studio 3.1甚至直接支持跨Windows和Linux平臺的RAD開發(fā)。

針對性具有自己的特征

就相關(guān)性而言,每種工具都有其自身的優(yōu)勢。 在獨立應用程序中,Visual FoxPro具有世界上最快的數(shù)據(jù)訪問引擎。 在開發(fā)兩層數(shù)據(jù)庫應用程序時,PowerBuilder特別是使用數(shù)據(jù)窗口和Sybase數(shù)據(jù)庫后端連接,通過PowerDesign進行建模,不僅開發(fā)速度快,而且效率和穩(wěn)定性更高。 在三層應用程序中,使用Visual Basic / C ++ / C#+ ADO。 如果再次使用SQL Server,則可以保證性能,開發(fā)效率和穩(wěn)定性。 在使用C ++ Builder / Delphi + DataSnap(MIDAS)時,在連接到非Microsoft數(shù)據(jù)庫或與CORBA程序進行交互時具有優(yōu)勢。  

對于多層分布式應用程序,COM +規(guī)范和CORBA產(chǎn)品(orbix, visibroker等)通常決定開發(fā)工具的選擇。  COM +開發(fā)工具通常使用Vis Studio.NET或Borland產(chǎn)品,并且由于CORBA的編程語言和系統(tǒng)平臺的獨立性,因此通常可以使用各種開發(fā)平臺。 此外,對于C / C ++編程,DSET的DSG用于高端應用程序(通常在電信領(lǐng)域)。 它具有獨立于網(wǎng)絡協(xié)議堆棧,同步/異步消息處理,強大的通信功能以及從嵌入式到大型機的遷移的獨立性。 就性別而言,它具有獨特的優(yōu)勢。 在服務器端開發(fā)中,COM +,CORBA 3.0和J2EE都支持組件模型,分別使用MSMQ,CORBA Messaging 系統(tǒng)和JMS完成異步通信。  COM +仍主要集中在Windows平臺上,并且CORBA 3.0的Java語言部分包括整個J2EE規(guī)范。 但是,CORBA是跨語言和跨平臺的規(guī)范。 支持3.0版本的非Java語言的產(chǎn)品很少。 支持其核心CCM(CORBA 組件模型)的C ++編程產(chǎn)品包括iCMG K2-CCM Wait。  

J2EE組件(EJB)已開發(fā)到1.2版。 滿足此規(guī)范的產(chǎn)品-BEA WebLogic,Borland BAS,IBM WebSphere,Oracle 9i甚至免費的JBOSS都已被廣泛使用。  BEA WebLogic 7.0在前端開發(fā)工具上做了很多工作,聲稱將J2EE開發(fā)和Visual Basic置于同一級別(其內(nèi)部名稱為Java的Visual Basic)。

Microsoft具有最佳的便利性

就便利性而言,由于大量用戶的實踐,Microsoft的開發(fā)工具應該是最佳的。 它在可視化,工具之間的互操作性,穩(wěn)定性和文檔豐富性方面具有明顯的優(yōu)勢。  Borland Delphi / C ++ Builder在可視化方面與Visual Basic / C#基本相似,但是它們不夠穩(wěn)定(由C ++ Builder 5.0自動生成的CORBA程序的調(diào)試版本將報告 一個錯誤(Exception));  IBM Visual Age系列的穩(wěn)定性很好,但是它們的視覺編程不是很方便。 在文檔方面,沒有工具具有Visual Studio自己的MSDN(兩張CD)的功能。

開發(fā)人員的偏好

開發(fā)工具面向開發(fā)人員,開發(fā)人員是這些工具的用戶。 不同的開發(fā)人員對工具有不同的偏好。  Pascal程序員通常喜歡Delphi / Kylix。  Windows C ++程序員將選擇C ++ Builder或Visual C ++。 不同平臺上的C ++程序員可能更喜歡GCC。  Smalltalk程序員只能考慮Visual Age Smalltalk; 諸如Turbo Lisp,Visual Fortran,Perl Builder等開發(fā)工具也被其他編程語言的程序員廣泛使用。  

如今,各種編程語言的功能相互集成在一起。 例如,Borland Delphi和C ++ Builder在語言上的功能差異很小。 除了對編程語言的偏愛外,不同操作系統(tǒng)的程序員還使用不同的工具:Solaris系統(tǒng)下的程序員使用CC編寫C ++ / C后臺程序,使用Perl編寫框架或測試腳本,以及使用TCL / TK編寫接口程序。 盡管這些工具也可以在Windows下使用,但是更多的程序員仍然可以選擇支持RAD的工具。 現(xiàn)在,人們普遍認識到一種趨勢:操作系統(tǒng)和編程語言的開發(fā)差異正在迅速消失。  XML有效解決了不同系統(tǒng)下數(shù)據(jù)統(tǒng)一表達的問題。 通過虛擬機,Java程序可以在不同的操作系統(tǒng)下執(zhí)行;  Microsoft的.NET框架可以使用C ++ / Basic / C#進行編程。  

平臺與語言之間的交互使得各種工具越來越關(guān)注通用標準的支持。  Sun的新Java XML開發(fā)工具包顯然支持Microsoft和IBM提出的SOAP規(guī)范,而Visual Studio.NET也明確支持Java語言(J#)。 盡管這僅僅是開始,但語言和平臺的集成是不可阻擋的趨勢:必須有更多的編譯器才能將其他語言編譯為Java字節(jié)碼,Visual Studio.NET勢必將程序編譯為其他操作 系統(tǒng)。  

但是,隨著技術(shù)的集成,差異將始終存在。  Microsoft引入了用于Internet應用程序的.NET框架,并且Windows和Visual Studio都進行了重大改進。 對于此框架,Visual Studio.NET甚至引入了一種新的編程語言C#,該語言具有Java語言的大多數(shù)特征,同時允許在固定的內(nèi)存區(qū)域中使用指針。  C#確實在設(shè)計上非常先進,但是由于Java 2缺乏廣泛的使用和安全特性,它是否能夠吸引大量的程序員仍然是未知的。 同時,C#中的許多功能(對象方法的修飾符等)都是Microsoft COM +規(guī)范在編程語言中的映射,這在將來移植操作系統(tǒng)平臺時會造成麻煩。  

除了開發(fā)人員的平臺特性和語言偏愛外,人員之間的合作模式還決定了工具的選擇。 自由軟件通常采用的跨區(qū)域開發(fā)模型非常適合使用CVS版本管理系統(tǒng)的開發(fā)工具。 但是,由于Visual Studio.NET將在開發(fā)和調(diào)試期間更改本地Windows注冊表,因此跨區(qū)域開發(fā)非常不便。  

當然,不能排除其他因素對開發(fā)工具的影響。 例如,該行業(yè)的特征以及遺留系統(tǒng)(舊版 系統(tǒng))對發(fā)展的影響不容忽視:由于ITU-T規(guī)范的存在,電信行業(yè)的軟件開發(fā)應用Java代替 現(xiàn)有的C / C ++開發(fā)模型不如通用軟件快。 但是,歸根結(jié)底,軟件開發(fā)總是由人們來完成和服務。 無論現(xiàn)在其他因素的影響有多大,未來的發(fā)展都將不可避免地由人們來決定。

Microsoft具有最佳的便利性

就便利性而言,由于大量用戶的實踐,Microsoft的開發(fā)工具應該是最佳的。 它在可視化,工具之間的互操作性,穩(wěn)定性和文檔豐富性方面具有明顯的優(yōu)勢。  Borland Delphi / C ++ Builder在可視化方面與Visual Basic / C?;鞠嗨?,但是它們不夠穩(wěn)定(由C ++ Builder 5.0自動生成的CORBA程序的調(diào)試版本將報告 一個錯誤(Exception));  IBM Visual Age系列的穩(wěn)定性很好,但是它們的視覺編程不是很方便。 在文檔方面,沒有工具具有Visual Studio自己的MSDN(兩張CD)的功能。

開發(fā)人員的偏好

開發(fā)工具面向開發(fā)人員,開發(fā)人員是這些工具的用戶。 不同的開發(fā)人員對工具有不同的偏好。  Pascal程序員通常喜歡Delphi / Kylix。  Windows C ++程序員將選擇C ++ Builder或Visual C ++。 不同平臺上的C ++程序員可能更喜歡GCC。  Smalltalk程序員只能考慮Visual Age Smalltalk; 諸如Turbo Lisp,Visual Fortran,Perl Builder等開發(fā)工具也被其他編程語言的程序員廣泛使用。  

如今,各種編程語言的功能相互集成在一起。 例如,Borland Delphi和C ++ Builder在語言上的功能差異很小。 除了對編程語言的偏愛外,不同操作系統(tǒng)的程序員還使用不同的工具:Solaris系統(tǒng)下的程序員使用CC編寫C ++ / C后臺程序,使用Perl編寫框架或測試腳本,以及使用TCL / TK編寫接口程序。 盡管這些工具也可以在Windows下使用,但是更多的程序員仍然可以選擇支持RAD的工具。 現(xiàn)在,人們普遍認識到趨勢:操作系統(tǒng)和編程語言的開發(fā)差異正在迅速消失。  XML有效解決了不同系統(tǒng)下數(shù)據(jù)統(tǒng)一表達的問題。 通過虛擬機,Java程序可以在不同的操作系統(tǒng)下執(zhí)行;  Microsoft的.NET框架可以使用C ++ / Basic / C#進行編程。  

平臺與語言之間的交互使得各種工具越來越關(guān)注通用標準的支持。  Sun的新Java XML開發(fā)工具包顯然支持Microsoft和IBM提出的SOAP規(guī)范,而Visual Studio.NET也明確支持Java語言(J#)。 盡管這僅僅是開始,但語言和平臺的集成是不可阻擋的趨勢:必須有更多的編譯器才能將其他語言編譯為Java字節(jié)碼,Visual Studio.NET勢必將程序編譯為其他操作 系統(tǒng)。  

但是,隨著技術(shù)的集成,差異將始終存在。  Microsoft引入了用于Internet應用程序的.NET框架,并且Windows和Visual Studio都進行了重大改進。 對于此框架,Visual Studio.NET甚至引入了一種新的編程語言C#,該語言具有Java語言的大多數(shù)特征,同時允許在固定的內(nèi)存區(qū)域中使用指針。  C#確實在設(shè)計上非常先進,但是由于Java 2缺乏廣泛的使用和安全特性,它是否能夠吸引大量的程序員仍然是未知的。 同時,C#中的許多功能(對象方法的修飾符等)都是Microsoft COM +規(guī)范在編程語言中的映射,這在將來移植操作系統(tǒng)平臺時會造成麻煩。  

除了開發(fā)人員的平臺特性和語言偏愛外,人員之間的合作模式還決定了工具的選擇。 自由軟件通常采用的跨區(qū)域開發(fā)模型非常適合使用CVS版本管理系統(tǒng)的開發(fā)工具。 但是,由于Visual Studio.NET將在開發(fā)和調(diào)試期間更改本地Windows注冊表,因此跨區(qū)域開發(fā)非常不便。  

當然,不能排除其他因素對開發(fā)工具的影響。 例如,行業(yè)特征和遺留該系統(tǒng)(舊版 系統(tǒng))對開發(fā)的影響也不容忽視:由于ITU-T規(guī)范的存在,電信行業(yè)的軟件開發(fā)無法用Java取代現(xiàn)有的C / C ++開發(fā)模型,因為 一般該軟件是如此之快。 但是,歸根結(jié)底,軟件開發(fā)總是由人們來完成和服務。 無論現(xiàn)在其他因素的影響有多大,未來的發(fā)展都將不可避免地由人們來決定。

開發(fā)武器1 PB集成,降低成本和提高效率

互聯(lián)網(wǎng)已經(jīng)從過去的“訪問為王”和“內(nèi)容為王”發(fā)展到如今的“應用為王”時代。 大量的應用程序軟件開發(fā)人員也將進入Web應用程序開發(fā)領(lǐng)域。 他們熟悉應用程序業(yè)務領(lǐng)域,熟悉傳統(tǒng)的C / S開發(fā)技能,但不一定熟悉HTML / javascript, 或3層體系結(jié)構(gòu)。 對于平臺和工具供應商而言,這是一個巨大的商機。

PB的突然出現(xiàn)

現(xiàn)在阻礙Web應用程序和3層出現(xiàn)的是什么? 仍然是一種工具。 一個好的開發(fā)工具應該能夠在日常開發(fā)中屏蔽繁瑣的技術(shù)細節(jié),并允許高級開發(fā)人員直接干預這些技術(shù)細節(jié)。 在三層開發(fā)中,我們還將面臨數(shù)據(jù)庫操作(表,數(shù)據(jù)維護,存儲過程和觸發(fā)器維護等),組件編寫和調(diào)試, 網(wǎng)頁(尤其是調(diào)用這些組件的動態(tài)頁面)的許多任務,例如 例如編寫和調(diào)試以及維護某些2層應用程序。  

通常來說,需要多個工具來完成這些任務,并且在開發(fā)過程中必須在多個工具之間進行切換,從而導致開發(fā)效率低下并增加了開發(fā)難度。  PB8 / PJ4很好地解決了這些問題。 所有這些任務都可以在同一開發(fā)環(huán)境中完成。 開發(fā)人員可以快速編寫基于數(shù)據(jù)庫的業(yè)務邏輯組件以及調(diào)用這些組件的Web客戶端或PB客戶端。 特別是,Sybase將2層ace Datawindow擴展到了HTML字段,這使得實現(xiàn)數(shù)據(jù)庫驅(qū)動的動態(tài)頁面非常容易。  
通常,Sybase的優(yōu)勢在于它具有開發(fā)企業(yè)信息系統(tǒng)所需的全套工具,包括系統(tǒng)分析和系統(tǒng)設(shè)計工具PowerDesigner,應用程序開發(fā)工具PowerBuilder和PowerJ,應用程序服務器EAServer(包括 Jaguar和PowerDynamo),數(shù)據(jù)庫自適應 服務器 企業(yè)(以及復制服務器等)。 因為這些工具是同一公司的產(chǎn)品,所以它們具有很好的互操作性。 同時,這些工具很好地支持標準。 例如,對于組件模型,EAServer同時支持COM,CORBA和J2EE,并且可以使用C / C ++和JAVA編寫各種組件。   它甚至支持直接以CORBA形式使用PowerBuilder。 寫組件。

負面意見

許多人提到了PB的許多缺點,例如與VB和Delphi相比的單調(diào)界面以及對Windows API的調(diào)用 能力差(PB本身不直接支持指針)等等。 但是,在某些情況下,這些問題可能會成為優(yōu)勢。 企業(yè)應用程序的核心在于數(shù)據(jù)訪問和業(yè)務邏輯。 接口的精美程度并不重要。 在企業(yè)應用程序中,良好的用戶界面設(shè)計是指符合用戶業(yè)務思維方式和業(yè)務流程的界面設(shè)計,而不是精美的界面設(shè)計。 如果不支持指針,它將大大提高程序的可靠性。 這些問題實際上源于PB產(chǎn)品的定位:不是作為通用開發(fā)工具,而是作為專用的企業(yè)信息系統(tǒng)開發(fā)工具。 在這個領(lǐng)域,PB / PoerJ確實是無與倫比的。  

在系統(tǒng)分析和設(shè)計工具領(lǐng)域,Rational Rose是經(jīng)常受到贊譽的工具。 但是,在實際的信息系統(tǒng)項目和應用軟件開發(fā)中,我們所面對的不是純粹的面向?qū)ο蟮沫h(huán)境,而是關(guān)系數(shù)據(jù)庫和面向?qū)ο蟮幕旌檄h(huán)境。 此外,用戶無一例外希望數(shù)據(jù)庫訪問具有最高的性能。

第三方工具

在Internet上,您可以找到大量的第三方工具來幫助您提高PowerBuilder應用程序的效率和質(zhì)量。 這是兩個示例:

您一定會理解Visual C / C ++與MFC之間的關(guān)系。 在C / S環(huán)境中,PowerBuilder也具有與其對應的PFC。 當然,兩者的水平是不同的。   MFC提供基礎(chǔ)程序包,而PFC提供更多數(shù)據(jù)庫應用程序高級包裝。  PFC的深入應用可以大大提高系統(tǒng)的開發(fā)效率和質(zhì)量。 進入3層世界,如果您使用PB來開發(fā)Component,那么也有一些不錯的庫,其中最著名的是EAF。 這些類庫的深入應用以及它們自己的類庫的形成是快速提高產(chǎn)品和項目的質(zhì)量和效率的捷徑。  

確保應用軟件的質(zhì)量對于很多人來說都是頭疼的問題。 首先讓我們看一些最基本的問題。 在單元測試領(lǐng)域,每個人都必須了解Java中的單元測試工具JUnit。   PB中還有一個名為PBUnit的相應工具。 您可以在開發(fā)過程中在PBUnit環(huán)境中編寫測試腳本,對對象重復執(zhí)行回歸測試,并自動記錄和分析測試結(jié)果。 對于經(jīng)常包含大量數(shù)據(jù)處理的PB應用程序,這非常有價值。

開發(fā)工具2 WebSphere Studio開放開發(fā)

IBM正在提供基于WebSphere Studio Workbench技術(shù)的一套新的電子商務應用程序開發(fā)工具。  WebSphere Studio Workbench是用于工具開發(fā)和集成的平臺。 這是IBM對開源Eclipse Project的增值實現(xiàn)。  WebSphere Studio Workbench提供了一組API,模型和框架,用于開發(fā)源代碼編輯器和其他用戶界面,以及為資源管理,調(diào)試和團隊編程而訪問公共服務。 該平臺實施現(xiàn)有標準,并提供擴展點以添加功能性組件和功能作為插件。  IBM 和獨立軟件供應商(ISV)正在開發(fā)插入該框架的工具。  

WebSphere Studio網(wǎng)站 Developer和WebSphere Studio Application Developer是IBM合并和擴展的WebSphere Studio Workbench的兩個產(chǎn)品產(chǎn)品。 這些產(chǎn)品是計劃中的集成開發(fā)工具套件的一部分,該套件將涵蓋所有電子商務開發(fā)角色,從Web開發(fā)人員到Java開發(fā)人員,再到業(yè)務分析人員,再到設(shè)計人員,再到企業(yè)程序員。 更多產(chǎn)品將添加到WebSphere Studio開發(fā)工具系列。  

客戶需要開放的標準,工具集成,更大的靈活性以及集成到現(xiàn)有應用程序中的能力。 這些只是WebSphere Studio產(chǎn)品套件提供的一些優(yōu)勢。

縱向和橫向集成

傳統(tǒng)上,軟件供應商提供垂直工具來迫使客戶進行自身集成。  WebSphere Studio Workbench的目的是提供IBM和ISV都可以輕松擴展的平臺。 供應商已經(jīng)掌握了這項技術(shù),并在此基礎(chǔ)上積極構(gòu)建工具。  

每個在Workbench上構(gòu)建的WebSphere Studio產(chǎn)品都將提供集成的工具,使您無需集成工具即可專注于構(gòu)建應用程序。  
開放標準

WebSphere Studio套件中的所有產(chǎn)品都是基于開放標準構(gòu)建的,它們生成的代碼也與開放標準一致。 可以構(gòu)建和部署滿足Servlets 2.2,JavaServer Pages(JSP)1.1和Enterprise JavaBEAns(EJB)1.1規(guī)范的最新(最先進的)服務器端應用程序(在 站點 Developer產(chǎn)品將不包括EJB開發(fā)工具。)在WebSphere Studio Workbench上構(gòu)建的所有產(chǎn)品都包括CVS(并行版本系統(tǒng))。


基于角色的開發(fā)

WebSphere Studio產(chǎn)品系列的每個成員都是為特殊的電子商務開發(fā)角色或特定角色范圍設(shè)計的。 例如,Site Developer專為開發(fā)和管理整個網(wǎng)站的Web開發(fā)人員而設(shè)計。  Application Developer包括Site Developer的所有功能,并增加了對從事業(yè)務邏輯(包括EJB)工作的程序員的支持。 當IBM提供WebSphere Studio系列的未來成員時,它將擴展其選擇范圍,以使產(chǎn)品符合用戶的角色和需求。  

在每個WebSphere Studio解決方案中,面向任務的視圖過濾掉復雜性,僅提供與手頭任務相關(guān)的功能。 用戶根據(jù)當前正在開發(fā)或分析的內(nèi)容或基于其在項目中的角色來切換視圖。 由于不同的開發(fā)人員以不同的方式工作,因此可以自定義視圖。 因為它們是使用WebSphere Studio Workbench技術(shù)構(gòu)建的,所以所有工具和視圖都具有相同的外觀,從而減少了學習難度并最大程度地提高了用戶生產(chǎn)力。 而且,由于項目的開發(fā)資源存儲在單個資源庫中,因此您可以獲得最大的可共享性和對項目的一致團隊支持。


最大的編程性能

除了使應用程序開發(fā)人員從工具集成的任務中解放出來,Site Developer和Application Developer還通過多種方式優(yōu)化了程序,從而提高了工作人員的生產(chǎn)率。

開發(fā)工具3 Microsoft .NET和C#

Microsoft現(xiàn)在將希望寄托在新的.NET應用程序框架上。 盡管.NET中幾乎可以使用任何編程語言,但開發(fā)人員都更熱衷于Microsoft C#和C ++。 因為它們已經(jīng)將幾乎所有Windows開發(fā)規(guī)則從桌面軟件更改為具有Web功能的企業(yè)解決方案,所以這些技術(shù)的潛力巨大。  

.NET Framework通過使用C#擴展Windows的功能,C#和Visual Studio .NET的組合使Web服務的創(chuàng)建和配置幾乎自動化。 并且,與傳統(tǒng)的ASP應用程序相比,ASP.NET應用程序在性能,穩(wěn)定性和可伸縮性方面都有實質(zhì)性的改進。  

盡管有很多優(yōu)點,但.NET昂貴。 如果當前的Windows開發(fā)人員想要切換到.NET框架,則必須對其進行重新培訓,并且成本很高。 由于.NET框架中有許多重大更改和復雜性增加,當前的VB程序員將無法應對這些更改。  C ++程序員會很高興,因為C#繼承了他們熟悉的語言的基本內(nèi)容,但是他們還會發(fā)現(xiàn)C#在API和語言方面仍然有很大的變化。  

在ASP.NET中,不再使用VBScript,而僅使用JScript,并且系統(tǒng)服務中不再提倡使用COM(Component Object Model)。 一些Web應用程序已轉(zhuǎn)換為ASP.NET,并且重寫程序代碼需要大量時間和精力。 如果要將現(xiàn)有的Java項目轉(zhuǎn)移到.NET框架,即使您正在使用J#(Microsoft的Java開發(fā)語言),也將花費至少幾個月的時間來完成項目的遷移。 如果要將服務器從Unix平臺遷移到Windows,則所有IT員工都必須掌握一項新技術(shù)就顯得尤為重要。




綜合以上因素,很容易理解為什么.NET和C#會引起人們的關(guān)注和擔憂。 當然,對于已經(jīng)在Windows平臺下進行開發(fā)的公司和企業(yè),這不是是否接受.NET的問題,而是何時接受的問題。 普遍的觀點是,如果不能及時實現(xiàn)向.NET的遷移,最終將無法承受來自開發(fā)人員,業(yè)務合作伙伴,應用程序提供商和工具提供商的壓力。

當然,相對于Java,Unix和Linux支持者的挑戰(zhàn),Microsoft希望打開Windows開發(fā)人員被.NET框架所吸引。 在與Java和J2EE的競爭中,Microsoft有兩個主要的玩法,分別是Visual Studio .NET和Web服務。  Visual Studio .NET IDE(集成開發(fā)環(huán)境)的beta版引起了開發(fā)人員的極大轟動。 我相信,在Web服務領(lǐng)域與Java競爭時,它將成為Microsoft的武器。 

開發(fā)工具4 Love Delphi 6
Delphi 6是一種快速開發(fā)工具,它完全支持當前Windows平臺上的最新Web服務。 企業(yè)級用戶或個人開發(fā)人員都可以使用Delphi 6輕松快速地構(gòu)建新一代的電子商務應用程序。  Delphi 6在哪里出色?


高效開發(fā)
Delphi 6是RAD(快速應用程序開發(fā))。 它具有可視化的開發(fā)環(huán)境,當然還有許多具有類似功能的開發(fā)工具(例如Visual Basic),但是Delphi 6具有以下獨特功能:

Delphi 6確實是面向?qū)ο蟮摹?它所構(gòu)建的VCL庫中的所有組件都可以繼承以創(chuàng)建新組件,包括表單類TForm。 相反,ActiveX組件缺乏這種靈活性。  

Delphi 6的CodeInsight技術(shù)(即代碼自動完成功能)基于編譯器信息,而VB使用類型庫信息。 使用編譯器信息的優(yōu)點是更加靈活。 但是,程序員經(jīng)常抱怨Delphi 6的代碼提示時間太長。  

高效編譯
可以說Delphi 6是Windows平臺上最快的高級語言本機代碼編譯器。 快速編譯有什么好處? 快速編譯器使您可以經(jīng)常在代碼修改和編譯狀態(tài)與運行狀態(tài)之間切換。 至少,我非常習慣這種工作方式:運行程序以查看效果,退出程序并修改少量代碼。運行程序。  Delphi 6編譯器從未讓我感到等待。

高效執(zhí)行
Delphi 6和C ++ Builder使用相同的后端優(yōu)化器,因此其代碼生成效率可與出色的C ++編譯器相媲美。 相同。  

Delphi 6生成完全本機代碼,因此由Delphi 6編譯的可執(zhí)行文件可以獨立執(zhí)行和分發(fā)(這對于開發(fā)“綠色軟件”非常重要)。 不需要其他運行時支持。 當然,您也可以選擇動態(tài)鏈接編譯,這可以大大減少可執(zhí)行文件的長度,但是在這種情況下,分發(fā)程序時,還必須分發(fā)必要的運行時文件。

構(gòu)建Windows / Linux應用程序

Delphi 6 與Kylix兼容。 使用Kylix,您可以在Linux平臺上基于Windows平臺重新編譯CLX應用程序。 使用Delphi 6,您可以在Windows上基于CLX組件重新編譯Linux應用程序。  Delphi 6包含四個組件:BaseCLX,VisualCLX,DataCLX和NetCLX。


與AppServer集成

Delphi 6通過最新的SIDL與AppServer連接。 它為AppServer應用程序開發(fā)了具有豐富GUI環(huán)境的高性能客戶端應用程序,并通過Internet將AppServer的EJB功能作為行業(yè)標準SOAP / XML Web服務發(fā)布給全世界。 

如今,在編輯器

之后,各種開發(fā)工具的功能相互重疊。 大型綜合工具幾乎總是可以被其他幾種工具使用。 代替。 工具的選擇確實非常令人困惑,但是開發(fā)人員和管理人員都應意識到工具只能起到輔助作用。 嚴格的軟件工程管理和開發(fā)人員的技術(shù)水平是成功開發(fā)軟件的關(guān)鍵。  。 成功的發(fā)展加上有效的管理和市場運作可以建立成一個完整的成功軟件。

開發(fā)工具的競爭

沒有人會軟件開發(fā)人員不知道Microsoft的.NET和Sun的J2EE。 盡管兩者提供的方法不同,但是它們都有許多出色的功能。  

兩者的便攜性都很好。  .NET的核心只能在Windows環(huán)境中工作,但理論上它可以支持多語言開發(fā)? 只要已經(jīng)定義了這些語言的子集,并為它們構(gòu)建了IL編譯器。 對于J2EE,只要遵循Java VM? 規(guī)則? 以及平臺所需的一組服務,它可以在任何平臺上工作。 因為定義J2EE平臺的所有規(guī)范已經(jīng)向公眾宣布,所以許多供應商還提供兼容的產(chǎn)品和開發(fā)環(huán)境。  

.NET并不是一個好兆頭,而是Microsoft戰(zhàn)略的重大轉(zhuǎn)變,這將為其操作系統(tǒng)平臺帶來更大的支持。 現(xiàn)在,他們正在努力逐步開放Java和開源自己的獨特語言,然后直接實現(xiàn)滿足開發(fā)人員的需求。  Java消除了平臺的障礙。 但是,為了使用J2EE進行開發(fā)工作,用戶必須在Java環(huán)境中工作。  .Net希望用戶以他們選擇的語言來構(gòu)建.NET應用程序,這非常好。  

對于Microsoft開發(fā)人員來說,.NET是一個很好的框架,用戶可以將許多事情留給Microsoft的體系結(jié)構(gòu)。  ASP.NET優(yōu)于ASP,ADO.NET優(yōu)于ADO和DCOM,C#優(yōu)于C和C ++。 因此,如果您目前正在Microsoft開發(fā)框架中從事開發(fā)工作,那么將.NET組件合并到您的體系結(jié)構(gòu)中顯然是一個明智的選擇。 但是,盡管.NET平臺描繪了一個美麗的藍圖,但要使其所有設(shè)計變?yōu)楝F(xiàn)實,還有很長的路要走。 例如,IL公共語言的操作要克服一些明顯的障礙。 為了集成每種語言和組件運行時,必須定義該語言的子集/超集,并將其清晰地映射到IL。 另外,必須定義該結(jié)構(gòu)以提供IL所需的元數(shù)據(jù); 開發(fā)適用于兩種已編譯語言結(jié)構(gòu)的編譯器,并將其集成到IL組件的字節(jié)碼中; 與此同時,生成現(xiàn)有IL組件的特定于語言的接口。  

由于歷史原因,在Java語言中使用非Java語言需要從非Java語言到JavaVM的許多轉(zhuǎn)換器的開發(fā)。 因此,要在Java環(huán)境中編寫代碼,必須承擔添加到目標體系結(jié)構(gòu)的其他翻譯工作。 如果以Java環(huán)境為目標,人們通常會選擇學習Java。 如果目標環(huán)境是.NET,那么人們將選擇學習C#。

64位軟件開發(fā)

因為64位系統(tǒng)在內(nèi)存容量,I / O處理效率等方面比32位系統(tǒng)具有無與倫比的優(yōu)勢,所以 在應用程序方面,Sun,IBM和HP等知名公司一直熱衷于64位系統(tǒng)。 可以預見,在不久的將來,英特爾的64位處理器將成為Sparc的主要競爭對手。  

但是,由于Linux和Windows中的主要應用程序是32位的,因此軟件供應商和免費軟件項目必須為64位系統(tǒng)重寫其應用程序。 幸運的是,由于Java的盛行和.NET的出現(xiàn),這將使應用程序到Itanium的移植非常快。  IBM已經(jīng)發(fā)布了用于Itanium的Java SDK(軟件開發(fā)套件)。 此外,發(fā)布.NET Server時,Microsoft的.NET框架也將在Itanium上可用。   Borland已使其Java開發(fā)工具和服務器在Itanium上運行。


返回列表

服務熱線:4006068008 0531-85860101 15589999555郵箱:zlxk@zlxk.com地址:山東省濟南市高新區(qū)鑫盛大廈2號樓24層

Copyright 2023,ALL Rights Reserved zlxk.com | | (c) Copyright 2024版權(quán)所有 魯ICP備20032954號-1網(wǎng)站地圖