看造房子的故事需五,明白自學(xué)編程的秘訣

我是霖哥,一個因興趣入行的商學(xué)院畢業(yè)的程序員轧坎。霖哥一直覺得宏邮,編程做軟件,就像造房子缸血。所以蜜氨,我想把我自學(xué)編程的經(jīng)歷,毫無保留的分享出來捎泻。

畢業(yè)了飒炎,卻不會造軟件

有很多的大學(xué)計(jì)算機(jī)專業(yè)的畢業(yè)生,到他們畢業(yè)的那一刻笆豁,卻還是搞不懂郎汪,怎么樣去開發(fā)一個軟件。

可是闯狱,他們明明在學(xué)校里面的成績就不錯啊煞赢,什么C語言、Java語言等編程語言課程哄孤,數(shù)據(jù)結(jié)構(gòu)啊照筑,編譯原理啊這些,都學(xué)的還不錯,甚至還拿過獎學(xué)金凝危,可是很多為什么依然沒有動手能力波俄,去完成一個軟件開發(fā)呢?

我們媒抠,先從一個造房子的故事來開始說起弟断。

造房子

在上一篇文章里面,霖哥把“函數(shù)”比喻成“磚頭”趴生,把“架構(gòu)”比喻成“建筑結(jié)構(gòu)”阀趴,說編程就像造房子。

為了說明這個問題苍匆,霖哥專門斥巨資買了一個房子的玩具刘急。

就是這一個玩具房子,霖哥從網(wǎng)上買來的浸踩,除了一個房子叔汁,還有家具,布娃娃检碗,你可以自由地把它們組合擺放据块。

(圖:復(fù)雜多樣的零配件)

拆開長長的包裝盒,會發(fā)現(xiàn)折剃,這個玩具房子會有各種各樣的零件另假,并且它會有一個說明書。霖哥把零件出來怕犁,然后根據(jù)說明書边篮,一件一件的把零件給組裝起來,它就變成了一個完整的房子奏甫。

這可能對大家來說戈轿,會覺得,這不是很正常嗎阵子?

可是我們往深里想一些細(xì)節(jié):

這個椅子是用什么材質(zhì)做出來的思杯?

里面的娃娃,用什么材料制作的款筑?

上色的顏料智蝠,是用的什么牌子的?

這個玩具的奈梳,整體是怎么設(shè)計(jì)出來的杈湾?

作為消費(fèi)者,你不需要知道攘须,你也不想知道漆撞,你恨不得買回來的,一整個玩具房子幫你裝好了。

我們回到現(xiàn)實(shí)生活中浮驳,所有的房子的建造悍汛,不都是這樣的嗎?

房地產(chǎn)開發(fā)工人至会,他們?nèi)ベI不同牌子的水泥离咐,不同牌子的鋼筋,不同牌子的管道等等等等奉件。在造房子的過程中宵蛀,無數(shù)的零配件都是通過第三方購買而得來的。

沒有人說為了造一個房子县貌,自己去生產(chǎn)水泥术陶,自己去生產(chǎn)鋼筋,這不太可能煤痕,對吧梧宫?

用造房子的思維,自學(xué)編程

很多自學(xué)編程的同學(xué)都來問我摆碉,自己在學(xué)習(xí)Java語言塘匣、C語言一段時間了,感覺距離要做項(xiàng)目巷帝、找工作馆铁,還遙遙無期。

有這么一個人锅睛,覺得高樓很宏偉、很漂亮历谍,他從小有一個夢想现拒,去建造一棟超級高樓,然后他就學(xué)習(xí)攪拌水泥望侈,學(xué)習(xí)粉刷墻面印蔬,學(xué)習(xí)打釘子等等。

可是脱衙,學(xué)會了這些侥猬,距離他建造一棟高樓的夢想,還有非常遙遠(yuǎn)的距離啊捐韩。

