據(jù)了解,鴻蒙系統(tǒng)是基于Linux開發(fā)的,源碼是C語言。那么,作為一名開發(fā)者,如何幫助鴻蒙系統(tǒng)構(gòu)建生態(tài)呢?在以往安卓、蘋果系統(tǒng)構(gòu)建過程,有哪些可以值得借鑒的地方呢?要成為鴻蒙開發(fā)者,應(yīng)該學(xué)習(xí)哪些編程語言?根據(jù)華為公布的方舟編譯器資料,可以推測(cè)鴻蒙系統(tǒng)是使用C、C++語言編寫的,面向應(yīng)用開發(fā)商的開發(fā)環(huán)境,則很有可能是采用Java語言。
鴻蒙系統(tǒng)的組成
華為的“鴻蒙”操作系統(tǒng)由四部分部分組成:Linux內(nèi)核+麒麟處理器的運(yùn)行庫+編譯器+虛擬機(jī)。
Linux內(nèi)核:Linux內(nèi)核是開源的,由linux內(nèi)核團(tuán)隊(duì)維護(hù),而linux的內(nèi)核采用了C語言,而不是很多認(rèn)為的C++,C語言的執(zhí)行效率要遠(yuǎn)高于面向?qū)ο蟮木幊陶Z言C++。
運(yùn)行庫:運(yùn)行庫在Linux基礎(chǔ)上,針對(duì)不同的處理器,運(yùn)行庫需要進(jìn)行適配。比如麒麟處理器指令集和高通處理器的指令集可能存在差異,不是完全相同,那么就存在一個(gè)適配的問題,而程序庫通常情況下采用C語言編寫。
虛擬機(jī):虛擬機(jī)用于溝通操作系統(tǒng)和硬件,是兩者之間的橋梁,屏蔽了不同系統(tǒng)之間的差異性,可以實(shí)現(xiàn)跨平臺(tái),同時(shí)很大程度上降低了應(yīng)用開發(fā)難度。目前,普遍使用的虛擬機(jī)是Java虛擬機(jī)。
編譯器:編譯器將Java編寫的代碼轉(zhuǎn)換成虛擬機(jī)機(jī)器碼或者硬件可以直接認(rèn)識(shí)的機(jī)器碼。華為的方舟編譯器實(shí)現(xiàn)了代碼的靜態(tài)編譯,相比傳統(tǒng)安卓應(yīng)用流暢度提升了60%。
為了幫助大家盡快熟悉華為鴻蒙平臺(tái)開發(fā),掌握基本的系統(tǒng)編程語言與平臺(tái)工具,編者整理了工程師推薦系統(tǒng)編程語言經(jīng)典入門書籍,讓大家能夠快速入門鴻蒙HarmonyOS系統(tǒng)平臺(tái)開發(fā)。
1. C程序設(shè)計(jì)語言
《C程序設(shè)計(jì)語言(原書第2版·新版 典藏版)》原著即為C語言的設(shè)計(jì)者之一DennisM.Ritchie和著名的計(jì)算機(jī)科學(xué)家BrianW.Kernighan合著的一本介紹C語言的經(jīng)典著作。我們現(xiàn)在見到的大量論述C語言程序設(shè)計(jì)的教材和專著均以此書為藍(lán)本。
原著第1版中介紹的C語言成為后來廣泛使用的C語言版本——標(biāo)準(zhǔn)C的基礎(chǔ)。人們熟知的“hello,world”程序就是由《C程序設(shè)計(jì)語言(原書第2版·新版 典藏版)》首次引入的,現(xiàn)在,這一程序已經(jīng)成為所有程序設(shè)計(jì)語言入門的第一課。原著第2版根據(jù)1987年制定的ANSIC標(biāo)準(zhǔn)做了適當(dāng)?shù)男抻啠肓诵碌恼Z言形式,并增加了新的示例。通過簡(jiǎn)潔的描述、典型的示例,作者全面、系統(tǒng)、準(zhǔn)確地講述了C語言的各個(gè)特性以及程序設(shè)計(jì)的基本方法。對(duì)于計(jì)算機(jī)從業(yè)人員來說,《C程序設(shè)計(jì)語言(原書第2版·新版 典藏版)》是一本必讀的程序設(shè)計(jì)語言方面的參考書。
2. 匯編語言
匯編語言是各種CPU提供的機(jī)器指令的助記符的集合,人們可以用匯編語言直接控制硬件系統(tǒng)進(jìn)行工作。匯編語言是很多相關(guān)課程(如數(shù)據(jù)結(jié)構(gòu)、操作系統(tǒng)、微機(jī)原理等)的重要基礎(chǔ)。為了更好地引導(dǎo)、幫助讀者學(xué)習(xí)匯編語言,作者以循序漸進(jìn)的思想精心創(chuàng)作了這本書。
本書具有如下特點(diǎn):采用了全新的結(jié)構(gòu)對(duì)課程的內(nèi)容進(jìn)行組織,對(duì)知識(shí)進(jìn)行很小化分割,為讀者構(gòu)造了循序漸進(jìn)的學(xué)習(xí)線索;在深入本質(zhì)的層面上對(duì)匯編語言進(jìn)行講解;對(duì)關(guān)鍵環(huán)節(jié)進(jìn)行深入的剖析。
3. C++ Primer Plus
本書是一本經(jīng)久不衰的C++暢銷經(jīng)典教程,是第一本支持C++11新標(biāo)準(zhǔn)的程序設(shè)計(jì)圖書,被譽(yù)為“開發(fā)人員學(xué)習(xí)C++的首選教程,沒有之一”!Amazon網(wǎng)站“Language”類銷售排名第三的超級(jí)暢銷書,之前版本在美國銷售超10萬!
《C++ Primer Plus中文版》根據(jù)2003年的ISO/ANSI C++標(biāo)準(zhǔn)編寫的,通過大量短小精悍的程序詳細(xì)而全面地闡述了C++的基本概念和技術(shù),并專辟一章介紹了C++11新增的功能。本書針對(duì)C++初學(xué)者,書中從C語言基礎(chǔ)知識(shí)開始介紹,然后在此基礎(chǔ)上詳細(xì)闡述C++新增的特性,因此不要求讀者有C語言方面的背景知識(shí)。
4. JavaScript權(quán)威指南
本書主要講述的內(nèi)容涵蓋語言本身,以及Web瀏覽器所實(shí)現(xiàn)的 API。本書第6版涵蓋了 HTML5 和 ECMAScript 5,很多章節(jié)完全重寫,增加了當(dāng)今 Web 開發(fā)的最佳實(shí)踐的內(nèi)容,新增的章節(jié)包括 jQuery 、服務(wù)器端 、圖形編程以及式的面向?qū)ο?。本書不僅適合初學(xué)者系統(tǒng)學(xué)習(xí),也適合有經(jīng)驗(yàn)的 開發(fā)者隨手翻閱。
5. Kotlin從入門到進(jìn)階實(shí)戰(zhàn)
本書從Kotlin 語言的基礎(chǔ)語法講起,逐步深入到Kotlin進(jìn)階實(shí)戰(zhàn),并在最后配合項(xiàng)目實(shí)戰(zhàn)案例,重點(diǎn)介紹了使用Kotlin+Spring Boot進(jìn)行服務(wù)端開發(fā)和使用Kotlin進(jìn)行Android應(yīng)用程序開發(fā)的內(nèi)容,讓讀者不但可以系統(tǒng)地學(xué)習(xí)Kotlin編程的相關(guān)知識(shí),而且還能對(duì)Kotlin應(yīng)用開發(fā)有更為深入的理解。
本書分為14章,涵蓋的主要內(nèi)容有Kotlin簡(jiǎn)介,Kotlin語法基礎(chǔ),類型系統(tǒng)與可空類型,類與面向?qū)ο缶幊?,函?shù)與函數(shù)式編程,擴(kuò)展函數(shù)與屬性,集合類,泛型,文件I/O操作、正則表達(dá)式與多線程,使用Kotlin創(chuàng)建DSL,運(yùn)算符重載與約定,元編程、注解與反射,Kotlin集成Spring Boot服務(wù)端開發(fā),使用Kotlin進(jìn)行Android開發(fā)。
6. Java從入門到精通
本書從初學(xué)者角度出發(fā),通過通俗易懂的語言、豐富多彩的實(shí)例,詳細(xì)介紹了使用Java語言進(jìn)行程序開發(fā)需要掌握的知識(shí)。全書分為28章,包括初識(shí)Java,熟悉Eclipse開發(fā)工具,Java語言基礎(chǔ),流程控制,字符串,數(shù)組,類和對(duì)象,包裝類,數(shù)字處理類,接口、繼承與多態(tài),類的高級(jí)特性,異常處理,Swing程序設(shè)計(jì),集合類,I/O(輸入/輸出),反射,枚舉類型與泛型,多線程,網(wǎng)絡(luò)通信,數(shù)據(jù)庫操作,Swing表格組件,Swing樹組件,Swing其他高級(jí)組件,高級(jí)布局管理器,高級(jí)事件處理,AWT繪圖與音頻播放,打印技術(shù)和企業(yè)進(jìn)銷存管理系統(tǒng)等。書中所有知識(shí)都結(jié)合具體實(shí)例進(jìn)行介紹,涉及的程序代碼給出了詳細(xì)的注釋,可以使讀者輕松領(lǐng)會(huì)Java程序開發(fā)的精髓,快速提高開發(fā)技能。
7. 第一行代碼Android
本書被Android開發(fā)者譽(yù)為Android學(xué)習(xí)經(jīng)典。全書系統(tǒng)全面、循序漸進(jìn)地介紹了Android軟件開發(fā)的知識(shí)、經(jīng)驗(yàn)和技巧。
第2版基于Android 7.0對(duì)第1版進(jìn)行了全面更新,將所有知識(shí)點(diǎn)都在新的Android系統(tǒng)上進(jìn)行重新適配,使用全新的Android Studio開發(fā)工具代替之前的Eclipse,并添加了對(duì)Material Design、運(yùn)行時(shí)權(quán)限、Gradle、RecyclerView、百分比布局、OkHttp、Lambda表達(dá)式等全新知識(shí)點(diǎn)的詳細(xì)講解。
本書內(nèi)容通俗易懂,由淺入深,既適合Android初學(xué)者的入門,也適合Android開發(fā)者的進(jìn)階。
8. Linux內(nèi)核設(shè)計(jì)與實(shí)現(xiàn)
本書基于Linux 2.6.34內(nèi)核詳細(xì)介紹了Linux內(nèi)核系統(tǒng),覆蓋了從核心內(nèi)核系統(tǒng)的應(yīng)用到內(nèi)核設(shè)計(jì)與實(shí)現(xiàn)等各方面的內(nèi)容。本書主要內(nèi)容包括:進(jìn)程管理、進(jìn)程調(diào)度、時(shí)間管理和定時(shí)器、系統(tǒng)調(diào)用接口、內(nèi)存尋址、內(nèi)存管理和頁緩存、VFS、內(nèi)核同步以及調(diào)試技術(shù)等。同時(shí)本書也涵蓋了Linux 2.6內(nèi)核中頗具特色的內(nèi)容,包括CFS調(diào)度程序、搶占式內(nèi)核、塊I/O層以及I/O調(diào)度程序等。本書采用理論與實(shí)踐相結(jié)合的路線,能夠帶領(lǐng)讀者快速走進(jìn)Linux內(nèi)核世界,真正開發(fā)內(nèi)核代碼。
原文標(biāo)題:鴻蒙系統(tǒng)用什么語言開發(fā)?鴻蒙OS開發(fā)平臺(tái)編程用什么軟件?
文章出處:【微信公眾號(hào):電子發(fā)燒友網(wǎng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
-
編程
+關(guān)注
關(guān)注
88文章
3616瀏覽量
93740 -
鴻蒙
+關(guān)注
關(guān)注
57文章
2352瀏覽量
42863
原文標(biāo)題:鴻蒙系統(tǒng)用什么語言開發(fā)?鴻蒙OS開發(fā)平臺(tái)編程用什么軟件?
文章出處:【微信號(hào):elecfans,微信公眾號(hào):電子發(fā)燒友網(wǎng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論