《28歲未成年》--- 寫給程序猿

前段時間看了這場電影,之前沒有聽說過任何相關內容,完全是沖著名字去的。

這部電影具體怎麼樣就不評價了 畢竟一千個人眼中有一千個哈姆雷特,咳,但可能其中600個都有點磕磣,不過王大陸還是很帥氣的。

雖然過了這麼久 但片末的一句話讓我印象深刻,作為文章的開頭。原文記不清了,大概意思是

17歲的你從未離開過,找回原來的你,還是可以無所不能的

「你丫原來是走雞湯路線的?」

這位童鞋,先牽走心頭奔騰的羊駝,不要急,畢竟雞湯在身子骨虛弱的時候也是可以補一補的。

雖然作為程序猿的你現在不需要知道宇宙第一定律,也不需要關心化學式的配平,但如果你還會從事編碼的工作一陣子 亦或一輩子.

我這有幾個不成熟的小建議,算是對自己工作這麼久的一個的經驗總結,也分享給大家.

Advertisements

心態

這裡的心態主要是指的項目中的心態。

舉例來說,一個手機項目中,有人負責鎖屏模塊,有人負責電話系統模塊。

某個茶餘飯後 負責鎖屏的同事無意間聽到了電話系統的同學在討論rild,modem這些新鮮並且相對底層的技術 覺得高大上,心身嚮往,認為自己模塊所用技術不夠底層,想拋棄自己的模塊去研究下底層技術。(很多做app的同學羨慕做系統定製的同學很有可能也是這個出發點。)

但在你決定邁出這一步的時候請先問一問自己 是否對自己的模塊了如指掌,遇到的bug能否快速定位大概的位置,推測出可能出現的情況,模塊架構是否合理,隨著版本的迭代有哪些演進。

如果並沒有清晰的回答,還是建議先沉下心來,不要隔岸觀花 也許這邊風景獨好.

Advertisements

視角

當今無論移動端 前段還是後端,每隔一段時間都會有新的庫出現。以android來說,現在glide okhttp大行其道, rx rn方興未艾,雖然你不用再去關心圖片存儲 線程切換這些頭痛的問題, 但面對玲琅滿目的庫,使用和學習成本卻變高了。這是被廣大程序員所垢病的, 並且認為程序是個吃青春飯 看不到出路的行業。

之所以會這樣以為,我認為是因為著眼點一直在API這一層,是一種面相應用的學習。

我們為什麼要用有限的生命去嘗試無線的開源庫呢?

如果將視角放到更高的層面,跳出五行外,會輕鬆很多,因為萬物皆五行.

說成白話就是:

  1. 你是android framework工程師, 就應該多去總結android子系統的設計套路,會發現它不過是一個包裹著linux的系統,所有模塊架構都大同小異

  2. 你是android app開發者,就盡量去了解api背後的實現原理,當面對新版本的發布,第一時間去官網和源碼查看,以最小的代價了解差異

  3. 學習java, 就多去了解該語言背後的設計思想,在有新的面向對象語言出現時,能迅速借鑒和學習 .

  4. 你是程序猿,首先應該學會的是學習學習的方法,閱讀第一手資料,看流行的開源項目,閱讀經典的書籍.

你著眼的視角越高,越能做到在新框架,新系統來臨的時候,"人束手無策,我游刃有餘"

好奇心

android開發中發送通知大家都會,並且api沒有使用難度。

但你有沒有想過這樣一個問題?

通知欄的圖標和布局結構是如何從你的app進程傳遞到SystemUI進程的?同理,lanuncher進程里的桌面小部件又是如何拿到三方app資源的?

在最常規的click事件面前,這個事件又是經歷了哪些階段才被最後響應的?

每個簡單api後面也許都蘊藏著一個或者多個解決經典問題的經典方法,保持好奇心去弄懂他們,這樣,當你需要自己設計實現的時候可以有據可循,不用悶頭苦想。

最後

用2句我比較喜歡的話作為總結

  1. ever youngful ,ever weeping

  2. 低頭走路,抬頭看天

Advertisements

你可能會喜歡