轉(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以及它們之間的交互抽象成線(xiàn)程华临、進(jìn)程。端考。雅潭。邏輯元乃至簡(jiǎn)單的開(kāi)關(guān)、有無(wú)却特,這個(gè)過(guò)程又是充滿(mǎn)了各種挑戰(zhàn)扶供。好在計(jì)算機(jī)科學(xué)不同于數(shù)學(xué)物理,它是先有了高度抽象的東西(電路)裂明,然后才有的自上而下的探索椿浓,畢竟自上而下的變革總是會(huì)有更少的犧牲,這么看來(lái)計(jì)算機(jī)發(fā)展的這么快也不足為奇闽晦。
從這個(gè)角度理解的話(huà)扳碍,我們真的在計(jì)算機(jī)面前扮演了造物主的角色了。
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)的話(huà))喷面。“設(shè)計(jì)模式+面向?qū)ο蟮恼Z(yǔ)言”走孽,就像“社會(huì)規(guī)則+具有專(zhuān)業(yè)技能的人”惧辈,代碼如同人類(lèi)一樣生活在計(jì)算機(jī)里,知道自己的職能磕瓷,知道自己的權(quán)限盒齿,被各種規(guī)則約束……當(dāng)然,代碼并不是一味地追求可讀困食,瘋狂追求性能的c/c++边翁,為了安全各種符號(hào)滿(mǎn)天飛的objective-c和swift,強(qiáng)行模擬多線(xiàn)程的javascript(日了狗的CS-570)硕盹。如何把握安全符匾、高效、可擴(kuò)展瘩例、可讀之類(lèi)屬性之間的平衡啊胶,我想這才是一個(gè)寫(xiě)代碼的人真正在關(guān)心的事情。
3.態(tài)度
代碼的世界里沒(méi)有膜法(+1s)
事實(shí)上只要有好奇心焰坪,就可以理解關(guān)于計(jì)算機(jī)的一切,甚至可以親手實(shí)現(xiàn)它聘惦,這是很美妙的某饰。
從電流開(kāi)始被一步步隔離、封裝善绎,直到最后展現(xiàn)在屏幕上面露乏,每一步都是有理可循的,沒(méi)有任何一個(gè)角落是不可理解的涂邀,如果說(shuō)把視界限定在電流瘟仿、電壓以上,那么計(jì)算機(jī)的世界幾乎是個(gè)可知的世界比勉,一切都可以被理解劳较、實(shí)現(xiàn)驹止,人們只需要把精力放在探索、創(chuàng)造上观蜗,這把上帝癮臊恋,不過(guò)不行啊
畢竟這個(gè)世界上恐怕沒(méi)有比計(jì)算機(jī)更講道理的東西了
(完)