現(xiàn)實(shí)生活里面退唠,我們不會遇到這種人吧?如果有一個人真的有一個夢想去造高樓荤胁,他絕對不會去學(xué)習(xí)打釘子瞧预,相對的,他更可能會去建筑學(xué)院,去學(xué)習(xí)建筑設(shè)計(jì)垢油,CAD制圖等等盆驹。

而在霖哥看來,這種學(xué)打釘滩愁,學(xué)刷墻躯喇,有點(diǎn)像學(xué)習(xí)編程的時候,大把大把的時間硝枉,學(xué)習(xí)計(jì)算機(jī)運(yùn)行廉丽、硬件機(jī)制等一些基礎(chǔ)的東西。大學(xué)課程檀咙,花去我們大量的學(xué)習(xí)時間去學(xué)習(xí)的這些知識雅倒,距離我們最初的夢想,去做一個軟件弧可,還有很遠(yuǎn)很遠(yuǎn)的路蔑匣。

這樣一個比喻,我們可以大概看出棕诵,跟想造房子的人會去讀建筑設(shè)計(jì)的人不一樣裁良,現(xiàn)在的學(xué)習(xí)編程課程,很少人說會像學(xué)建筑那樣校套,先學(xué)軟件開發(fā)整體設(shè)計(jì)价脾,而是一上來先學(xué)習(xí)怎么“打釘”,“刷墻”笛匙。

拿霖哥自己來說吧侨把,霖哥最初只是想實(shí)現(xiàn)一個自己的想法,做出一個社交網(wǎng)站妹孙,可以被很多人使用秋柄,這就是霖哥最初的夢想。只是在實(shí)現(xiàn)這個想法的過程中蠢正,不小心地學(xué)習(xí)了編程骇笔,自學(xué)得越來越深,不小心進(jìn)入了這個行業(yè)嚣崭。

在上兩篇文章里面笨触,霖哥都提過一個思想叫做,函數(shù)思維雹舀。我說過了一個軟件程序芦劣,90%都是通過各種各樣的函數(shù)給堆砌起來的。

我們在學(xué)校里面學(xué)習(xí)的編程語言说榆、數(shù)據(jù)結(jié)構(gòu)持寄。構(gòu)成了函數(shù)的基礎(chǔ)源梭。但是,要做出一個完整的軟件稍味,我們更重要的一點(diǎn)是废麻,我們要知道,有什么函數(shù)來給我們服務(wù)模庐。

這些函數(shù)就像我們上面這個房子玩具里的配件烛愧。

在實(shí)際的軟件開發(fā)過程中,我們就像造一個房子一樣掂碱。去找出各種各樣不同的函數(shù)來為我們服務(wù)怜姿。

而學(xué)校里面偏偏沒有教這樣的技能,所以很多的畢業(yè)生疼燥,到畢業(yè)為止沧卢,他們只知道了基礎(chǔ)的編程語言語法,基礎(chǔ)的知識醉者。

要真正的去完成開發(fā)一個軟件程序但狭,則還需要大量的“函數(shù)”知識,知道要完成某一個模塊撬即,需要什么樣的“函數(shù)”和第三方庫立磁,
還有各種各樣的的工具、框架剥槐,光學(xué)習(xí)編程語言唱歧,可學(xué)不到這些東西。

比如說你要進(jìn)行網(wǎng)絡(luò)通訊吧粒竖,我們要用socket颅崩,socket是怎么做出來的呢?你不需要知道蕊苗。

比如說實(shí)際的開發(fā)過程中挨摸,常用到map這個數(shù)據(jù)結(jié)構(gòu)。職業(yè)程序員工作中岁歉,很少會自己重新去實(shí)現(xiàn)一個,都是拿現(xiàn)成的過來用的膝蜈。

所以很多人學(xué)完一門語言锅移,覺得沒用,那是理所當(dāng)然的饱搏。

