學(xué)習(xí)編程的一點(diǎn)總結(jié)和看法

轉(zhuǎn)CS轉(zhuǎn)眼已快到一年,說(shuō)說(shuō)收獲吧
#include<iostream>

int main(int argc, char *argv[]) {

    std::cout << "Hello World" << std::endl;

}

1.抽象

將生活中最為具象的細(xì)節(jié)抽象成為能讓計(jì)算機(jī)來(lái)做的事情,這可能就是我理解的編程的任務(wù)。然而將近乎可以無(wú)限細(xì)分的真實(shí)世界計(jì)算出來(lái),保持一個(gè)準(zhǔn)確的狀態(tài),預(yù)知下一次動(dòng)作,這可能就和圖靈的“無(wú)限紙帶”一樣難以實(shí)現(xiàn)。值得慶幸的是作為一個(gè)正常人的感知能力是有限的,所以在我們眼中的真實(shí)只是在我們觀測(cè)范圍內(nèi)的真實(shí),要做到這樣的模擬并不需要那么長(zhǎng)的“紙帶”,也許在許多年后硬件算法高度發(fā)達(dá)的時(shí)候,真的可以“以假亂真”吧,想想還有點(diǎn)小興奮呢。

人工智能

個(gè)人認(rèn)為“類(lèi)比”是理解抽象的極為有效的方法,理解“封裝”的時(shí)候類(lèi)比了“黑盒”,理解“遞歸”的時(shí)候類(lèi)比了“分形”,刷題的時(shí)候則類(lèi)比了無(wú)數(shù)的圖形(其實(shí)最后基本都是樹(shù)狀結(jié)構(gòu))。而我理解的“面向?qū)ο缶幊獭本褪怯妙?lèi)比的方法總結(jié)出來(lái)的高度抽象的模型,以此模型可以在遵循一定規(guī)則的情況下模擬生活中大量的事物。但是將object以及它們之間的交互抽象成線程、進(jìn)程。。。邏輯元乃至簡(jiǎn)單的開(kāi)關(guān)、有無(wú),這個(gè)過(guò)程又是充滿了各種挑戰(zhàn)。好在計(jì)算機(jī)科學(xué)不同于數(shù)學(xué)物理,它是先有了高度抽象的東西(電路),然后才有的自上而下的探索,畢竟自上而下的變革總是會(huì)有更少的犧牲,這么看來(lái)計(jì)算機(jī)發(fā)展的這么快也不足為奇。

從這個(gè)角度理解的話,我們真的在計(jì)算機(jī)面前扮演了造物主的角色了。

女生說(shuō)學(xué)不好編程的請(qǐng)看下ENIAC面前這幾個(gè)人

2.代碼

我第一次聽(tīng)到“工業(yè)級(jí)代碼”這個(gè)說(shuō)法的時(shí)候嚇了一跳:原來(lái)代碼的世界已經(jīng)如此接近現(xiàn)實(shí)。
現(xiàn)在回頭看當(dāng)初,阻礙我學(xué)習(xí)的最大矛盾恐怕是我太過(guò)于把代碼當(dāng)成硬件,里面的術(shù)語(yǔ)諸如接口、協(xié)議、多態(tài)、成員甚至是數(shù)據(jù)結(jié)構(gòu)、算法,這些東西真的就是字面意而已(笑),然而硬件還是那個(gè)硬件,代碼可不是原來(lái)那個(gè)代碼了。除了比較底層的代碼(操作系統(tǒng)之類(lèi)),生產(chǎn)生活中的絕大部份代碼已經(jīng)具備了驚人的可讀性,稍加訓(xùn)練的人便可以像讀英文一樣讀代碼(不在意具體實(shí)現(xiàn)的話)?!霸O(shè)計(jì)模式+面向?qū)ο蟮恼Z(yǔ)言”,就像“社會(huì)規(guī)則+具有專(zhuān)業(yè)技能的人”,代碼如同人類(lèi)一樣生活在計(jì)算機(jī)里,知道自己的職能,知道自己的權(quán)限,被各種規(guī)則約束……當(dāng)然,代碼并不是一味地追求可讀,瘋狂追求性能的c/c++,為了安全各種符號(hào)滿天飛的objective-c和swift,強(qiáng)行模擬多線程的javascript(日了狗的CS-570)。如何把握安全、高效、可擴(kuò)展、可讀之類(lèi)屬性之間的平衡,我想這才是一個(gè)寫(xiě)代碼的人真正在關(guān)心的事情。

我寫(xiě)的第一個(gè)項(xiàng)目的代碼,辣眼睛……

3.態(tài)度

代碼的世界里沒(méi)有膜法(+1s)

事實(shí)上只要有好奇心,就可以理解關(guān)于計(jì)算機(jī)的一切,甚至可以親手實(shí)現(xiàn)它,這是很美妙的。

iPhone app 能完整顯示的紅點(diǎn)數(shù)字上線是999,999個(gè)

從電流開(kāi)始被一步步隔離、封裝,直到最后展現(xiàn)在屏幕上面,每一步都是有理可循的,沒(méi)有任何一個(gè)角落是不可理解的,如果說(shuō)把視界限定在電流、電壓以上,那么計(jì)算機(jī)的世界幾乎是個(gè)可知的世界,一切都可以被理解、實(shí)現(xiàn),人們只需要把精力放在探索、創(chuàng)造上,這把上帝癮,不過(guò)不行啊

過(guò)癮中的我

畢竟這個(gè)世界上恐怕沒(méi)有比計(jì)算機(jī)更講道理的東西了
(完)

最后編輯于
?著作權(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)容