各种语言的特点和介绍(附图
簡(jiǎn)介
技術(shù)永無止境,編程方向現(xiàn)在越來越廣了,你還在迷茫地選擇方向么?
本篇將簡(jiǎn)單描述編程各個(gè)方面,以及編程之路會(huì)遇到的生活問題。
問題與解答
1、編程分為幾個(gè)階段?
高手箴言中把編程分為六個(gè)階段:1、熟練地使用某種語言(java)。
2、精通基于某種平臺(tái)的開發(fā)(Android)。
3、深入地了解某個(gè)平臺(tái)系統(tǒng)的底層(Android 底層)。
4、直接在平臺(tái)上進(jìn)行比較深層次的開發(fā)(Android NDK 開發(fā))。
5、系統(tǒng)體系結(jié)構(gòu)開發(fā)。
6、想啥就實(shí)現(xiàn)啥。
2、JAVA 技術(shù)
3、JavaScript 技術(shù)
4、C/C++ 技術(shù)
5、PHP技術(shù)
6、C#技術(shù)
7、Python技術(shù)
8、Ruby
9、Go語言
10、DLL
11、組件 控件 插件
12、框架
java框架
php框架
JavaScript框架
13、Perl技術(shù)
14、XML
可擴(kuò)展標(biāo)記語言,標(biāo)準(zhǔn)通用標(biāo)記語言的子集,一種用于標(biāo)記電子文件使其具有結(jié)構(gòu)性的標(biāo)記語言。
它可以用來標(biāo)記數(shù)據(jù)、定義數(shù)據(jù)類型,是一種允許用戶對(duì)自己的標(biāo)記語言進(jìn)行定義的源語言。 它非常適合萬維網(wǎng)傳輸,提供統(tǒng)一的方法來描述和交換獨(dú)立于應(yīng)用程序或供應(yīng)商的結(jié)構(gòu)化數(shù)據(jù)。
15、CSS
它是一種用來表現(xiàn)HTML(標(biāo)準(zhǔn)通用標(biāo)記語言的一個(gè)應(yīng)用)或XML(標(biāo)準(zhǔn)通用標(biāo)記語言的一個(gè)子集)等文件樣式的計(jì)算機(jī)語言。
CSS目前最新版本為CSS3,是能夠真正做到網(wǎng)頁表現(xiàn)與內(nèi)容分離的一種樣式設(shè)計(jì)語言。相對(duì)于傳統(tǒng)HTML的表現(xiàn)而言,CSS能夠?qū)W(wǎng)頁中的對(duì)象的位置排版進(jìn)行像素級(jí)的精確控制,支持幾乎所有的字體字號(hào)樣式,擁有對(duì)網(wǎng)頁對(duì)象和模型樣式編輯的能力,并能夠進(jìn)行初步交互設(shè)計(jì),是目前基于文本展示最優(yōu)秀的表現(xiàn)設(shè)計(jì)語言。CSS能夠根據(jù)不同使用者的理解能力,簡(jiǎn)化或者優(yōu)化寫法,針對(duì)各類人群,有較強(qiáng)的易讀性。
16、HTML
標(biāo)準(zhǔn)通用標(biāo)記語言下的一個(gè)應(yīng)用,也是一種規(guī)范,一種標(biāo)準(zhǔn), 它通過標(biāo)記符號(hào)來標(biāo)記要顯示的網(wǎng)頁中的各個(gè)部分。網(wǎng)頁文件本身是一種文本文件,通過在文本文件中添加標(biāo)記符,可以告訴瀏覽器如何顯示其中的內(nèi)容(如:文字如何處理,畫面如何安排,圖片如何顯示等)。瀏覽器按順序閱讀網(wǎng)頁文件,然后根據(jù)標(biāo)記符解釋和顯示其標(biāo)記的內(nèi)容,對(duì)書寫出錯(cuò)的標(biāo)記將不指出其錯(cuò)誤,且不停止其解釋執(zhí)行過程,編制者只能通過顯示效果來分析出錯(cuò)原因和出錯(cuò)部位。但需要注意的是,對(duì)于不同的瀏覽器,對(duì)同一標(biāo)記符可能會(huì)有不完全相同的解釋,因而可能會(huì)有不同的顯示效果。
HTML文件是可以被多種網(wǎng)頁瀏覽器讀取,產(chǎn)生網(wǎng)頁傳遞各類資訊的文件。從本質(zhì)上來說,Internet( 互聯(lián)網(wǎng))是一個(gè)由一系列傳輸協(xié)議和各類文檔所組成的集合,html文件只是其中的一種。
HTML5是HTML下一個(gè)主要的修訂版本,現(xiàn)在仍處于發(fā)展階段,其實(shí)是包括HTML、CSS和JavaScript在內(nèi)的一套技術(shù)組合。它希望能夠減少瀏覽器對(duì)于需要插件的豐富性網(wǎng)絡(luò)應(yīng)用服務(wù)(plug-in-based rich internet application,RIA),如Adobe Flash、Microsoft Silverlight,與Oracle JavaFX的需求,并且提供更多能有效增強(qiáng)網(wǎng)絡(luò)應(yīng)用的標(biāo)準(zhǔn)集。
17、ASP
18、Delphi
19、Scala
20、Groovy
一種基于JVM(Java虛擬機(jī))的敏捷開發(fā)語言,它結(jié)合了Python、Ruby和Smalltalk的許多強(qiáng)大的特性,Groovy 代碼能夠與 Java 代碼很好地結(jié)合,也能用于擴(kuò)展現(xiàn)有代碼。由于其運(yùn)行在 JVM 上的特性,Groovy 可以使用其他 Java 語言編寫的庫(kù)。
用于Java虛擬機(jī)的一種敏捷的動(dòng)態(tài)語言,它是一種成熟的面向?qū)ο缶幊陶Z言,既可以用于面向?qū)ο缶幊?#xff0c;又可以用作純粹的腳本語言。使用該種語言不必編寫過多的代碼,同時(shí)又具有閉包和動(dòng)態(tài)語言中的其他特性。
應(yīng)用:1、groovyShell 腳本語言運(yùn)用 2、在Java中動(dòng)態(tài)加載和運(yùn)行Groovy代碼 3、groovy 腳本引擎
21、Lua
一個(gè)小巧的腳本語言,該語言的設(shè)計(jì)目的是為了嵌入應(yīng)用程序中,從而為應(yīng)用程序提供靈活的擴(kuò)展和定制功能。
Lua腳本可以很容易的被C/C++ 代碼調(diào)用,也可以反過來調(diào)用C/C++的函數(shù),這使得Lua在應(yīng)用程序中可以被廣泛應(yīng)用。
應(yīng)用:
Minecraft中的電腦插件
所有的為電腦和turtle(機(jī)器人)的代碼都是基于Lua的,你可以用它們與有(無)線路由器、打印機(jī)、磁盤驅(qū)動(dòng)器、(黃金)顯示器互動(dòng)。
魔獸世界插件開發(fā)
游戲腳本
22、SQL
結(jié)構(gòu)化查詢語言是一種數(shù)據(jù)庫(kù)查詢和程序設(shè)計(jì)語言,用于存取數(shù)據(jù)以及查詢、更新和管理關(guān)系數(shù)據(jù)庫(kù)系統(tǒng);同時(shí)也是數(shù)據(jù)庫(kù)腳本文件的擴(kuò)展名。
結(jié)構(gòu)化查詢語言是高級(jí)的非過程化編程語言,允許用戶在高層數(shù)據(jù)結(jié)構(gòu)上工作。
它不要求用戶指定對(duì)數(shù)據(jù)的存放方法,也不需要用戶了解具體的數(shù)據(jù)存放方式,所以具有完全不同底層結(jié)構(gòu)的不同數(shù)據(jù)庫(kù)系統(tǒng), 可以使用相同的結(jié)構(gòu)化查詢語言作為數(shù)據(jù)輸入與管理的接口。
結(jié)構(gòu)化查詢語言語句可以嵌套,這使它具有極大的靈活性和強(qiáng)大的功能。
開源項(xiàng)目:sqlite ?一款輕型的數(shù)據(jù)庫(kù),是遵守ACID的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),它的設(shè)計(jì)目標(biāo)是嵌入式的,而且目前已經(jīng)在很多嵌入式產(chǎn)品中使用了它,它占用資源非常的低,在嵌入式設(shè)備中,可能只需要幾百K的內(nèi)存就夠了。
23、Flash
一種動(dòng)畫創(chuàng)作與應(yīng)用程序開發(fā)于一身的創(chuàng)作軟件。
Flash動(dòng)畫設(shè)計(jì)的三大基本功能是整個(gè)Flash動(dòng)畫設(shè)計(jì)知識(shí)體系中最重要、也是最基礎(chǔ)的,包括:繪圖和編輯圖形、補(bǔ)間動(dòng)畫和遮罩。這是三個(gè)緊密相連的邏輯功能,并且這三個(gè)功能自Flash誕生以來就存在。
Flash廣泛用于創(chuàng)建吸引人的應(yīng)用程序,它們包含豐富的視頻、聲音、圖形和動(dòng)畫。
24、WPF
微軟推出的基于Windows Vista的用戶界面框架,屬于.NET Framework 3.0的一部分。它提供了統(tǒng)一的編程模型、語言和框架,真正做到了分離界面設(shè)計(jì)人員與開發(fā)人員的工作;同時(shí)它提供了全新的多媒體交互用戶圖形界面。
Flash廣泛用于創(chuàng)建吸引人的應(yīng)用程序,它們包含豐富的視頻、聲音、圖形和動(dòng)畫。
由兩個(gè)主要部分組成:引擎和編程框架:
1、Windows Presentation Foundation引擎。Windows Presentation Foundation 引擎統(tǒng)一了開發(fā)人員和設(shè)計(jì)人員體驗(yàn)文檔、媒體和 UI 的方式,為基于瀏覽器的體驗(yàn)、基于窗體的應(yīng)用程序、圖形、視頻、音頻和文檔提供了一個(gè)單一的運(yùn)行時(shí)庫(kù)。
2、Windows Presentation Foundation 框架。Windows Presentation Foundation 框架為媒體、用戶界面設(shè)計(jì)和文檔提供的解決方案遠(yuǎn)遠(yuǎn)超過開發(fā)人員現(xiàn)在所擁有的。
25、Shell
在計(jì)算機(jī)科學(xué)中,Shell俗稱殼(用來區(qū)別于核),是指“提供使用者使用界面”的軟件(命令解析器)。它類似于DOS下的command和后來的cmd.exe。它接收用戶命令,然后調(diào)用相應(yīng)的應(yīng)用程序。
26、Objective-C
擴(kuò)充C的面向?qū)ο缶幊陶Z言。
作用:編寫iOS操作系統(tǒng)(如:iPhone、iPod touch、iPad 等蘋果移動(dòng)終端設(shè)備 )應(yīng)用程序。
27、QT
一個(gè)跨平臺(tái)的C++圖形用戶界面應(yīng)用程序框架。它提供給應(yīng)用程序開發(fā)者建立藝術(shù)級(jí)的圖形用戶界面所需的所有功能。Qt很容易擴(kuò)展,并且允許真正地組件編程。基本上,Qt 同 X Window 上的 Motif,Openwin,GTK 等圖形界 面庫(kù)和 Windows 平臺(tái)上的 MFC,OWL,VCL,ATL 是同類型的東西。
Qt支持下述平臺(tái):
MS/Windows - 95、98、NT4.0、ME、2000、XP 、 Vista、Win7、win8、win2008
Unix/X11 -Linux、SunSolaris、HP-UX、CompaqTru64 UNIX、IBMAIX、SGI IRIX、FreeBSD、BSD/OS和其它很多X11平臺(tái)
Macintosh -Mac OS X
Embedded - 有幀緩沖(framebuffer)支持的嵌入式Linux平臺(tái),Windows CE
Symbian Symbian^3 Symbian Anna Symbian Belle
28、嵌入式
嵌入式系統(tǒng)是一個(gè)控制程序存儲(chǔ)在ROM中的嵌入式處理器控制板。
嵌入式設(shè)計(jì)是企業(yè)電子產(chǎn)品設(shè)計(jì)的重要組成,目前國(guó)內(nèi)外中小型企業(yè)內(nèi)部都建立了自己的嵌入式開發(fā)團(tuán)隊(duì)。團(tuán)隊(duì)所需的人員職位構(gòu)成包括:(1)系統(tǒng)設(shè)計(jì)工程師 (2)硬件工程師 (3)底層驅(qū)動(dòng)工程師 (4)Linux系統(tǒng)工程師 (5)應(yīng)用設(shè)計(jì)工程師等。
29、逆向開發(fā)
逆向是編譯的反過程,一般用戶破解用戶加密等數(shù)據(jù)。
主要語言:匯編。
主要工具:IDA
主要應(yīng)用:破解加密、游戲輔助等。
30、初級(jí)程序員和高級(jí)程序員的區(qū)別
同樣一個(gè)項(xiàng)目,初級(jí)程序員想的是實(shí)現(xiàn)功能,達(dá)到效果,高級(jí)程序員想的是架構(gòu),如何更理想、更高效率完成。
31、程序員是青春的代表么?
決定程序員之路的元素有很多--------時(shí)間、身體、家庭。
如果可以很好衡量這三者,相信你會(huì)超越喬布斯。
總結(jié)
人生之路漫漫,選擇一個(gè)自己喜歡的專業(yè)很重要,全面了解專業(yè)決定了專業(yè)水平的寬度,深入某一方面決定了水平的高度。
總結(jié)
以上是生活随笔為你收集整理的各种语言的特点和介绍(附图的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mac 下面 you have an o
- 下一篇: KOOM 源码分析