霖哥推崇的非剃,是一種至上而下的學(xué)習(xí)方法,先定一個小目標(biāo)推沸,宏觀地學(xué)習(xí)軟件設(shè)計(jì)备绽,學(xué)習(xí)框架券坞,伴隨著學(xué)習(xí)的深入,再注重具體的技術(shù)實(shí)現(xiàn)細(xì)節(jié)肺素。

爬蟲

霖哥有一個朋友恨锚,他并不懂編程,他是金融行業(yè)的倍靡,想做一個爬蟲程序猴伶,可以去搜集一些的股票數(shù)據(jù),自己做數(shù)據(jù)分析塌西。

他花了不少的錢他挎,報名網(wǎng)上自學(xué)編程的課程學(xué)習(xí)。他覺得花了很多的時間捡需,好像課程一直都上不完了办桨,距離自己的那一個目標(biāo)遙遙無期,感到非常的沮喪站辉。

霖哥就告訴他呢撞,編程開發(fā)就像造房子,為了造房子得找到各種零配件庵寞;既然你想做一個爬蟲狸相,你就要去找到實(shí)現(xiàn)爬蟲的工具。

因?yàn)樗菍W(xué)習(xí)Python的捐川,霖哥就介紹他一個Python的爬蟲框架脓鹃,叫做scrapy,一個Python開發(fā)的專門用來爬去網(wǎng)絡(luò)數(shù)據(jù)的應(yīng)用框架工具古沥,使用它你可以非常方便地抓取網(wǎng)絡(luò)數(shù)據(jù)瘸右,不需要關(guān)注很多技術(shù)的細(xì)節(jié),他都幫你處理好了岩齿,你只需要直接用就好了太颤。

他說,他還沒學(xué)習(xí)Python的網(wǎng)絡(luò)編程盹沈,也能做爬蟲龄章?霖哥說,哈哈乞封,使用scrapy完全不需要考慮這方面做裙,它都幫你做好了!你讓它“抓”肃晚,它就去“抓”锚贱,怎么“抓”,你不需要理會关串,你只需要告訴他“抓”什么就好了拧廊。

總結(jié)

今天我們講了监徘,造房子,是通過各種各樣的零配件和第三方組件來構(gòu)成的吧碾。根據(jù)這個故事作類比凰盔,在自學(xué)編程的過程中,我們也要像造房子那樣滤港,想開發(fā)一個軟件廊蜒,就應(yīng)該先去了解有什么樣的“零配件”、第三方開發(fā)組件溅漾,來讓我們做成一個軟件山叮。

可能這對很多科班出身的人來說,會覺得三觀盡毀添履。編程屁倔,就應(yīng)該慢慢地,學(xué)好基礎(chǔ)的東西暮胧,穩(wěn)扎穩(wěn)打锐借,才是學(xué)好編程的最好方法呀。

別急往衷,霖哥就是這樣一種學(xué)習(xí)方法的過來人钞翔。伴隨著做軟件的過程中,霖哥也慢慢地根據(jù)開發(fā)需要席舍,把一些基礎(chǔ)的知識學(xué)習(xí)回來布轿。在霖哥后面的文章里面,將會詳細(xì)的講述這些經(jīng)歷来颤。

霖哥希望把自己的學(xué)習(xí)方法分享出來汰扭,因?yàn)椋馗缯J(rèn)為這些經(jīng)驗(yàn)對自己很有用福铅,這就意味著對其他的很多人都會有用萝毛!只要是對人有用的,那么霖哥就相信它是有價值的滑黔,它能夠幫助到你笆包。

如果覺得有用就分享給你的朋友,轉(zhuǎn)載請注明出處《商學(xué)院畢業(yè)的程序員》略荡。

