1. 程式人生 > >資訊學奧林匹克競賽-程式語言

資訊學奧林匹克競賽-程式語言

主流程式語言簡介

 計算機語言的種類非常的多,總的來說可以分成 機器語言,組合語言,高階語言 三大類。

機器語言:是直接用二進位制程式碼指令表達的計算機語言,指令是用0和1組成的一串程式碼,它們有一定的位數,並分成若干段,各段的編碼表示不同的含義,例如某臺計算機字長為16位,即有16個二進位制陣列成一條指令或其它資訊。16個0和1可組成各種排列組合,通過線路變成電訊號,讓計算機執行各種不同的操作。
(詳細的東西不在這深入了,這種語言不是一般人在用,優點是顯而易見的,同樣缺點也是。)
機器語言是用二進位制程式碼表示的計算機能直接識別和執行的一種機器指令的集合。它是計算機的設計者通過計算機的硬體結構賦予計算機的操作功能。機器語言具有靈活、直接執行和速度快等特點。
    一條指令就是機器語言的一個語句,它是一組有意義的二進位制程式碼,指令的基本格式如:操作碼欄位地址碼欄位其中操作碼指明瞭指令的操作性質及功能,地址碼則給出了運算元或運算元的地址。
    用機器語言編寫程式,程式設計人員要首先熟記所用計算機的全部指令程式碼和程式碼的涵義。手程式設計序時,程式設計師得自己處理每條指令和每一資料的儲存分配和輸入輸出,還得記住程式設計過程中每步所使用的工作單元處在何種狀態。這是一件十分繁瑣的工作,編寫程式花費的時間往往是實際執行時間的幾十倍或幾百倍。而且,編出的程式全是些0和1的指令程式碼,直觀性差,還容易出錯。現在,除了計算機生產廠家的專業人員外,絕大多數的程式設計師已經不再去學習機器語言了。
 
電腦每做的一次動作,一個步驟,都是按照已經用計算機語言編好的程式來執行的,程式是計算機要執行的指令的集合,而程式全部都是用我們所掌握的語言來編寫的。所以人們要控制計算機一定要通過計算機語言向計算機發出命令。
 
目前通用的程式語言有兩種形式:組合語言和高階語言。
 
組合語言:的實質和機器語言是相同的,都是直接對硬體操作,只不過指令採用了英文縮寫的識別符號,更容易識別和記憶。它同樣需要程式設計者將每一步具體的操作用命令的形式寫出來。彙編程式通常由三部分組成:指令、偽指令和巨集指令。彙編程式的每一句指令只能對應實際操作過程中的一個很細微的動作,例如移動、自增,因此彙編源程式一般比較冗長、複雜、容易出錯,而且使用匯編語言程式設計需要有更多的計算機專業知識,但組合語言的優點也是顯而易見的,用匯編語言所能完成的操作不是一般高階語言所能實現的,而且源程式經彙編生成的可執行檔案不僅比較小,而且執行速度很快。
(因為本質跟機器語言一樣,所以建議:從高階語言入門,比如C語言。組合語言主要是用於底層開發,需要你對計算機或微控制器或嵌入式系統都要有比較深的瞭解,根據它們的實際需求來進行開發才行,更有難度一些。)好了不羅嗦了,下面開始高階語言的介紹。
 
高階語言:是目前絕大多數程式設計者的選擇。和組合語言相比,它不但將許多相關的機器指令合成為單條指令,並且去掉了與具體操作有關但與完成工作無關的細節,例如使用堆疊、暫存器等,這樣就大大簡化了程式中的指令。同時,由於省略了很多細節,程式設計者也就不需要有太多的專業知識。
    高階語言主要是相對於組合語言而言,它並不是特指某一種具體的語言,而是包括了很多程式語言,如目前流行的VB、C、C++、C#、Java、Delphi等,這些語言的語法、命令格式都各不相同。像最簡單的程式語言PASCAL語言也屬於高階語言。


    高階語言所編制的程式不能直接被計算機識別,必須經過轉換才能被執行.
