構建自由通行的IOS開發者地圖

構建自由通行的IOS開發者地圖 IOS開發人員知識技能歸檔固化管理

最近辭職在家,無意之醞釀,多有開發感觸,故想做道法術器四文《(道)良性成癮開發習慣養成策略》《(法)平衡出最優的team生產力組合》《(術)產品、交互設計理念斷想》《(器)構建自由通行的IOS開發者地圖》,此爲其一,器。

作爲一隻剛出道的程序猿,我常常受阻在新項目啓動開發的初期。主要原因在於,不瞭解需要用到哪種技術解決,如何用其解決。問題的實質原因在於自己對“整體的技術脈絡圖”認識不清晰、不全面。

如果幸運,是在一個有好心大牛的團隊裏面,或許這個大牛就會用他大腦中長期潛移默化生成地“開發者技術地圖”來點撥你,並且恰到好處的指點對位,這樣就給程序猿有勝讀十年書的一翻超然感受。

但是多數時候我們並不容易遇到這麼好的引路人。既然如此,換一種思路。究其實質,我們既然可以抓住 “開發者地圖”這個關鍵字, 爲何不運用程序猿相對強大的自主意識去驅動這張“地圖”快速有效地建立起來呢。

一般情況下,進行開發工作個三年五載的這張“地圖”是會意想不到地在大腦中紮根存在的,也就是現在企業很看中的硬性技能經驗的一種表現。而現在我討論的就不是一般情況下緩慢的經驗積累方式,我討論的是運用高效學習探索思維,把“傳統非量化的經驗”轉化爲“開發者地圖”這一實體,然後再拓展鞏固這張可以被量化的“開發者地圖”。我暫且稱這一轉化爲“隱形經驗轉化爲顯性知識組織形式”。

如果有人疑惑,我爲何要做這一番功夫。那麼估計你還沒有下意識到這是一種很高明的提升能力,提升經驗的手段,可以告訴你的就是,在實踐中可以有意識地通過建立、拓展、鞏固、回溫地方式運用這張“開發者地圖”,它可以非常有效地提升你在同樣時間量的經驗積累程度。簡單比喻,就是可以讓你一年的經驗值比得過人家三年的經驗值。這是很可怕的比喻,但這是毫不誇張的說法。

針對不同的技術方向,“開發者地圖”也分種類分層次,但是其“根地圖”都必須是一樣的,都基於“自然科學,工科科學的根地圖”。所以“開發者地圖”也可以做一個層次包含關係,由於我在此介紹“IOS開發者地圖”,所以我下面繪製出“IOS開發者地圖”如何從“根地圖”派生出來。 “自然科學,工科科學根地圖”==>“軟件工程系統地圖”==>“IOS開發者地圖”
這裏寫圖片描述

下面,進入關鍵的操作流程,如何進行使用這張“IOS開發者地圖”才能夠讓自己受用。

一言以蔽之,在實踐中有規劃地以建立、拓展、鞏固、回溫地方式運用這張“IOS開發者地圖”。

首先,針對“建立”。如果現在讓你在25分鐘內快速建立一張“IOS開發者地圖”,你將會採取哪種途徑和方法來進行收集、整理、組織、建立?這點你可稍後去進行一個主題思考。在這裏我告訴你我的方法:

10分鐘,收集材料==> 最佳途徑是詢問IOS前輩,考慮出具有高價值含量的提問,如“XX前輩,能不能抽5分鐘給我介紹一下IOS開發所需要的一些基礎東西?和相關開發資源獲取的方法?比如開發環境,開發語言,基礎開發書籍,還有有哪些較好的論壇資源等等這些”。如果身邊沒有這種前輩,那麼只有在搜索引擎中發掘出回答你上一個問題所需要的答案。

