我是乙個泥腿子程式設計師,本科畢業後才開始學習程式設計的知識,而且完全是自學的,基本沒有跟過系統的教程,學習方式很簡單,w3school 和 菜鳥教程。雖然目前已經成功進入一家公司做前端開發,但漸漸地,我也感知到了自己的缺陷所在,在這裡總結一下。
由於沒有太多的開發基礎知識,之前很長一段時間內都是處於「博覽」、「泛讀」的狀態,玩一些linux下的軟體,例如linux系統安裝、cron、curl、ssh、mysql等等,玩一下樹莓派、路由器等,玩一下go、python,玩一下51、arduino等等。目的很簡單:為了建立起自己對於程式設計領域的大致認識。這也將是一項長期要做的事,之前的技術棧總結的部落格裡也基本列出了將來很長一段時間內要做的事。
實踐了很多細節的東西,這也引發了我的乙個思考,如標題。其實每乙個具體的軟體、語言、庫、框架,內部都有很多具體的實現方式和使用方式,如果我們決定使用某一項具體的技術時,就需要非常細緻地去理解它,例如使用mysql,就要熟練使用sql、要熟知事務、索引、查詢、引擎、視覺化、日誌、備份、恢復等等知識和經驗。但當我們還沒有真正使用的時候,我們應當如何去認識一門技術呢?
我的答案是——結構。
就我目前的階段而言,至少應當思考如下兩方面的結構:1. **組織形式的結構;2. 各項技術之間相互聯絡的關係結構。
對於**組織形式的結構,要關注的方面有:①設計模式;②程式設計正規化;③uml;④類與物件;⑤資料結構與演算法;
具體而言,需要①刷設計模式的教程,並自行總結各設計模式的特點,用js實現案例;②了解命令式、宣告式程式設計,理解函式式與和物件導向的思路與規範;③使用uml繪製程式結構圖以及模組結構圖以及資料結構圖等;④實踐類與物件的程式設計方式,閱讀開源專案的類庫的實現;⑤刷資料結構知識與演算法題庫。
對於技術關係結構,需要:①查閱介紹性資料,明白該技術的應用場景;②跟蹤基礎教程,進行簡單實踐;③進行專案實踐,在實際專案中使用;④總結技術場景圖譜,歸位到相應位置。
盤點了一下自己的技術結構,並且得出了乙個重要的結論——「結構」才是最重要的。這個思想也會指引我之後對於技術的學習方式。前路漫漫,且行且珍惜,嗯。
把握現在才是最重要的
一直以來,一些前輩或裝前輩的人,不論是在網上發表高談,還是私下聊天,總是會說 年輕人,一定要定好自己的目標,然做好目標分解,再為分解的目標訂製詳細的計畫。以前我也說過同樣的話,但現在我想說的是 這些話都是狗屁,即使有十分之一是真的如此,也只是說明說這種話的人其實真的沒有經歷過什麼。真正經歷過後,從來...
把握現在才是最重要的
一直以來,一些前輩或裝前輩的人,不論是在網上發表高談,還是私下聊天,總是會說 年輕人,一定要定好自己的目標,然做好目標分解,再為分解的目標訂製詳細的計畫。以前我也說過同樣的話,但現在我想說的是 這些話都是狗屁,即使有十分之一是真的如此,也只是說明說這種話的人其實真的沒有經歷過什麼。真正經歷過後,從來...
神馬都是浮雲,健康才是最重要的
一直以為,趁年輕,多拼命點,為未來奮鬥。於是乎,半夜還在為 裡的乙個瓶頸而苦苦掙扎。於是乎,放棄週末休息的時間,無日無夜地學習,研究。殊不知,透支著年輕的生命,在自己的身體裡埋下了深遠的隱患。最近乙個親人因健康問題再次住院了,而半年前她才動過手術,這次,可能還要繼續,希望她能快快地好起來。同時,告誡...