按轉換方式可將它們分為兩類:
    解釋類:執行方式類似於我們日常生活中的“同聲翻譯”,應用程式原始碼一邊由相應語言的直譯器“翻譯”成目的碼(機器語言),一邊執行,因此效率比較低,而且不能生成可獨立執行的可執行檔案,應用程式不能脫離其直譯器,但這種方式比較靈活,可以動態地調整、修改應用程式。如較早時期的Qbasic語言。
    編譯類:編譯是指在應用源程式執行之前,就將程式原始碼“翻譯”成目的碼(機器語言),因此其目標程式可以脫離其語言環境獨立執行,使用比較方便、效率較高。但應用程式一旦需要修改,必須先修改原始碼,再重新編譯生成新的目標檔案(* .OBJ)才能執行,只有目標檔案而沒有原始碼,修改很不方便。現在大多數的程式語言都是編譯型的,例如C/C++、Delphi等。
(高階語言有很多種,而組合語言只有一種,呵呵。)
 
【個人建議:新手從C語言學起,選一種學起就行,語言一通百通,只是語法有差異。】
 
指令碼語言簡介
 
指令碼語言(Script language,scripting language,scripting programming language)是為了縮短傳統的編寫-編譯-連結-執行(edit-compile-link-run)過程而建立的計算機程式語言。
此命名起源於一個指令碼“screenplay”,每次執行都會使對話方塊逐字重複。
    早期的指令碼語言經常被稱為批量處理語言或工作控制語言。一個指令碼通常是解釋執行而非編譯。
    雖然許多指令碼語言都超越了計算機簡單任務自動化的領域,成熟到可以編寫精巧的程式,但仍然還是被稱為指令碼。幾乎所有計算機系統的各個層次都有一種指令碼語言。包括作業系統層,如計算機遊戲,網路應用程式,字處理文件,網路軟體等。在許多方面,高階程式語言和指令碼語言之間互相交叉,二者之間沒有明確的界限。
    指令碼程式設計速度更快,且指令碼檔案明顯小於如同類C程式檔案。這種靈活性是以執行效率為代價的。指令碼通常是解釋執行的,速度可能很慢,且執行時更耗記憶體。在很多案例中,如編寫一些數十行的小指令碼,它所帶來的編寫優勢就遠遠超過了執行時的劣勢,尤其是在當前程式設計師工資趨高和硬體成本趨低時。
    指令碼語言是一種解釋性的語言,例如Python、vbscript,javascript,installshield script,ActionScript等等,它不像c/c++等可以編譯成二進位制程式碼,以可執行檔案的形式存在。
 
 
Basic語言& Visual Basic


   優點
⑴Basic 簡單易學,很容易上手。
⑵Visual Basic 提供了強大的視覺化程式設計能力,可以讓你輕鬆地做出漂亮的程式。
⑶眾多的控制元件讓程式設計變得象壘積木一樣簡單。
⑷Visual Basic 的全部漢化讓我們這些見了English就頭大的人喜不自禁。
   缺點
⑴Visual Basic 不是真正的面向物件的開發文具。
⑵Visual Basic 的資料型別太少,而且不支援指標,這使得它的表達能力很有限。
⑶Visual Basic 不是真正的編譯型語言,它產生的最終程式碼不是可執行的,是一種虛擬碼。它需要一個動態連結庫去解釋執行,這使得Visual Basic 的編譯速度大大變慢。(Visual Basic 5以及以前的版本產生的程式碼是虛擬碼,Visual Basic 6 編譯出來的程式碼是真正的可執行程式碼。)
綜述:適合初涉程式設計的朋友,它對學習者的要求不高,幾乎每個人都可以在一個比較短的時間裡學會VB程式設計,並用VB 做出自己的作品。對於那些把程式設計當做遊戲的朋友來說,VB 是您最佳的選擇。
 
Pascal語言& Delphi
優點
⑴Pascal語言結構嚴謹,可以很好地培養一個人的程式設計思想。
⑵Delphi是一個真正的面向物件的開發工具,並且是完全的視覺化。
⑶Delphi使用了真編譯,可以讓你的程式碼編譯成為可執行的檔案,而且編譯速度非常快。
⑷Delphi具有強大的資料庫開發能力,可以讓你輕鬆地開發資料庫。
    缺點
⑴Delphi幾乎可以說是完美的,只是Pascal語言的過於嚴謹讓人感覺有點煩。
    綜述:比較適合那些具有一定程式設計基礎並且學過Pascal語言的朋友。
 
C語言 & Visual C++
 