10分鐘,整理、組織材料==>整理組織材料其實也是一門學問,所以大學纔有了圖書館管理員的專業。有興趣可以去看看最專業的材料整理思路應該是怎麼樣的。在這裏我就用普通的整理方式做爲例舉,首先將一堆材料進行分類,同時保證每一類中的都有優質材料,否則迅速返回再收集環節。材料種類可分爲:

介紹開發工具Xcode的;
介紹Obj-C語言的;
介紹SDK(cocoa)的;
介紹開發常用技巧的;
介紹高級編程開發的(數據庫編程,網絡編程,多媒體編程);
5分鐘,建立Developer Map==>既然我們稱之爲“IOS開發者地圖”,那麼自然這張地圖必須是可視的。而採用哪種數據信息可視形式呢?採用哪種可視形式我們必須要考慮到,須方便結構調整,須方便增刪。手繪方式不便頻繁更新,排除。viso 或者 omnigraffle的結構圖形排列方式太過費時,排除。我要推薦的就是”思維導圖MindeNode“,最輕鬆做到”方便結構調整,方便增刪節點“。 下圖就是粗糙建立好的”IOS開發者地圖“;

這裏寫圖片描述
然後,針對”拓展“。拓展應該在什麼時候進行的呢。一般情況下,是用你的閒餘時間來爲你的這張”IOS開發者地圖“進行添枝加葉。也有可能是在項目緊張進行過程中迅速的進行更新。爲map添枝加葉,具體思路如何因人而異。我比較推薦的做法是,每天抽15分鐘時間抓取博客園、CSDN或者cocoachina上關於IOS的技術文章,或者專門抓取某位IOS開發牛人的博客。相信我你只需要堅持十來次,那麼你的”IOS開發者地圖“肯定達到中等茂盛樹的水平。到了這個程度,或許你已經有較強的自我感覺良好了。到了這個時候,你得有個意識你得回頭再深究一下,每一個第二層節點結構位置是否得當(根節點”IOS開發者地圖“爲第一層節點),因爲只有充分理清這些開發知識的相互關係和內在聯繫才能夠做到”瞭然“。 下圖是經過我優化結構後的”IOS開發者地圖“;
這裏寫圖片描述
再然後,針對”鞏固“。鞏固應該在什麼時候進行呢。通常情況下,你在項目中需要用到什麼技術可以到這張”IOS開發者地圖“去查詢。不過既然我們的目標是要將這張map融入我們的大腦經驗細胞中去,以達到經驗積累速度優於他人的速度。那麼我們就必須進行鞏固。至於何時進行鞏固,就看個人習慣了。當然我所推崇的方式就需要滿足一些客觀規律,比如”艾賓浩斯記憶曲線“,”碎片化的記憶紙片“等等。輔助的工具可以用移動app,mindnode或者thinkspace,或者截成圖片後存於evernote。 下圖是我正在使用的一種良性鞏固流程循環,或許大家可以借鑑;
這裏寫圖片描述
最後,針對“回溫”。其實這個回溫也可以稱之爲進行多次“鞏固”達到的狀態。但是關鍵在這裏“回溫”必須要有一個要素“昇華”,鞏固的目標是識記,回溫的目標是昇華理解。對於每一次的回溫,應該是在一種哲學自然式思維狀態下面。實際的表現做法可以這麼做,對於“回溫”的每一個技術機制,都能夠用抽象的語言來概括出其實質思想。 下圖舉例出我如何來以抽象的思考來昇華對某一技術機制;
這裏寫圖片描述
寫到這裏,估計不少朋友都有所領會這”IOS開發者地圖“的妙處了。這實質是將”隱性的經驗知識“轉化爲”顯性的結構知識樹“,然後主動地去操作這張結構樹,在邊把這張developer map變得茂盛的同時,不斷地進行反饋到大腦的經驗細胞,從而以更強有力的途徑提升了存在大腦中不好量化的經驗積累。

相關下載

原版思維導圖 http://www.dwz.cn/filemindnode
導出的PDF http://www.dwz.cn/filepdf
https://github.com/limbo0312/iOS-developer-map

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章