閑聊Java編程入門(mén)二:理解編程

歡迎訪問(wèn)我的博客,同步更新: 楓山別院

基于Java 8

什么是編程

既然大家在學(xué)習(xí)編程,那么我相信其實(shí)大家心里對(duì)編程是有一定的理解的。通俗的講,編程就是按照我們的意圖,對(duì)計(jì)算機(jī)編寫(xiě)命令,讓計(jì)算機(jī)運(yùn)行這些命令。

首先明確一點(diǎn),計(jì)算機(jī)只是個(gè)機(jī)器,他目前沒(méi)有任何的理解能力,僅僅是個(gè)能運(yùn)行命令的工具而已。它是一個(gè)榆木腦袋,死腦筋,只能按照你的命令運(yùn)行。

我覺(jué)得程序員更像是一個(gè)計(jì)算機(jī)的“馴獸師”,就像馬戲團(tuán)的馴獸師一樣,教導(dǎo)動(dòng)物去做一些表演,區(qū)別就是程序員教導(dǎo)的是一臺(tái)機(jī)器。所以我們的工作,就是發(fā)出一個(gè)一個(gè)的“口令”,讓我們的“動(dòng)物”能按照我們的意圖“表演”。

因此,我們學(xué)習(xí)編程,就是學(xué)習(xí)計(jì)算機(jī)能都“聽(tīng)懂”的命令而已。只要熟悉了計(jì)算機(jī)能聽(tīng)懂的的語(yǔ)言,那么我們就可以指揮計(jì)算機(jī)按照我們?cè)O(shè)計(jì)好的程序進(jìn)行“表演”啦。

很多很多的命令就組成了一個(gè)程序。

比如你想托朋友幫你辦個(gè)手續(xù),你寫(xiě)了一封信,告訴他,先干啥,再干啥。。。。。最后干啥,一步一步的讓你朋友幫你辦理。

寫(xiě)一個(gè)程序,就是寫(xiě)一個(gè)命令組成的“信”,你要讓計(jì)算機(jī)看懂,就要按照它的語(yǔ)言的書(shū)寫(xiě)規(guī)范來(lái)寫(xiě)這個(gè)“信”,教它一步一步給你辦理。

同樣的,假如你用外星語(yǔ)言寫(xiě)信托朋友給你辦事,估計(jì)是辦不成的。

什么是Java

其實(shí)計(jì)算機(jī)的世界,跟我們?nèi)祟惖氖澜缡怯泻芏喙餐ǖ摹?/p>

現(xiàn)在世界上最流行的人類語(yǔ)言,就是英語(yǔ)了吧。其次是普通話,法語(yǔ),日語(yǔ)等等?!癶ello”,“你好”,都表達(dá)同一個(gè)意思,就是一句你好的問(wèn)候,只是寫(xiě)法和發(fā)音不同而已。

Java也只是計(jì)算機(jī)世界中的一種語(yǔ)言而已,計(jì)算機(jī)的語(yǔ)言。其他的比較流行的,還有C,Python,Go,Rust等等,非常多的語(yǔ)言。

人類誕生出不同的語(yǔ)言,那是因?yàn)榈赜蛟颍煌牡胤阶匀徽Z(yǔ)言不同。

那么計(jì)算機(jī)為什么會(huì)有這么多種語(yǔ)言?

計(jì)算機(jī)語(yǔ)言的誕生,其實(shí)是有多種目的的。

第一個(gè)比較重要的,是不同的語(yǔ)言擅長(zhǎng)的領(lǐng)域不同。好多計(jì)算機(jī)語(yǔ)言的發(fā)明,都是因?yàn)橛腥擞X(jué)得這種語(yǔ)言在做某種工作的時(shí)候不好用,所以就自己發(fā)明了一個(gè)。比如我們要學(xué)習(xí)的Java,比較擅長(zhǎng)開(kāi)發(fā)網(wǎng)站的服務(wù)器端軟件。C語(yǔ)言就比較擅長(zhǎng)開(kāi)發(fā)與操作系統(tǒng)相關(guān)的軟件。

第二個(gè)原因就是,有些語(yǔ)言是某個(gè)公司發(fā)明的,其他公司可能與該公司有競(jìng)爭(zhēng)關(guān)系,所以不想用對(duì)手發(fā)明的語(yǔ)言,于是自己又發(fā)明了一個(gè)。比較著名的就是Google與Oracle因?yàn)閍ndroid系統(tǒng)使用Java語(yǔ)言的官司了。

不同語(yǔ)言擅長(zhǎng)的領(lǐng)域不一樣,所以我們?cè)陂_(kāi)發(fā)軟件的時(shí)候,也要考慮要使用什么語(yǔ)言比較好。

為什么會(huì)有這種差別呢?

如果我讓你造一臺(tái)車,你會(huì)不會(huì)所有的零件都自己造?從打造螺絲釘開(kāi)始?那么要猴年馬月才能造出來(lái)啊。

現(xiàn)實(shí)中,我們可以委托給一個(gè)車企代工,因?yàn)樗麄兌家呀?jīng)有相應(yīng)的生產(chǎn)線了,所以可以非常方便快捷的把車造出來(lái)。

相反,你肯定不會(huì)把造車的請(qǐng)求委托給生產(chǎn)方便面的企業(yè)吧?跨行業(yè)了,他們不擅長(zhǎng)制造。

編程語(yǔ)言也是這樣的,不同的編程語(yǔ)言就像不同的企業(yè),擅長(zhǎng)的領(lǐng)域不同。

Java在網(wǎng)頁(yè)服務(wù)端系統(tǒng)開(kāi)發(fā)的生態(tài)非常完備,這是其他語(yǔ)言比不了的。

好多開(kāi)源的軟件你可以直接拿來(lái)用,不用自己從“螺絲釘”開(kāi)始打造,汽車的零部件已經(jīng)都幫你造好了,你自己組裝改造一下就可以了。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容