優點
⑴C語言靈活性好,效率高,可以接觸到軟體開發比較底層的東西。
⑵微軟的MFC庫博大精深,學會它可以讓隨心所欲地進行程式設計。
⑶VC是微軟製作的產品,與作業系統的結合更加緊密。
    缺點
⑴對使用者的要求比較高,既要具備豐富的C語言程式設計經驗,又要具有一定的WINDOWS程式設計基礎,它的過於專業使得一般的程式設計愛好者學習起來會有不小的困難。
    綜述:VC是程式設計師用的東西。如果你是一個永不滿足的人,而且可以在程式設計上投入很大的精力和時間,那麼學習VC你一定不會後悔的。
 
C++語言 & C++ Builder
 
優點
⑴繼承了C語言的全部優點。
⑵完全的視覺化。
⑶極強的相容性,支援OWL、VCL和MFC三大類庫。
⑷編譯速度非常快。
    缺點
⑴由於推出的時間太短,關於它的各種資料還不太多。
    綜述:C++ Builder既保持了C語言程式設計的優點,又做到了完全的視覺化。
 
JAVA語言
一. Java的由來
當1995年SUN推出Java語言之後,全世界的目光都被這個神奇的語言所吸引。那麼Java到底有何神奇之處呢?
Java語言其實最是誕生於1991年,起初被稱為OAK語言,是SUN公司為一些消費性電子產品而設計的一個通用環境。他們最初的目的只是為了開發一種獨立於平臺的軟體技術,而且在網路出現之前,OAK可以說是默默無聞,甚至差點夭折。但是,網路的出現改變了OAK的命運。
在Java出現以前。Internet上的資訊內容都是一些乏味死板的HTML文件。這對於那些迷戀於WEB瀏覽的人們來說簡直不可容忍。他們迫切希望能在WEB中看到一些互動式的內容,開發人員也極希望能夠在WEB上建立一類無需考慮軟硬體平臺就可以執行的應用程式,當然這些程式還要有極大的安全保障。對於使用者的這種要求,傳統的程式語言顯得無能為力,而SUN的工程師敏銳地察覺到了這一點,從1994年起,他們開始將OAK技術應用於WEB上,並且開發出了HotJava的第一個版本。當SUN公司1995年正式以Java這個名字推出的時候,幾乎所有的WEB開發人員都想到:噢,這正是我想要的。於是Java成了一顆耀眼的明星,醜小鴨一下了變成了白天鵝。
二. Java的定義
Java是一種簡單的,面向物件的,分散式的,解釋的,健壯的,安全的,結構的中立的,可移植的,效能很優異的多執行緒的,動態的語言。
Java的開發環境有不同的版本,如sun公司的Java Developers Kit, 簡稱 JDK。後來微軟公司推出了支援Java規範的Microsoft Visual J++ Java開發環境,簡稱 VJ++。
三. Java的特點
⒈ 平臺無關性
平臺無關性是指Java能運行於不同的平臺。Java引進虛擬機器原理,並運行於虛擬機器,實現不同平臺的Java介面之間,使用Java編寫的程式能在世界範圍內共享。Java的資料型別與機器無關,Java虛擬機器(Java Virtual Machine)是建立在硬體和作業系統之上,實現Java二進位制程式碼的解釋執行功能,提供於不同平臺的介面的。
⒉ 安全性
Java的程式設計類似C++,學習過C++的讀者將很快掌握Java的精髓。Java捨棄了C++的指標對儲存器地址的直接操作,程式執行時,記憶體由作業系統分配,這樣可以避免病毒通過指標侵入系統。Java對程式提供了安全管理器,防止程式的非法訪問。
⒊ 面向物件
Java 吸取了C++面向物件的概念,將資料封裝於類中,利用類的優點,實現了程式的簡潔性和便於維護性。類的封裝性、繼承性等有關物件的特性,使程式程式碼只需一次編譯,然後通過上述特性反覆利用。程式設計師只需把主要精力用在類和介面的設計和應用上。Java 提供了眾多的一般物件的類,通過繼承即可使用父類的方法。在 Java 中,類的繼承關係是單一的非多重的,一個子類只有一個父類,子類的父類又有一個父類。Java 提供的 Object 類及其子類的繼承關係如同一棵倒立的樹形,根類為Object 類,Object 類功能強大,經常會使用到它及其它派生的子類。
⒋ 分散式
Java建立在擴充套件TCP/IP網路平臺上。庫函式提供了用HTTP和FTP協議傳送和接受資訊的方法。這使得程式設計師使用網路上的檔案和使用本機檔案一樣容易。
⒌ 健壯性
Java致力於檢查程式在編譯和執行時的錯誤。型別檢查幫助檢查出許多開發早期出現的錯誤。Java自己操縱記憶體減少了記憶體出錯的可能性。Java還實現了真陣列,避免了覆蓋資料的可能。這些功能特徵大大提高了開發Java應用程式的週期。Java提供:Null指標檢測、陣列邊界檢測、異常出口、 Byte code校驗。
四. Java與C/C++語言區別
Java提供了一個功能強大語言的所有功能,但幾乎沒有一點含混特徵。C++安全性不好,但C和C++被大家接受,所以Java設計成C++形式,讓大家很容易學習。
Java去掉了C++語言的許多功能,讓Java的語言功能很精煉,並增加了一些很有用的功能,如自動收集碎片。
Java去掉了以下幾個C和C++功能:
⒈指標運算
⒉結構
⒊typedefs
⒋#define
⒌需要釋放記憶體
這將減少了平常出錯的50%。而且,Java很小,整個直譯器只需215K的RAM。
面向物件:Java實現了C++的基本面向物件技術並有一些增強,(為了語言簡單,刪除了一些功能)。Java處理資料方式和用物件介面處理物件資料方式一樣。
五. Java與Internet
我們知道,早先的 www 僅可以傳送文字和圖片,Java的出現實現了互動的頁面,是一次偉大的革命。
Java並不是為 Internet,WWW而設計的,它也可以用來編寫獨立的應用程式。Java 是一種面嚮物件語言。Java 語言類似於 C++ 語言,所以已熟練掌握 C++語言的程式設計人員,再學習 Java 語言就容易得多!Java 程式需要編譯。實際上有兩種 Java 程式:一種 Java 應用程式是一個完整的程式,如 Web 瀏覽器。一種 Java 小應用程式是運行於 Web 瀏覽器中的一個程式。
Java程式和它的瀏覽器HotJava,提供了可讓你的瀏覽器執行程式的方法。你能從你的瀏覽器裡直接播放聲音。你還能播放頁面裡的動畫。Java還能告訴你的瀏覽器怎樣處理新的型別檔案。當我們能在2400 baud線上傳輸視訊圖象時,HotJava將能顯示這些視訊。
當今Internet的一大發展趨勢是電子商務,而Internet的安全問題是必須解決的問題,通常大的部門應設定防火牆,阻止非法侵入。
電子商務是當今的熱門話題,然而傳統的程式語言難以勝任電子商務系統,電子商務要求程式程式碼具有基本的要求:安全、可靠、同時要求能與運行於不同平臺的機器的全世界客戶開展業務。Java以其強安全性、平臺無關性、硬體結構無關性、語言簡潔同時面向物件,在網路程式語言中佔據無可比擬的優勢,成為實現電子商務系統的首選語言。
Java程式被放置在Internet伺服器上,當用戶訪問伺服器時,Java程式被下載到本地的使用者機上,由瀏覽器解釋執行。
 
 
C sharp語言,C# (音標 [∫a:p])
是微軟公司在2000年6月釋出的一種新的程式語言,並定於在微軟職業開發者論壇(PDC)上登臺亮相。C#是微軟公司研究員Anders Hejlsberg的最新成果。C#看起來與Java有著驚人的相似;它包括了諸如單一繼承、介面、與Java幾乎同樣的語法,和編譯成中間程式碼再執行的過程。但是C#與Java有著明顯的不同,它借鑑了Delphi的一個特點,與COM(元件物件模型)是直接整合的,而且它是微軟公司.NET windows網路框架的主角。
 
 
Objective-C語言
object-c通常寫作objective-c或者obj-c,是根據C語言所衍生出來的語言,繼承了C語言的特性,是擴充C的面向物件程式語言。它主要使用於Mac OS X和GNUstep這兩個使用OpenStep標準的系統,而在NeXTSTEP和OpenStep中它更是基本語言。Objective-C可以在gcc運作的系統寫和編譯,因為gcc含Objective-C的編譯器。
在MAC OSX系統下,運用蘋果提供的SDK等開發工具包,可以用來做IOS開發,開發後的程式在Iphone虛擬機器中進行測試,運用的主要語言為Object-c。與C#類似。Object-c僅支援單一父類繼承,不支援多重繼承。
Objective-C是外部開發者針對iOS裝置所使用的目標程式語言。該語言創建於1983年,C++語言也是在同一年得以建立。此後多年中,C++語言的受追捧程度一直高於Objective-C。直到1988年,Objective-C語言的後續發展命運才得以改變:蘋果聯合創始人史蒂夫·喬布斯(Steve Jobs)為NeXT(注:喬布斯1985年被蘋果董事會驅逐後所建立的另一家科技公司,後來NeXT被蘋果收購,喬布斯由此重返蘋果)申請了Objective-C許可。在2009年之前,Objective-C語言所佔份額尚不到1%。2009年以後,由於iPhone智慧手機和iPad平板電腦受到全球消費者追捧,針對iOS的Objective-C語言也由此迎來了其高增長期。
Objective-C語言主要應用於移動開發當中。
 
 
 
