程式設計課程選哪個好?Python和Java分析給你聽!(下)

想上程式設計課程到底該選Python還Java?聽完分析相信你心中有答案!(下)

 

 

本系列文章為【第一次上程式設計課程該選 Python 還是 Java?有什麼差別?】的下篇,上篇請點此

python_or_java_meme-1.jpg

▲ 網路上盛傳的 Java 與 Python 程式語言比較迷因圖,顯示現代人對於精簡的 Python 接受度比較高

3. 靜態與動態

Python Java 最大的區別之一在於:兩種語言處理變數的方式:Java 是靜態類型的,而 Python 是動態類型的。

Java 要求在第一次聲明變數時,就必須要定義它的類型,而且不可再修改,這就是所謂「靜態類型」;而 Python 無需立即聲明變數的類型,且後續可以改變一個變數的類型,例如可以把整數變數替換為字串(string)。

同樣,函數參數可以傳入任何對象。「鴨子型別」(duck typing)使 Python 非常方便且易於使用。不過,這也非常容易讓下一個接手代碼的人難以理解,除非附上完善的標註。

4. 編譯與直譯

高階語言(high-level language)都需要先經轉換,才能將原始程式碼「翻譯」成機器看得懂的二進位機器碼。因「翻譯」動作的不同,而將程式語言分為「編譯式語言」(compiled language)和直譯式語言(interpreted language)兩種。

Python 是一種直譯語言,需要安裝一個直譯器(interpreter)將執行到的區塊進行解析(parse),再執行對應的機器碼。因此,執行效率較低於編譯式語言。

這也表示其他人要使用你的程式碼,同樣需要安裝直譯器,沒辦法直接將其發送給同事或客戶。

這既是 Python 的缺點、也是優點,如果要建構用於商業用途的程式,需要倚賴直譯器與多一道直譯流程;但這也表示可以將 Python 添加到 PATH、或直接在 cmd 下運行 Python 腳本,而無需經歷冗長的編譯階段。

Java 技術上既可以直譯也可以編譯。就好像是編譯語言,會先把程式原始碼編譯成位元組碼(byte code),再將位元組碼直譯之後執行。這種技術會比純編譯語言來的慢一些,但是卻又擁有直譯語言的特性。也因此 Java 程式碼通常更具可移植性。

對初學者來說,哪個更容易入門?

推薦閱讀:使用 Java、Python、C 等 22 種程式語言寫出「Hello World」!

初學者通常更適合從 Python 著手、打開通往程式設計領域的大門。即使對於還沒弄清楚(Class)和物件(Object)概念的人,依然可以合乎邏輯地使用 Python,而且它簡潔的代碼畫面,可以為初學者減低精神壓力和提供喘息空間,它的靈活性也很強,足以在課堂外使用。

如果對建立 Web 應用程式、與科技新創公司合作或對資料科學感興趣,那麼 Python 將會是你不錯的選擇。

另一面來說,Java 的複雜性和各種規則「可能」有助於你早期就養成良好的習慣,並且為將來專業程式設計師的職業生涯做好準備。

假如你希望未來在一家大公司任職程式設計師、想要製作 Android 的 APP 或者已經決定未來要學習要 C 語言,那麼 Java 是一個不錯的入門程式語言。不過要先有心理準備面對陡峭的學習曲線!

歸根結底,如果是從「簡單、易學、好上手」來看,Python 毋庸置疑是更好的起點!還在等什麼呢? 趕快手刀報名 Python 程式設計課程吧!

推薦閱讀:
非資工系出身,產品人員「Python 課程」結業後轉職大醫院當網站工程師
當了快八年的業務,因Java課程而成功轉職程式設計師

 

 

 

推薦閱讀:
使用 Java、Python、C 等 22 種程式語言寫出「Hello World」!


人工智慧電影/影集:Netflix《我的全像情人》探討人與 AI 是否有真愛


前端工程師該懂的後端技能 : MySQL教學-DDL DML DQL DCL


介面、體驗大不同!UI設計/UX設計工作內容完整剖析


上對Python課程,非資工系系也能短期轉行當網站工程師?!


我的未來我決定!品保人員靠Python課程成功轉職程式設計師!


選對Java課程,國小畢業要當程式開發工程師不是夢!

arrow
arrow

    jimchen19901212 發表在 痞客邦 留言(0) 人氣()