萬全課堂 | 編程語言及平臺(tái)開發(fā)
編程語言簡介
l Java
l C/C++
l C#
目前,我司常用的編程語言,通過數(shù)據(jù)傳輸,wifi,藍(lán)牙傳送到讀寫器上,再進(jìn)行讀取標(biāo)簽,如下圖所示。
JAVA
l SUN公司1995年5月推出
l 2006年11月,Java宣布開源
l 2009年4月20日,Oracle公司宣布正式以74億美元的價(jià)格收購Sun公司,Java商標(biāo)從此正式歸Oracle所有
l 跨平臺(tái):“一次編譯,處處運(yùn)行”,Windows/Linux/Mac/其他JVM支持的平臺(tái)
l 需要運(yùn)行環(huán)境:JRE/JDK
基本工作原理:
l 通過jdk提供的開發(fā)工具,將java源代碼編譯成中間代碼
l 在安裝有JRE環(huán)境的環(huán)境中均可運(yùn)行
Java與c++/c交互:
l Java與c++/c交互:C/C++編寫動(dòng)態(tài)庫,java調(diào)用動(dòng)態(tài)庫
l 跨平臺(tái)問題:Java跨平臺(tái),但動(dòng)態(tài)庫不跨平臺(tái)
使用場景:
l 桌面開發(fā)
l 服務(wù)器開發(fā)
l 嵌入式
l 移動(dòng)移動(dòng)
l 其他
C/C++
l C語言:誕生于1972年,美國貝爾實(shí)驗(yàn)室,與其一起誕生的還有UNIX系統(tǒng)
l C++:1983年,由Bjarne Stroustrup在貝爾實(shí)驗(yàn)室完成,是對(duì)C語言的改良,包含C語言的各種特性
l C/C++標(biāo)準(zhǔn)組織:ANSI(C++), ISO/IEC(C)
l 無需運(yùn)行環(huán)境
l 迄今使用最為廣泛的編程語言,基本上啥都能干
l 特點(diǎn):功能強(qiáng)大,復(fù)雜
C/C++標(biāo)準(zhǔn)發(fā)展:
C
早期C:1972
ANSI C89:1989
ISO/IEC C99:1999
ISO/IDE C11:2011
C++
1994 年,ANSI C++標(biāo)準(zhǔn)發(fā)布
1998 C++98
2003 C++03
2011 C++11
2014 C++14
2017 C++17
開發(fā)過程:
l 編譯器編譯源代碼:編譯成機(jī)器平臺(tái)相關(guān)的目標(biāo)文件
l 鏈接器:鏈接相關(guān)的文件(庫等)生成可執(zhí)行文件
*一次編寫,處處編譯,處處運(yùn)行
開發(fā)環(huán)境:
l 雖然c/c++語言有標(biāo)準(zhǔn)組織,但是標(biāo)準(zhǔn)只是標(biāo)準(zhǔn),對(duì)于各家編譯器是否實(shí)現(xiàn)標(biāo)準(zhǔn)并無規(guī)定,且各家編譯器都會(huì)對(duì)標(biāo)準(zhǔn)做擴(kuò)展,跨平臺(tái)能力比之Java所有不及
l Windows:Visual Studio,Clang,Gnu gcc,intel,Borland
l Linux:Clang,gcc,intel
l Mac:xcode,Clang,gcc
使用場景:
l 桌面開發(fā)
l 服務(wù)器開發(fā)
l 嵌入式
l 移動(dòng)開發(fā)
l 其他
C#
l 為了與Java競爭,微軟發(fā)布的一種基于.net framework的通用行語言C#
l C#包含了很多與java類似的特性
l .net frame相當(dāng)于jvm,但比jvm有更多特性
l 跨平臺(tái)的.net Framework:Mono
使用場景:
l 桌面開發(fā)
l 服務(wù)器開發(fā)
l 嵌入式
l 移動(dòng)開發(fā)
l 其他
接下來,簡單的介紹下開發(fā)平臺(tái)的工具。
開發(fā)平臺(tái)簡介
l Android
l iOS
l Qt
Android平臺(tái)
l 開發(fā)語言:Java,Kotlin,C/C++,Dart
開發(fā)工具:Android Studio/Eclipse