易語言
特色:第一個中國人自己打造的程式語言! 
★全中文支援,無需跨越英語門檻。
★全視覺化程式設計,支援所見即所得程式介面設計和程式流程編碼。
★中文語句快速錄入。提供多種內嵌專用輸入法,徹底解決中文語句輸入速度慢的問題。
★程式碼即文件。自動規範強制程式碼格式轉換,任何人編寫的任何程式原始碼格式均統一。
 
SQL語言簡介
    SQL全稱是“結構化查詢語言(Structured Query Language)”,最早的是IBM的聖約瑟研究實驗室為其關係資料庫管理系統SYSTEM R開發的一種查詢語言,它的前身是SQUARE語言。SQL語言結構簡潔,功能強大,簡單易學,所以自從IBM公司1981年推出以來,SQL語言,得到了廣泛的應用。如今無論是像Oracle,Sybase,Informix,SQL server這些大型的資料庫管理系統,還是像Visual Foxporo,PowerBuilder這些微機上常用的資料庫開發系統,都支援SQL語言作為查詢語言。
Structured Query Language包含4個部分:
資料查詢語言DQL-Data Query Language SELECT
資料操縱語言DML-Data Manipulation Language INSERT,UPDATE,DELETE
資料定義語言DDL-Data Definition Language CREATE,ALTER,DROP
資料控制語言DCL-Data Control Language COMMIT WORK,ROLLBACK WORK
    2.SQL的歷史
    在70年代初,E.E.Codd首先提出了關係模型。70年代中期,IBM公司在研製 SYSTEM R關係資料庫管理系統中研製了SQL語言,最早的SQL語言(叫SEQUEL2)是在1976 年 11 月的IBM Journal of R&D上公佈的。