如果在了解或?qū)W習(xí)編程的過程中有迷惘庵佣、或?qū)σ恍┥鷿目萍几拍畹牟唤猓u論里留下你的疑惑撞芍!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市跨扮,隨后出現(xiàn)的幾起案子序无,更是在濱河造成了極大的恐慌验毡,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,372評論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件帝嗡,死亡現(xiàn)場離奇詭異晶通,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)哟玷,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,368評論 3 392
  • 文/潘曉璐 我一進(jìn)店門狮辽,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人巢寡,你說我怎么就攤上這事喉脖。” “怎么了抑月?”我有些...
    開封第一講書人閱讀 162,415評論 0 353
  • 文/不壞的土叔 我叫張陵树叽,是天一觀的道長。 經(jīng)常有香客問我谦絮,道長题诵,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,157評論 1 292
  • 正文 為了忘掉前任层皱,我火速辦了婚禮性锭,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘叫胖。我一直安慰自己草冈,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,171評論 6 388
  • 文/花漫 我一把揭開白布臭家。 她就那樣靜靜地躺著疲陕,像睡著了一般。 火紅的嫁衣襯著肌膚如雪钉赁。 梳的紋絲不亂的頭發(fā)上蹄殃,一...
    開封第一講書人閱讀 51,125評論 1 297
  • 那天,我揣著相機(jī)與錄音你踩,去河邊找鬼诅岩。 笑死,一個胖子當(dāng)著我的面吹牛带膜,可吹牛的內(nèi)容都是我干的吩谦。 我是一名探鬼主播,決...
    沈念sama閱讀 40,028評論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼膝藕,長吁一口氣:“原來是場噩夢啊……” “哼式廷!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起芭挽,我...
    開封第一講書人閱讀 38,887評論 0 274
  • 序言:老撾萬榮一對情侶失蹤滑废,失蹤者是張志新(化名)和其女友劉穎蝗肪,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體蠕趁,經(jīng)...
    沈念sama閱讀 45,310評論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡薛闪,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,533評論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了俺陋。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片豁延。...
    茶點(diǎn)故事閱讀 39,690評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖腊状,靈堂內(nèi)的尸體忽然破棺而出诱咏,到底是詐尸還是另有隱情,我是刑警寧澤寿酌,帶...
    沈念sama閱讀 35,411評論 5 343
  • 正文 年R本政府宣布胰苏,位于F島的核電站,受9級特大地震影響醇疼,放射性物質(zhì)發(fā)生泄漏硕并。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,004評論 3 325
  • 文/蒙蒙 一秧荆、第九天 我趴在偏房一處隱蔽的房頂上張望倔毙。 院中可真熱鬧,春花似錦乙濒、人聲如沸陕赃。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,659評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽么库。三九已至,卻和暖如春甘有,著一層夾襖步出監(jiān)牢的瞬間诉儒,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,812評論 1 268
  • 我被黑心中介騙來泰國打工亏掀, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留忱反,地道東北人。 一個月前我還...
    沈念sama閱讀 47,693評論 2 368
  • 正文 我出身青樓滤愕,卻偏偏與公主長得像温算,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子间影,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,577評論 2 353

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,071評論 25 707
  • 我是霖哥,一個因興趣入行的商學(xué)院畢業(yè)的程序員巩割。最近有不少人胰丁,來問我,想學(xué)編程喂分,但是又不知怎么開始。所以机蔗,我想把我8...
    陳凱利閱讀 7,654評論 31 195
  • 我是霖哥萝嘁,一個因興趣入行的商學(xué)院畢業(yè)的程序員梆掸。總有不少不是做IT的朋友牙言,來問各種各樣的科技概念性的問題酸钦。所以,我想...
    陳凱利閱讀 867評論 4 12
  • 一條路咱枉,兩個人卑硫, 那么簡單卻還是那么多人走散, 這究竟是為什么蚕断, 難道真心換不了你的心欢伏? 路上的人們,請用心牽著一...
    鐵血鴨蛋閱讀 153評論 0 0
  • 2017年 4月21日 星期五 今天孩子們終于迎來了盼望已久的運(yùn)動會亿乳,我有幸被邀請參加硝拧。回想女兒賽前的刻苦鍛煉...
    李卓群媽媽閱讀 259評論 0 3