看到知乎上有這麼乙個問題:你的程式設計能力從什麼時候開始突飛猛進?我就隨手一答,沒想到點讚量和閱讀量挺高的,看來很多人都感同身受或者深受啟發,所以在這裡再給大家分享一下吧。
我來講講我的故事,或許對大家程式設計有所啟發。
階段一:毫無章法
那應該是在 2011 年,那時我是大二,我特別喜歡程式設計,我雖然讀的是計算機專業,但是畢竟理論學習和社會實踐並不接軌。我學習有點著急,想趕緊進行專案實戰,那時候正直移動開發興起的時候,聽學長(其實是我現在的媳婦)說現在移動開發很火,在一線城市做 ios 開發和 android 開發很值錢。
這就是階段一的情況,學的不系統,毫無章法,各種拼湊,磕磕絆絆。
階段二:強化理解,入門了
頓時感覺自己開悟了。
強化理解,讓我入門了,從此掌握了學習程式語言的真諦的感覺,醍醐灌頂。
說到這裡,其實挺羨慕現在的人學習程式設計的,因為太方便了,不像我們那個年代網上學習資料和課程都很少,需要自己研究,慢慢啃,現在網上的教學課程都很系統,資料也特別多。
階段三:頓悟公升級,突飛猛進
如果說階段二讓我深刻理解了學習程式設計的真諦是:要從基礎構建系統全面的學習體系,深刻理解基礎原理的話。那麼階段三就是從原始碼和開源入手,掌握程式設計的翅膀。
其實,像程式語言基礎的語法,資料結構,演算法這類東西,還有一些計算機原理之類的知識,這些東西都是程式設計和實踐的根本。他們看似枯燥和基礎,但是具有最長久的生命力。這是我開悟的第一層真諦。
我自學 android 的時候,慢慢漸入佳境,突然有一天我要實現乙個非常炫酷的效果的時候,在網上搜了很久,都沒有找到解決辦法,直到看到一篇文章在講原始碼,要自定義 view ,就要看 view 類的原始碼,看看裡面有哪些事件和方法,你要重寫這些事件或者方法,就可以實現自己想要的效果。
以後在遇到自定義 view ,實現炫酷效果時,基本上都難不倒我了。
突飛猛進正在開始。
後來,隨著移動開發越來越火,另外也深刻了解了 github 之後,才發現,自己原來也不需要重複造輪子,很多牛人都在裡面開源,而這正是為了我的程式設計插上了翅膀。我在遇到一些比較難的效果的時候,現在 github 尋找有沒有現成的庫,如果沒有,那就自己動手寫,如果有現成的,就直接用,不用重複造輪子,那時候,我感覺程式設計太快了。
後來,我想既然人家開源,我為什麼不開源呢?我就把自己常用的一些效果和方法進行了封裝,我也開源或者弄成工具類,等下個專案再用的時候,我就不用再寫一遍了,直接引入就可以啦。
沒錯,到這個時候,我才真正的感覺到自己的程式設計突飛猛進了。
我們簡單來梳理一下:
階段二:強化理解基礎,從基礎原理來深刻理解程式語言才能讓你舉一反三;
階段三:深入理解系統原始碼,學會看原始碼,會讓你作為乙個程式設計師有一種天生驕傲,什麼效果都難不倒我,再到自己封裝工具,使用開源,讓你的效率飛速提公升。
你看,其實程式設計如果你到了階段三,再回顧之前,你就會發現程式設計其實就是那麼簡單。
而整個學習的歷程對我幫助很大,對於畢業後學習 python 也起到了至關重要的作用,讓我更深一層的理解到所有的程式語言都是相通的。
在未來,是 it 的時代,人人都會程式設計的時代,作為乙個程式設計師在敲出**,實現出效果的那一刻,有一種天生驕傲感,感覺是這個時代的主人,這個時代由我主宰。
你什麼時候放下,什麼時候就沒有煩惱。
一 有這樣乙個古寺,寺裡的老方丈養了乙隻狗,取名 放下 於是每天早晚,老方丈都會拿著乙個碗,喊 放下!放下!叫這只狗來吃飯。很奇怪,就問他為什麼給狗取了這麼乙個名,方丈就對他說 我每天早晚喊 放下 來吃飯,其實是在告訴自己 放下 放下你的仇恨,放下你的耿耿於懷,放下你的忐忑,放下你的抱怨 關於放下,...
什麼時候你可以創業?
什麼時候你可以創業?這個問題我不問那些涉世未深的創業者。我問那些經歷過風風雨雨的創業者。大致分來,也許可以分出以下幾種創業者 l 覺得自己比老闆強而創業的 l 有客戶資源的 l 有融資能力的 l 有發財夢想的 l 想解決乙個實際問題的 l 無他,唯創業熱情爾的。不管過去的兩年,網際網路多麼動盪,多麼...
什麼時候你可以創業?
什麼時候你可以創業?這個問題我不問那些涉世未深的創業者。我問那些經歷過風風雨雨的創業者。大致分來,也許可以分出以下幾種創業者 l覺得自己比老闆強而創業的 l有客戶資源的 l有融資能力的 l有發財夢想的 l想解決乙個實際問題的 l無他,唯創業熱情爾的。不管過去的兩年,網際網路多麼動盪,多麼醜陋,前仆後...