1979年ORACLE公司首先提供商用的SQL,IBM公司在DB2 和SQL/DS資料庫系統中也實現了SQL。
1986年10月,美國ANSI採用SQL作為關係資料庫管理系統的標準語言(ANSI X3. 135-1986),後為國際標準化組織(ISO)採納為國際標準。
1989年,美國ANSI採納在ANSI X3.135-1989報告中定義的關係資料庫管理系統的SQL標準語言,稱為ANSI SQL 89, 該標準替代ANSI X3.135-1986版本。該標準為下列組織所採納:
● 國際標準化組織(ISO),為ISO 9075-1989報告“Database Language SQL With Integrity Enhancement”
● 美國聯邦政府,釋出在The Federal Information Processing Standard Publication(FIPS PUB)127
目前,所有主要的關係資料庫管理系統支援某些形式的SQL語言, 大部分資料庫打算遵守ANSI SQL89標準。
SQL的優點
SQL廣泛地被採用正說明了它的優點。它使全部使用者,包括應用程式設計師、DBA管理員和終端使用者受益匪淺。
⑴ 非過程化語言
SQL是一個非過程化的語言,因為它一次處理一個記錄,對資料提供自動導航。SQL允許使用者在高層的資料結構上工作,而不對單個記錄進行操作,可操作記錄集。所有SQL 語句接受集合作為輸入,返回集合作為輸出。SQL的集合特性允許一條SQL語句的結果作為另一條SQL語句的輸入。SQL不要求使用者指定對資料的存放方法。這種特性使使用者更易集中精力於要得到的結果。所有SQL語句使用查詢優化器,它是RDBMS的一部分,由它決定對指定資料存取的最快速度的手段。查詢優化器知道存在什麼索引,哪兒使用合適,而使用者從不需要知道表是否有索引,表有什麼型別的索引。
⑵ 統一的語言
SQL可用於所有使用者的DB活動模型,包括系統管理員、資料庫管理員、 應用程式設計師、決策支援系統人員及許多其它型別的終端使用者。基本的SQL 命令只需很少時間就能學會,最高階的命令在幾天內便可掌握。SQL為許多工提供了命令,包括:
● 查詢資料
● 在表中插入、修改和刪除記錄
● 建立、修改和刪除資料物件
● 控制對資料和資料物件的存取
● 保證資料庫一致性和完整性
以前的資料庫管理系統為上述各類操作提供單獨的語言,而SQL 將全部任務統一在一種語言中。
⑶ 是所有關係資料庫的公共語言
由於所有主要的關係資料庫管理系統都支援SQL語言,使用者可將使用SQL的技能從一個RDBMS轉到另一個。所有用SQL編寫的程式都是可以移植的。
 
