和中語言編程
無區別,只不過編譯器不一樣罷了。因為不同的cpu構架有不同的指令集。而嵌入式基本使用RISC結構的cpu,需要使用pc上的cpu編譯出在能嵌入式cpu上運行的二進製程序。這叫交叉編譯。pc上的程序不可以直接在其他cpu上運行,需要重新編譯。
因為編譯器不一樣,執行的c語言標准就跟編譯器相關。
管理內存映射,設置中斷系統等在pc上也有,不是嵌入式的專利。
只是做嵌入式里的界面、網路、文件編程的話,跟pc上幾乎沒有差別,因為有操作系統罩著。如果開發驅動程序,就要求你對所使用的cpu和板子的結構很了解,也就是看得懂硬體手冊即可。
另外嵌入式環境同pc的差別 如cpu位數、硬體資源緊缺等是需要程序員考慮的。
Ⅱ 什麼叫做編程語言啊
什麼語言其實並不重要
是的,你沒有看錯,學什麼語言其實並不重要。原因有很多,但其中最主要的是眾多編程語言的核心其實是非常相似的。也許他們語法不同,外觀不同,甚至功能也完全不同,但是核心層面的相似程度遠比你預料的高。幾乎所有的編程語言都會有分支、 循環、調用方法或過程以及代碼組織方式。有的甚至相似到你精通一門語言後就自然會了另一門語言,C# 和 java 都是很好的例子。JavaScript也與他們十分相似。
學習第一門語言總是最難的,一旦你掌握了一門語言,第二門就會容易很多,當你學會了兩門或者更多的語言,學習難度將呈指數級降低。如果你現在一門語言都不會,可能很難相信這些話,但是如果你已經學會了10門語言,我敢保證你會說前兩門語言是最難的。
這意味著如果你已經學了一門語言,卻發現這門語言並不適合你,或者找到另一份需要使用其他語言的工作,沒有關系,你已經度過了最艱難的日子,再學一門語言對你來說不是大事。
你也可能會發現,很多崗位—特別是在微軟和谷歌之類的大公司—是不需要你知道特定編程語言的。我也遇到過跟多這種情況,被要求使用最拿手的編程語言來解決某個特定的問題,沒有限制,不需要知道某種特定的語言,思想比語言更重要。
選擇編程語言需要考慮的問題
所以,我認為,首先學哪門語言並不重要。但是如果你仍然不知該如何選擇,那麼考慮下面幾個問題。
就業前景和未來
多於你們大多數來說,最需要考慮的是,選擇什麼樣的編程語言,能對我未來的工作有所幫助。現在,最流行的語言是能在相同時間內完成更多任務的語言。編程語言的人氣也同明星一樣,有升有降,如果你只關心工作的可用性,可能會慮主流的編程語言,在寫這篇文章的時候,這些都是主流的語言:
C#
Java
Ruby
JavaScript
C++
PHP
使用以上任何一種語言的職位都不在少數,這也就是說,如果你不願意搬遷的話,選擇哪種語言就取決於你所在的位置。例如,如果你住在阿肯色州的一個小鎮上,小鎮上只有一家軟體公司,他們所有的業務都使用Java,我就建議你學習Java,這是從非常現實的角度來考慮問題。不過我想你們中的大多數或許都願意外出闖盪,這種情況下你的選擇就取決於你的目標公司和崗位了,這需要自己去調查。
如果你想成為一個自由職業者,那麼我建議你學習偏門一點的,使用不是那麼廣泛的語言,這樣你面臨的競爭壓力會小很多。當然,一開始還是要堅持從主流語言學起。
除了就業前景,另一個需要考慮的問題是編程語言的未來。例如Objective-C就不是一個很好的選擇,因為大多數iOS開發者都已經切換到Swift,Swift才是蘋果大力投資的方向。如果你現在就是在使用Objective-C工作,也不用擔心,因為仍然有大量的遺留工作需要Objective-C來維護,只不過長遠來看,Objective-C早晚會被Swift取代的。
當然了,我們都沒有魔法球,能夠准確地預測未來,哪些語言會受到歡迎,哪些會被拋棄。我曾經預測JavaScript的衰敗,但那完全沒有發生。如果想更全面的了解編程,可以來我這看看。
希望對您有所幫助!~
Ⅲ 編程語言的分類和用途
編程語言的分類主要有:JavaScript、PHP、C、C++、java。
1、C語言:實模式、保護模式、調度、中斷、調用棧、回調……基本上計算機科學裡面的基本概念都會涉及。結構化編程,即將解決方案描述為一個清晰的過程,這其中會涉及數據的建模,介面的定義,項目整體的組織結構。
2、c++語言:虛函數、虛表、內聯、多繼承、const、泛型、模板(語言相關)opencv、OGRE、3D渲染、GPU、mesh、skeleton、幀循環、DX、GUI、MFC、Qt、消息隊列、非阻塞IO。適合領域:多媒體、高性能網路伺服器等較講究效率的應用程序。
3、java:位元組碼、虛擬機、垃圾回收、介面、多線程、包、程序庫、反射、框架、集成、組件、http、web、資料庫、SSH、javaee。java的程序比較講究擴展性和可維護性,一般會使用比較多的設計模式,常用的程序組織形式是MVC、監聽者模式等。
4、Javascript:閉包、對象、函數、CSS、DOM、Ajax、HTML5、node.js、V8。基於prototype的OO,以及基於閉包的函數式編程(後者用的更多)。常用代碼組織形式:事件觸發的回調機制(node.js與前端的區別是其自己定義、觸發事件)、基於非阻塞非同步IO的框架(node.js)。
5、PHP即「超文本預處理器」,是一種通用開源腳本語言。PHP是在伺服器端執行的腳本語言,與C語言類似,是常用的網站編程語言。PHP獨特的語法混合了C、Java、Perl以及 PHP 自創的語法。利於學習,使用廣泛,主要適用於Web開發領域。
Ⅳ 編程語言的常見語言
AAuto是專用於桌面軟體快速開發的新一代混合型編程語言 - 具有動態語言輕便、靈活、快速開發的特性,而且又可以同時支持靜態類型開發,象靜態語言那樣使用。AAuto可以直接支持原生DLL,即使是外部EXE進程中的函數,也可以使用一句代碼聲明為普通的AAuto函數對象(原生call支持),AAuto支持非常多的標准調用約定,例如 stdcall,cdecl,thiscall,fastcall,regparm(n) 等調用約定都可以支持。AAuto雖然小,但支持的介面很豐富、可以支持com靜態動態雙介面,象VBS一樣原生支持com對象。
用一個簡單的代碼演示一下,下面的AAuto代碼定義了一個結構體: //定義類classPOINT{//類點intx;inty;//「整數」類型x;「整數」類型yfunc=function(){//函數=函數()//動態類型}}這種全新的混合編程語言開創了一種全新的編程方式,也因為這種語言特性,AAuto可以非常方便的嵌入各種第三方語言,AAuto可以嵌入匯編機器碼,C語言,Java,PHP,C#,Python,Javascript,VBScript......等等數量眾多的第三方編程語言,方便的互調函數,並且這些調用第三方語言的功能模塊都是使用AAuto實現( 開放源碼 )。混合型語言讓我們可以體驗到激動人心的全新編程方式。
AAuto可以將硬碟目錄,硬碟文件一鍵嵌入EXE文件,將全部程序包含所有資源生成獨立的綠色EXE文件,所有文件讀寫的相關函數自動支持,無需更改代碼,AAuto製作的程序不需要安裝程序,也不需要釋放DLL運行庫,AAuto製作的程序都是免安裝綠色軟體。
AAuto屬於類C系語言、並且可以自定義一套自己的語法。AAuto在語法風格接近流行類C系語言。有其他語言基礎的可以輕松上手,學習AAuto以後學習其他編程語言更可事半功倍。
AAuto支持多線程開發,復雜的多線程開發在AAuto中變得非常簡單,標准庫也提供大量簡化多線程開發的輔助支持庫,為多線程軟體開發帶來很大的方便(請參考快手範例 -> 多線程 )。
AAuto的標准庫基本使用純AAuto源碼實現,並且全部開源,標准庫提供了大量的簡化編程的常用函數,涉及到軟體開發的方方面面,極大的簡化了桌面軟體開發過程。
AAuto提供web.form支持庫( 開源 ),可以創建web窗體載入網頁創建web風格的軟體界面,網頁與本機代碼可以直接交互,在快手工程向導里,就提供了 WEB UI 的模板。在使用web窗體時,你能感受到AAuto這種混合語言帶來的巨大方便,較之傳統編程語言,AAuto 可以更快更加方便的創建 WEB UI 程序,在AAuto自帶的範例中,就有一個多窗口瀏覽器的範例,僅僅使用了一頁300行源碼就實現了一個功能較完整的多窗口網頁瀏覽器,可以看出使用AAuto極大的簡化了Web相關開發技術。另外,AAuto提供了web.layout支持庫,封裝了輕量快速的界面引擎HTMLayout,可以使用傳統的HTML,CSS技術,更加方便的實現漂亮的界面,而且運行,響應速度極快,官方也提供了大量HTMLayout的範例,教程。使用AAuto開發傳統界面也非常的方便,AAuto提供可視化開發工具,可以象VB一樣(實際上比VB更簡單)的通過拖拉控制項創建程序。 易語言是一門計算機程序語言。以「易」著稱,以中文作為程序代碼表達的語言形式。易語言的創始人是吳濤。早期版本的名字為E語言。易語言最早的版本的發布可追溯至2000年9月11日。可以說,創造易語言的初衷是進行用中文來編寫程序的實踐。從2000年至今,易語言已經發展到一定的規模:功能上、用戶數量上都十分可觀。
創建者:大連吳濤易語言(吳濤)
易語言簡稱:e、VE、E語言
最新版本:易語言5.3 (201401107) (支持靜態編譯)
特色:
1.以簡體中文作為程序代碼進行編程操作。
2.全中文支持,無需跨越英語門檻。
3.全可視化編程,支持所見即所得程序界面設計和程序流程編碼。
4.中文語句快速錄入。提供多種內嵌專用輸入法,徹底解決中文語句輸入速度慢的問題。
5.代碼即文檔。自動規范強制代碼格式轉換,任何人編寫的任何程序源代碼格式均統一。
6.加入了png支持,所涉及到組件: 標簽, 按鈕, 選擇框, 圖片框, 圖形按鈕, 畫板, 窗體, 表格。 結構化查詢語言(Structured Query Language)簡稱SQL,是一種資料庫查詢和程序設計語言,用於存取數據以及查詢、更新和管理關系資料庫系統;同時也是資料庫腳本文件的擴展名。結構化查詢語言是高級的非過程化編程語言,允許用戶在高層數據結構上工作。它不要求用戶指定對數據的存放方法,也不需要用戶了解具體的數據存放方式,所以具有完全不同底層結構的不同資料庫系統可以使用相同的結構化查詢語言語言作為數據輸入與管理的介面。結構化查詢語言語句可以嵌套,這使他具有極大的靈活性和強大的功能。
SQL語言結構簡潔,功能強大,簡單易學,所以自從IBM公司1981年推出以來,SQL語言,得到了廣泛的應用。如今無論是像Oracle,Sybase,Informix,SQL server這些大型的資料庫管理系統,還是像Visual Foxpro,PowerBuilder這些微機上常用的資料庫開發系統,都支持SQL語言作為查詢語言。 習語言
即中文版的C語言
O語言
O語言是一款中文計算機語言(或稱套裝:O匯編語言、O中間語言、O高級語言)
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第一次被應用在文本編輯器上使用了。
Pike
Pike和C語言以及Java類似。它是一種易學的語言,因為它不牽涉復雜的函數功能。
Python
Python是一種面向對象、直譯式計算機程序設計語言。
Ⅳ 什麼是編程語言
編程語言(programming language),是用來定義計算機程序的形式語言。它是一種被標准化的交流技巧,用來向計算機發出指令。一種計算機語言讓程序員能夠准確地定義計算機所需要使用的數據,並精確地定義在不同情況下所應當採取的行動。
最早的編程語言是在電腦發明之後產生的,當時是用來控制提花織布機及自動演奏鋼琴的動作。在電腦領域已發明了上千不同的編程語言,而且每年仍有新的編程語言誕生。很多編程語言需要用指令方式說明計算的程序,而有些編程語言則屬於聲明式編程,說明需要的結果,而不說明如何計算。
編程語言的描述一般可以分為語法及語義。語法是說明編程語言中,哪些符號或文字的組合方式是正確的,語義則是對於編程的解釋。有些語言是用規格文件定義,例如C語言的規格文件也是ISO標准中一部份,2011年後的版本為ISO/IEC 9899:2011,而其他語言(像Perl)有一份主要的編程語言實現文件,視為是參考實現。
編程語言俗稱"計算機語言",種類非常的多,總的來說可以分成機器語言、匯編語言、高級語言三大類。電腦每做的一次動作,一個步驟,都是按照已經用計算機語言編好的程序來執行的,程序是計算機要執行的指令的集合,而程序全部都是用我們所掌握的語言來編寫的。所以人們要控制計算機一定要通過計算機語言向計算機發出命令。 目前通用的編程語言有兩種形式:匯編語言和高級語言。
基本簡介
計算機語言的種類非常的多,總的來說可以分成機器語言,匯編語言,高級語言三大類。 如果按語種分,可以分為英文符號語言和漢語符號語言兩類。 電腦每做的一次動作,一個步驟,都是按照已經用計算機語言編好的程序來執行的,程序是計算機要執行的指令的集合,而程序全部都是用我們所掌握的語言來編寫的。所以人們要控制計算機一定要通過計算機語言向計算機發出命令。
Ⅵ 編程語言都有哪些
計算機語言的種類非常的多,總的來說可以分成機器語言,匯編語言,高級語言三大類。
目前通用的編程語言有兩種形式:匯編語言和高級語言。
匯編語言的實質和機器語言是相同的,都是直接對硬體操作,只不過指令採用了英文縮寫的標識符,更容易識別和記憶。它同樣需要編程者將每一步具體的操作用命令的形式寫出來。匯編程序通常由三部分組成:指令、偽指令和宏指令。匯編程序的每一句指令只能對應實際操作過程中的一個很細微的動作,例如移動、自增,因此匯編源程序一般比較冗長、復雜、容易出錯,而且使用匯編語言編程需要有更多的計算機專業知識,但匯編語言的優點也是顯而易見的,用匯編語言所能完成的操作不是一般高級語言所能實現的,而且源程序經匯編生成的可執行文件不僅比較小,而且執行速度很快。
高級語言是目前絕大多數編程者的選擇。和匯編語言相比,它不但將許多相關的機器指令合成為單條指令,並且去掉了與具體操作有關但與完成工作無關的細節,例如使用堆棧、寄存器等,這樣就大大簡化了程序中的指令。同時,由於省略了很多細節,編程者也就不需要有太多的專業知識。
高級語言主要是相對於匯編語言而言,它並不是特指某一種具體的語言,而是包括了很多編程語言,如目前流行的VB、VC、FoxPro、Delphi等,這些語言的語法、命令格式都各不相同。
高級語言所編制的程序不能直接被計算機識別,必須經過轉換才能被執行,按轉換方式可將它們分為兩類:
解釋類:執行方式類似於我們日常生活中的「同聲翻譯」,應用程序源代碼一邊由相應語言的解釋器「翻譯」成目標代碼(機器語言),一邊執行,因此效率比較低,而且不能生成可獨立執行的可執行文件,應用程序不能脫離其解釋器,但這種方式比較靈活,可以動態地調整、修改應用程序。
編譯類:編譯是指在應用源程序執行之前,就將程序源代碼「翻譯」成目標代碼(機器語言),因此其目標程序可以脫離其語言環境獨立執行,使用比較方便、效率較高。但應用程序一旦需要修改,必須先修改源代碼,再重新編譯生成新的目標文件(* .OBJ)才能執行,只有目標文件而沒有源代碼,修改很不方便。現在大多數的編程語言都是編譯型的,例如Visual C++、Visual Foxpro、Delphi等。
[NextPage]
學習編程,從何入手
如果您想學習編程,卻又不知從何入手,那麼您不妨看看下面的幾種學習方案,可能會給您一些啟示吧!
==============================================
方案一 Basic語言 & Visual Basic
優點
(1)Basic 簡單易學,很容易上手。
(2)Visual Basic 提供了強大的可視化編程能力,可以讓你輕松地做出漂亮的程序。
(3)眾多的控制項讓編程變得象壘積木一樣簡單。
(4)Visual Basic 的全部漢化讓我們這些見了English就頭大的人喜不自禁。
缺點
(1)Visual Basic 不是真正的面向對象的開發文具。
(2)Visual Basic 的數據類型太少,而且不支持指針,這使得它的表達能力很有限。
(3)Visual Basic 不是真正的編譯型語言,它產生的最終代碼不是可執行的,是一種偽代碼。它需要一個動態鏈接庫去解釋執行,這使得Visual Basic 的編譯速度大大變慢。
綜述:方案一適合初涉編程的朋友,它對學習者的要求不高,幾乎每個人都可以在一個比較短的時間里學會vB編程,並用VB 做出自己的作品。對於那些把編程當做游戲的朋友來說,VB 是您最佳的選擇。
Basic/Visual Basic簡介
==============================================
方案二 Pascal語言 & Delphi
優點
(1)Pascal語言結構嚴謹,可以很好地培養一個人的編程思想。
(2)Delphi是一門真正的面向對象的開發工具,並且是完全的可視化。
(3)Delphi使用了真編譯,可以讓你的代碼編譯成為可執行的文件,而且編譯速度非常快。
(4)Delphi具有強大的資料庫開發能力,可以讓你輕松地開發資料庫。
缺點
Delphi幾乎可以說是完美的,只是Pascal語言的過於嚴謹讓人感覺有點煩。
綜述: 方案二比較適合那些具有一定編程基礎並且學過Pascal語言的朋友。
Pascal語言簡介
Delphi簡介
==============================================
方案三 C語言 & Visual C++
優點
(1)C語言靈活性好,效率高,可以接觸到軟體開發比較底層的東西。
(2)微軟的MFC庫博大精深,學會它可以讓隨心所欲地進行編程。
(3)VC是微軟製作的產品,與操作系統的結合更加緊密。
缺點
對使用者的要求比較高,既要具備豐富的C語言編程經驗,又要具有一定的WINDOWS編程基礎,它的過於專業使得一般的編程愛好者學習起來會有不小的困難。
綜述: VC是程序員用的東西。如果你是一個永不滿足的人,而且可以在編程上投入很大的精力和時間,那麼學習VC你一定不會後悔的。
C語言簡介
==============================================
方案四 C++語言 & C++ Builder
優點
(1)C++語言的優點全部得以繼承。
(2)完全的可是化。
(3)極強的兼容性,支持OWL、VCL和MFC三大類庫。
(4)編譯速度非常快。
缺點
由於推出的時間太短,關於它的各種資料還不太多。
綜述:我認為C++ Builder 是最好的編程工具。它既保持了C++語言編程的優點,又做到了完全的可視化。
C語言簡介
==============================================
方案五 SQL語言 & Power Builder
對於一些傳統的數據開發人員來說,Foxpro系列也許讓他們感到更加熟悉。但是對於初學者來說,PowerBuilder也許是最好的資料庫開發工具。各種各樣的控制項,功能強大的PowerBuilder語言都會幫助你開發出自己的資料庫應用程序。
[NextPage]
JSP簡介
在Sun正式發布JSP(Java Server Pages)之後,這種新的Web應用開發技術很快引起了人們的關注。JSP為創建高度動態的Web應用提供了一個獨特的開發環境。按照 Sun 的說法,JSP能夠適應市場上包括Apache WebServer 、IIS4.0在內的85%的伺服器產品。
JSP與ASP的簡單比較
JSP與Microsoft的ASP技術非常相似。兩者都提供在HTML代碼中混合某種程序代碼、由語言引擎解釋執行程序代碼的能力。在ASP或JSP環境下,HTML代碼主要負責描述信息的顯示樣式,而程序代碼則用來描述處理邏輯。普通的HTML頁面只依賴於Web伺服器,而ASP和JSP頁面需要附加的語言引擎分析和執行程序代碼。程序代碼的執行結果被重新嵌入到HTML代碼中,然後一起發送給瀏覽器。ASP和JSP都是面向Web伺服器的技術,客戶端瀏覽器不需要任何附加的軟體支持。
ASP的編程語言是VBScript之類的腳本語言,JSP使用的是Java,這是兩者最明顯的區別。
此外,ASP與JSP還有一個更為本質的區別:兩種語言引擎用完全不同的方式處理頁面中嵌入的程序代碼。在ASP下,VBScript代碼被ASP引擎解釋執行;在JSP下,代碼被編譯成Servlet並由Java虛擬機執行,這種編譯操作僅在對JSP頁面的第一次請求時發生。
運行環境
執行 JSP 代碼需要在伺服器上安裝 JSP 引擎。此處我們使用的是 Sun 的 JavaServer Web Development Kit ( JSWDK )。為便於學習,這個軟體包提供了大量可供修改的示例。安裝 JSWDK 之後,只需執行 startserver 命令即可啟動伺服器。在默認配置下伺服器在埠 8080 監聽,使用 http://localhost:8080 即可打開預設頁面。
在運行 JSP 示例頁面之前,請注意一下安裝 JSWDK 的目錄,特別是" work "子目錄下的內容。執行示例頁面時,可以在這里看到 JSP 頁面如何被轉換成 Java 源文件,然後又被編譯成 class 文件(即 Servlet )。 JSWDK 軟體包中的示例頁面分為兩類,它們或者是 JSP 文件,或者是包含一個表單的 HTML 文件,這些表單均由 JSP 代碼處理。與 ASP 一樣, JSP 中的 Java 代碼均在伺服器端執行。因此,在瀏覽器中使用"查看源文件"菜單是無法看到 JSP 源代碼的,只能看到結果 HTML 代碼。所有示例的源代碼均通過一個單獨的" examples "頁面提供。
Java Servlet是一種開發Web應用的理想構架。 JSP以Servlet技術為基礎,又在許多方面作了改進。JSP頁面看起來象普通HTML頁面,但它允許嵌入執行代碼,在這一點上,它和ASP技術非常相似。利用跨平台運行的JavaBean 組件,JSP為分離處理邏輯與顯示樣式提供了卓越的解決方案。JSP必將成為ASP技術的有力競爭者。
[NextPage]
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
數據操縱語言DQL-Data Manipulation Language INSERT, UPDATE, DELETE
數據定義語言DQL-Data Definition Language CREATE, ALTER, DROP
數據控制語言DQL-Data Control Language COMMIT WORK, ROLLBACK WORK
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管理員和終端用戶受益非淺。
(1) 非過程化語言
SQL是一個非過程化的語言,因為它一次處理一個記錄,對數據提供自動導航。SQL允許用戶在高層的數據結構上工作,而不對單個記錄進行操作,可操作記錄集。所有SQL 語句接受集合作為輸入,返回集合作為輸出。SQL的集合特性允許一條SQL語句的結果作為另一條SQL語句的輸入。 SQL不要求用戶指定對數據的存放方法。 這種特性使用戶更易集中精力於要得到的結果。所有SQL語句使用查詢優化器,它是RDBMS的一部分,由它決定對指定數據存取的最快速度的手段。查詢優化器知道存在什麼索引,哪兒使用合適,而用戶從不需要知道表是否有索引,表有什麼類型的索引。
(2) 統一的語言
SQL可用於所有用戶的DB活動模型,包括系統管理員、資料庫管理員、 應用程序員、決策支持系統人員及許多其它類型的終端用戶。基本的SQL 命令只需很少時間就能學會,最高級的命令在幾天內便可掌握。 SQL為許多任務提供了命令,包括:
● 查詢數據
● 在表中插入、修改和刪除記錄
● 建立、修改和刪除數據對象
● 控制對數據和數據對象的存取
● 保證資料庫一致性和完整性
以前的資料庫管理系統為上述各類操作提供單獨的語言,而SQL 將全部任務統一在一種語言中。
(3) 是所有關系資料庫的公共語言
由於所有主要的關系資料庫管理系統都支持SQL語言,用戶可將使用SQL的技能從一個RDBMS轉到另一個。所有用SQL編寫的程序都是可以移植的。
[NextPage]
Java語言簡介
一. Java的由來
當1995年SUN推出Java語言之後,全世界的目光都被這個神奇的語言所吸引。那麼Java到底有何神奇之處呢?
Java語言其實最是誕生於1991年,起初被稱為OAK語言,是SUN公司為一些消費性電子產品而設計的一個通用環境。他們最初的目的只是為了開發一種獨立於平台的軟體技術,而且在網路出現之前,OAK可以說是默默無聞,甚至差點夭折。但是,網路的出現改變了OAK的命運。
在Java出現以前。Internet上的信息內容都是一些乏味死板的HTML文檔。這對於那些迷戀於WEB瀏覽的人們來說簡直不可容忍。他們迫切希望能在WEN中看到一些互動式的內容,開發人員也極希望能夠在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的特點
1. 平台無關性
平台無關性是指Java能運行於不同的平台。Java引進虛擬機 原理,並運行於虛擬機,實現不同平台的Java介面之間。使 用Java編寫的程序能在世界范圍內共享。Java的數據類型與 機器無關,Java虛擬機(Java Virtual Machine)是建立在 硬體和操作系統之上,實現Java二進制代碼的解釋執行功能, 提供於不同平台的介面的。
2. 安全性
Java的編程類似C++,學習過C++的讀者將很快掌握Java的精 髓。Java舍棄了C++的指針對存儲器地址的直接操作,程序 運行時,內存由操作系統分配,這樣可以避免病毒通過指 針侵入系統。Java對程序提供了安全管理器,防止程序的 非法訪問。
3. 面向對象
Java 吸取了C++面向對象的概念,將數據封裝於類中,利用類 的優點,實現了程序的簡潔性和便於維護性。類的封裝性、 繼承性等有關對象的特性,使程序代碼只需一次編譯,然後 通過上述特性反復利用。程序員只需把主要精力用在類和接 口的設計和應用上。Java 提供了眾多的一般對象的類,通 過繼承即可使用父類的方法。在 Java 中,類的繼承關系是單一的非多重的,一個子類 只有一個父類,子類的父類又有一個父類。Java 提供的 Object 類及其子類的繼承關系如同一棵倒立的樹形,根類 為 Object 類, Object 類功能強大,經常會使用到它及其 它派生的子類。
4. 分布式
Java建立在擴展TCP/IP網路平台上。庫函數提供了用HTTP和FTP協議傳送和接受信息的方法。這使得程序員使用網路上的文件和使用本機文件一樣容易。
5. 鍵壯性
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程序被下載到本地的用戶機上,由瀏覽器解釋運行。
[NextPage]
PowerBuilder簡介
PowerBuilder的產生
PowerBuilder是美國著名的資料庫應用開發工具生產廠商PowerSoft推出的成功產品,其第一版於1991年6月正式投入市場。它是完全按照客戶/伺服器體系結構研製設計的,採用面向對象技術,圖形化的應用開發環境,是資料庫的前端開發工具。
PowerBuilder的特點
它支持應用系統同時訪問多種資料庫,其中既包括Oracel,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)組成,應用開發人員通過簡單的滑鼠操作即可設計、建立、交互檢驗和測試客戶/伺服器應用程序。
[NextPage]
Delphi簡介
Delphi這個名字源於古希臘的城市名。它集中了第三代語言
Ⅶ c語言中:和!是什麼意思怎麼運用在編程中
?:的意思是條件運算符,使用的格式如下(條件)?A:B,如果條件成立,表達式的值就是A,否則是B。
!的意思是用來取非運算的,!true的結果就是 false !false 的結果是 true。
寫程序中,?:用的比較少,!主要用在條件判斷中。
Ⅷ 我對中文編程和中國應該發展什麼語言的論點[原創]
討論中文編程的問題。bluesen似乎也發表了高論。
可以看出這個方面出力的沒有,指點江山的倒不少。熱切關注的更是為數眾多。
我不想在這磨牙。只想拋出自己的結論。
2.現在出現支持非ascii碼字元集的編程語言,uncode編碼的普及,可以預見以後很多語言也會實現非英文的編程。比如申明漢字變數。
3.創立的中文編程語言應該與c++,java,ruby,python,perl這些流行語言去作比較,空泛的強調漢語是沒有意義的。關鍵是有沒有創新,有沒有適用的業務領域。
4.如果漢語編程的編譯或者解釋部分(VM)是獨立自主開發並有核心技術的,我認為技術層面看還是進步的。但我們看到,並不是漢語使得編程語言有什麼特殊性。而是在是否開創了一種新語言。新的語法,新的實現,從質上實現了提升。比如java脫胎於c/c++,但開創了動態語言的先河,並摒棄了指針這些控制不好的部份,大力發展類庫提升編程效率,跨平台,支持網路下載和運行,容易學習。都是java的創新。
5.中國如果哪個公司能開發語言,我想起碼要證明他能做出符合c/c++標準的編譯器吧?至少他有這個能力,然後實現語言的創新應該才會有前提。比如大家有少許了解的D語言的作者,他開發的D語言准備吸收c/c++,java,python,perl,c#等語言的優點,既有c/c++編譯的運行速度,又有動態語言的全部優點。這才叫創立語言。
6.我們認為perl,java,ruby這些基於c/c++或者其它古老語言,在這些語言基礎上改進發展從而創立符合既定運用的優勢語言,是創立語言的主流和正規方法。
7.語言是否是創新,它的標准有兩個,一是被接受為標准,再則就是最重要的是被用戶接受來大量構件實際的系統。
8.以後,或者長期地,c/c++等編譯型語言拿來構件計算機基礎,而大量另類的語言,編譯的或者解釋的,或者其它未知形式的語言都將大量涌現,新語言出現的目標就是快速構件某范圍的系統,強調的是快速,跨平台,易用等。據我所知,有些語言是翻譯成c#,javabyte的中間碼,以前也出現過翻譯為c/c++代碼的新語言。總之。
Ⅸ 在編程語言中,高級語言、中級語言和低級語言各有什麼特點相比之下,各自又有什麼優點請詳細。
機器語言是電腦能直接接收處理的二進制語言;匯編語言是用助記符表示電腦操作指令的面向硬體的語言,比高級語言要低級,比機器語言高級;高級語言的表達更接近人類語言,比較易寫、易懂,程序編譯器編譯後才能執行。