您的位置:首頁>正文

一名大學實習生居然對Python理解的這麼深!企業程式師都沒這麼牛

自學是一種方法, 但是自學成才的百分之一吧!這樣的人很少, 小編建議大家如果經濟條件容許的話, 最好是可以報個培訓吧, 不管是效率還是就業都會快很多!經濟條件苦難的話就選擇自學吧!自學的人很多, 但是真學會了的沒幾個!自學過程中一定要堅持!不要輕易放棄。

我相信:付出總有回報, 時間稍縱即逝。

關於Java跨平臺

和C++相比, 很重要的一點就是:C++編譯生成的是純二進位的機器指令, 而Java編譯生成的是非純二進位的位元組碼。 而這種Unicode位元組碼是不依賴特定的電腦硬體架構而存在的--這就意味著只要有JVM環境, 你的位元組碼就可以在任何平臺上運行。 其次, Java位元組碼的二進位資料以固定的格式進行存儲和傳輸,

消除了位元組順序的干擾。

Java為什麼能跨平臺?因為位元組碼實在虛擬機器上運行的, 而不是編譯器, 是因為JVM能跨平臺安裝, 所以相應Java位元組碼便可以在任何平臺上運行。 只要JVM自身的代碼能在相應平臺上運行, 即JVM可行, 則Java的程式師就可以不用考慮所在的程式要在哪裡運行, 反正都是在虛擬機器上運行, 然後變成相應的機器語言, 而這個轉變並不是程式師應該關心的。

程式設計語言進化

機器語言

由於電腦內部只能接受二進位碼, 因此, 用二進位碼0和1描述的指令稱為及機器指令, 全部機器指令的集合構成電腦的機器語言。

機器語言屬於低階語言。

編出的程式全是些0和1的指令代碼, 直觀性差, 還容易出錯, 除了電腦生產廠家的專業人員外, 絕大多數的程式師已經不再去學習機器語言了。

機器語言是微處理器理解和使用的, 儘管機器語言好像是很複雜, 然而它是有規律的。

存在著多至100000種機器語言的指令。 這意味著不能把這些種類全部列出來。

高階語言分類

高階語言所編制的程式不能直接被電腦識別,必須經過轉換才可以執行。

按照轉換方式可以將他們分為兩類

編譯型

解釋型

編譯型

編譯是指在應用來源程式執行之前,就將程式原始程式碼“翻譯”成目標代碼(機器語言),因此其目的程式可以脫離其語言環境獨立執行(編譯後生成的可執行檔,是cpu可以理解的2進制的機器碼組成的),使用比較方便、效率較高。但應用程式一旦需要修改,就必須先修改原始程式碼,再重新編譯新的目的檔案才能執行,只有目的檔案而沒有原始程式碼,修改很不方便。

編譯後程式運行時不需要重新編譯,直接使用編譯的結果就可以了。程式執行效率高,依賴編譯器,跨平臺性差些,如C,C++等。

編譯型VS解釋型

編譯型

把原始程式碼編譯成機器語言的可執行程式;

執行 可執行程式檔;

優點

執行速度快,不再需要原始程式碼,不依賴語言環境,因為執行的是機器碼檔;

執行速度快,因為程式碼已經翻譯成了是電腦可以直接理解的機器語言;

缺點

每次修改了原始程式碼,需要重新編譯,生成機器碼檔;

跨平臺性不好,不同作業系統,調用底層的機器指令不同,需為不同平臺生成不同的機器碼檔;

解釋型

用戶調用解譯器,執行原始程式碼檔;

解譯器將原始程式碼檔邊解釋成機器指令,邊交給cpu處理;

優點

天生跨平臺,因為解譯器已經做好了對不同平臺的交互處理,使用者寫的原始程式碼不需要考慮平臺差異性,可謂,一份原始程式碼,所有平臺都可直接執行;

隨時修改,立刻見效,改完原始程式碼後,直接運行看效果;

缺點

運行效率低,所有的代碼均需經過解譯器邊解釋邊執行,速度比編譯型慢很多

代碼是明文

小節

機器語言

優點是最底層,速度最快,缺點是最複雜,開發效率最低

組合語言

優點是比較底層,速度最快,缺點是複雜,開發效率最低

高階語言

編譯型語言執行速度快,不依賴語言環境運行,跨平臺差

解釋型跨平臺好,一份代碼,到處使用,缺點是執行速度慢,依賴解譯器運行

高階語言分類

高階語言所編制的程式不能直接被電腦識別,必須經過轉換才可以執行。

按照轉換方式可以將他們分為兩類

編譯型

解釋型

編譯型

編譯是指在應用來源程式執行之前,就將程式原始程式碼“翻譯”成目標代碼(機器語言),因此其目的程式可以脫離其語言環境獨立執行(編譯後生成的可執行檔,是cpu可以理解的2進制的機器碼組成的),使用比較方便、效率較高。但應用程式一旦需要修改,就必須先修改原始程式碼,再重新編譯新的目的檔案才能執行,只有目的檔案而沒有原始程式碼,修改很不方便。

編譯後程式運行時不需要重新編譯,直接使用編譯的結果就可以了。程式執行效率高,依賴編譯器,跨平臺性差些,如C,C++等。

編譯型VS解釋型

編譯型

把原始程式碼編譯成機器語言的可執行程式;

執行 可執行程式檔;

優點

執行速度快,不再需要原始程式碼,不依賴語言環境,因為執行的是機器碼檔;

執行速度快,因為程式碼已經翻譯成了是電腦可以直接理解的機器語言;

缺點

每次修改了原始程式碼,需要重新編譯,生成機器碼檔;

跨平臺性不好,不同作業系統,調用底層的機器指令不同,需為不同平臺生成不同的機器碼檔;

解釋型

用戶調用解譯器,執行原始程式碼檔;

解譯器將原始程式碼檔邊解釋成機器指令,邊交給cpu處理;

優點

天生跨平臺,因為解譯器已經做好了對不同平臺的交互處理,使用者寫的原始程式碼不需要考慮平臺差異性,可謂,一份原始程式碼,所有平臺都可直接執行;

隨時修改,立刻見效,改完原始程式碼後,直接運行看效果;

缺點

運行效率低,所有的代碼均需經過解譯器邊解釋邊執行,速度比編譯型慢很多

代碼是明文

小節

機器語言

優點是最底層,速度最快,缺點是最複雜,開發效率最低

組合語言

優點是比較底層,速度最快,缺點是複雜,開發效率最低

高階語言

編譯型語言執行速度快,不依賴語言環境運行,跨平臺差

解釋型跨平臺好,一份代碼,到處使用,缺點是執行速度慢,依賴解譯器運行

同類文章
Next Article
喜欢就按个赞吧!!!
点击关闭提示