PowerBuilder簡介
    PowerBuilder的產生
PowerBuilder是美國著名的資料庫應用開發工具生產廠商PowerSoft推出的成功產品,其第一版於1991年6月正式投入市場。它是完全按照客戶/伺服器體系結構研製設計的,採用面向物件技術,圖形化的應用開發環境,是資料庫的前端開發工具。
    PowerBuilder的特點
它支援應用系統同時訪問多種資料庫,其中既包括Oracle,Sybase之類的大型資料庫,又包括FOXPRO之類支援ODBC介面的小型資料庫,PowerBuilder是完全視覺化的資料庫開發工具,它提供了大量的控制元件,大大加快了專案的開發速度,也使開發者更容易掌握資料庫的開發。
它使用的程式語言叫做工PowerScripr,它也是一種高階的,結構化的程式語言。PowerScript提供了一套完整的嵌入式SQL語句,開發人員可以像使用其它語句一樣自由地使用SQL語言,這樣就大大增強了程式操縱和訪問資料庫的能力。可以說PowerBuilder既適合初學者快速學習資料庫的開發,又可以讓有經驗的開發人員開發出功能強大的資料庫,是一種適用面非常廣的開發工具。
PowerBuilder是一個用來進行客戶/伺服器開發的完全的視覺化開發環境。使用PowerBuilder,你可以用一種可視的直觀的方式來建立應用程式的使用者介面和資料庫介面。這是一個總的概念,實際上是開發人員使用PowerBuilder去開發應用程式,由於所開發的各種應用程式充分利用了圖形使用者介面(GUI)的優點,所以PowerBuilder被認為是一個圖形工具。
在客戶/伺服器結構的應用中,PowerBuilder具有描述多個數據庫連線與檢索的能力。特別是PowerBuilder能從大多數流行的RDBMS中存取資料,且不管資料存放在什麼地方;另外,各種應用程式又可以獨立於RDBMS,因為PowerBuilder可以使用資料庫的標準操作語言SQL(結構化查詢語言)進行。
使用PowerBuilder,可以很容易地開發出功能強大的圖形介面的訪問伺服器資料庫的應用程式,PowerBuilder提供了建立符合工業標準的應用程式(例如訂單登記、會計及製造系統)所需的所有工具。
PowerBuilder應用程式由視窗組成,這些視窗包含使用者與之互動的控制元件。開發人員可以使用所有標準空間(如按鈕、複選框、下拉式列表框或編輯框)以及PowerBuilder提供的特殊的使應用程式更易於開發和使用的控制元件。
通常人們把PowerBuilder看成是一種開發工具,實際上它比其他工具強得多,是一種強有力的開發環境。開發人員不僅能用它來開發使用者容易使用的各種應用程式還可以通過PowerBuilder修改資料庫,利用400多個內部定義函式,可以開發能和其他應用程式進行的各種應用程式。
PowerBuilder正在成為客戶/伺服器應用開發的標準。相對於其他任何客戶/伺服器開發環境,PowerBuilder使開發人員的工作更快、成本更低、質量更高、功能更強。
PowerBuilder為應用開發提供了全面綜合性的支援,可以分別概括為如下幾點:
    事件驅動的應用程式
    功能強大的程式語言與函式
    面向物件的程式設計
    跨平臺開發
    開放的資料庫連結系統
