java可以作為第一門(mén)編程語(yǔ)言學(xué)習(xí)嗎
十年前,Java 還是計(jì)算機(jī)科學(xué)的入門(mén)課程中的必學(xué)語(yǔ)言。如果你想學(xué)其他語(yǔ)言,比如 C、Python、PHP,你就得專(zhuān)門(mén)選那個(gè)語(yǔ)言的課程,或者選相關(guān)的應(yīng)用。但是現(xiàn)在,Java 不再受大學(xué)的青睞。根據(jù)國(guó)際計(jì)算機(jī)協(xié)會(huì)(ACM)的研究發(fā)現(xiàn),截至 2014 年,Python 已經(jīng)取代 Java 成了主流大學(xué)計(jì)算機(jī)入門(mén)課程必學(xué)的語(yǔ)言。但這個(gè)研究并不全面,因?yàn)樗桓采w了最主要的美國(guó)大學(xué),而且它代表的只是幾年前的一個(gè)時(shí)間點(diǎn)而已。但是,我依然強(qiáng)烈地感覺(jué)到,如果現(xiàn)在對(duì)計(jì)算機(jī)科學(xué)的入門(mén)課程使用的計(jì)算機(jī)語(yǔ)言做一次全面調(diào)查,那么很可能會(huì)發(fā)現(xiàn) Java 并不是最受歡迎的語(yǔ)言。我敢肯定許多學(xué)院依然在教 Java,但我也懷疑大多數(shù)已經(jīng)把入門(mén)課程改成了其他語(yǔ)言(很可能是 Python)。甚至高中的計(jì)算機(jī)教學(xué)也有同樣的現(xiàn)象。
1、Java 是使用最廣泛的語(yǔ)言,所以每個(gè)人都應(yīng)該學(xué)習(xí)它。畢竟,許多專(zhuān)業(yè)的程序員每天都在使用 Java。許多重要的應(yīng)用程序也是用 Java 寫(xiě)的,而且,就算現(xiàn)在所有人都不再寫(xiě) Java,未來(lái)幾十年中我們依然需要維護(hù)舊的 Java 代碼。但是,僅憑最流行的企業(yè)語(yǔ)言以及依然會(huì)廣泛流行幾十年這點(diǎn),并不能說(shuō)明我們應(yīng)當(dāng)總是讓學(xué)生首先學(xué)習(xí) Java。如果你是新入學(xué)的計(jì)算機(jī)科學(xué)的學(xué)生,希望用簡(jiǎn)單的辦法探索應(yīng)用程序設(shè)計(jì)和開(kāi)發(fā)的精髓,那么 Java 并不是好的起點(diǎn)。
2、從語(yǔ)言難易程度來(lái)說(shuō),Java語(yǔ)言更簡(jiǎn)單,從學(xué)習(xí)難度上來(lái)說(shuō),Java是一個(gè)比較容易上手的開(kāi)發(fā)語(yǔ)言。相對(duì)于C和C++需要開(kāi)發(fā)者自己管理內(nèi)存和指針,但是Java開(kāi)發(fā)不需要關(guān)心這些底層的東西,從而避免了一些嚴(yán)重的錯(cuò)誤。從國(guó)內(nèi)語(yǔ)言的生態(tài)來(lái)說(shuō),Java的開(kāi)發(fā)者非常多,生態(tài)比較活躍,在學(xué)習(xí)過(guò)程中遇到一些問(wèn)題基本都可以在網(wǎng)上博客、社區(qū)、相關(guān)的論壇找到解決方案。
3、并不是說(shuō) Java 不適合教學(xué)——它依然有賣(mài)點(diǎn)。Java 是跨平臺(tái)的。它有健康的生態(tài)系統(tǒng)和開(kāi)發(fā)工具,包括 Eclipse,能讓許多新手程序員的生活變得更加容易。Java 還有易于使用的文檔和社區(qū)支持,因?yàn)樘嗳硕荚谑褂?Java。所以,教 Java 究竟有沒(méi)有錯(cuò)?這個(gè)問(wèn)題很難回答。但是現(xiàn)在,Java 并不是向?qū)W生教授第一門(mén)編程語(yǔ)言的最佳選擇。在我看來(lái),Python 和 C++ 是更好的選擇。
到此這篇關(guān)于java可以作為第一門(mén)編程語(yǔ)言學(xué)習(xí)嗎的文章就介紹到這了,更多相關(guān)java可以作為起步語(yǔ)言嗎內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. XML入門(mén)精解之結(jié)構(gòu)與語(yǔ)法2. CSS Hack大全-教你如何區(qū)分出IE6-IE10、FireFox、Chrome、Opera3. CSS3實(shí)例分享之多重背景的實(shí)現(xiàn)(Multiple backgrounds)4. 利用CSS3新特性創(chuàng)建透明邊框三角5. XML入門(mén)的常見(jiàn)問(wèn)題(一)6. HTML5 Canvas繪制圖形從入門(mén)到精通7. 概述IE和SQL2k開(kāi)發(fā)一個(gè)XML聊天程序8. HTML <!DOCTYPE> 標(biāo)簽9. HTML DOM setInterval和clearInterval方法案例詳解10. XML入門(mén)的常見(jiàn)問(wèn)題(二)