PowerBuilder開發環境
PowerBuilder開發環境由一系列整合的圖形畫板(Painter)組成,應用開發人員通過簡單的滑鼠操作即可設計、建立、互動檢驗和測試客戶/伺服器應用程式。
 
AWK語言二十世紀70年代Bells Labs創立了awk語言,它是一種用於處理大資料量強大的命令列語言.
BASH語言bash(Bourne-Again Shell)是一種專門為GNU作業系統服務的命令列語言.
Common Lisp語言Common Lisp,即為大家所熟知的CL,一種遵循ANSI-standard規範高效執行的程式語言.使用Common Lisp最好的地方是使用者可以根據應用領域選擇合適方法和範例.
 
Eiffel語言Eiffel是一種面向物件的語言.它演變自1985年,是世界上眾多最成熟的程式語言中的一種.在解決計算問題中,Eiffel程式碼是可讀的和可重用的.
Emacs Lisp語言一種計算機程式語言的變體,Emacs Lisp可以被任何其他的程式語言所使用.
 
Erlang語言Erlang是另外一種程式語言,通常分佈在網路環境中,被用於構建強大的系統程式,Erlang和Java類似.
Forth語言Forth是一種基於堆疊概念的高層次程式語言.它不依賴於變數的使用.這種語言幫助解決了一些程式設計中的老問題.
 
Icon語言Icon 是另外一種具有處理資料結構和字串特徵的高層次程式語言.Icon的執行速度比C語言還要快.它在程式設計師嘗試新想法,快速程式設計,文字處理,影象程式設計,處理大的資料型別方面很有作用.
Lisp語言在處理大資料量演算,解決方案,動態變化的問題,以及多種混雜資料的問題上,Lisp是一種理想的程式語言.它適合定位最具有挑戰性的問題.
Lua 語言Lua 是一種強大快速的指令碼語言.
Mercury語言它是一種將邏輯程式設計方式和功能程式設計方式聯合在一起的程式語言.Mercury在複雜的,嚴格型別風格的系統上執行.
PHP語言PHP是一種廣泛使用的程式語言.因為它所編寫的程式碼量小,越來越多的公司轉向PHP程式設計.
Perl語言由Larry Wall設計,Perl是最為廣泛使用的程式語言中的一種,Perl第一次被應用在文字編輯器上,但是現在也同web中的HTML一起使用了.
Pike語言Pike的語言和C以及Java類似.它是一種易學的語言,因為它不牽涉複雜的函式功能.
 
 
 
MATLAB簡介
MATLAB的基本資料單位是矩陣,它的指令表示式與數學、工程中常用的形式十分相似,故用MATLAB來解算問題要比用C,FORTRAN等語言完成相同的事情簡捷得多,並且MATLAB也吸收了像Maple等軟體的優點,使 MATLAB成為一個強大的數學軟體。在新的版本中也加入了對C,FORTRAN,C++,JAVA的支援。可以直接呼叫,使用者也可以將自己編寫的實用程式匯入到MATLAB函式庫中方便自己以後呼叫,此外許多的MATLAB愛好者都編寫了一些經典的程式,使用者可以直接進行下載就可以用。
MATLAB的發展
20世紀70年代,美國新墨西哥大學計算機科學系主任Cleve Moler為了減輕學生程式設計的負擔,用FORTRAN編寫了最早的MATLAB。1984年由Little、Moler、Steve Bangert合作成立了的MathWorks公司正式把MATLAB推向市場。到20世紀90年代,MATLAB已成為國際控制界的標準計算軟體。
程式設計創造的功能
 可用於技術計算的高階語言
    可對程式碼、檔案和資料進行管理的開發環境
    可以按迭代的方式探查、設計及求解問題的互動式工具
    可用於線性代數、統計、傅立葉分析、篩選、優化以及數值積分等的數學函式
    可用於視覺化資料的二維和三維圖形函式
    可用於構建自定義的圖形使用者介面的各種工具
    可將基於MATLAB的演算法與外部應用程式和語言(如C、C++、Fortran、Java、COM以及Microsoft Excel)整合的各種函式。