乾貨!攻城獅的交流分享!聊一聊開發人員快速提升自己的方式
建立一個實質性的項目
- 從不同的視角,端點功能觸發, 構建具有獨特性且能展示開發人員創造力的應用
- web後端框架 -了解如何構建框架
- 利用主要使用的編程語言構建一個程序包,並在多個項目中使用
- 圍繞自己超級感興趣的事物構建一個更大的項目
- 構建一個完全超乎你當前理解範圍的事物
向開源做貢獻
- 構建自己的開源軟件包,應用程序
- 向現有的代碼庫貢獻代碼
開源軟件包
- 構建自己的開源軟件包,要確保不是來自某個教程,是真正想發佈給別人的東西
記錄創作過程
- 記錄創建的原因以及思考過程
- 從新的角度思考問題並獲得新的見解
別人的代碼庫
- 查看GitHub上流行軟件包和插件的代碼庫,很可能這些軟件包中含有很多未解決的問題
- 首先仔細閱讀代碼庫制定的代碼貢獻指南,即README.md文件,然後開始解決問題,進一步添加一些實用的功能:
- 證明自己能夠遵循編程準則
- 儘快成為開源社區的一員
- 熟練掌握分叉,拉取請求和提交
- 了解社區維護的軟件包,有機會採用一些更好的編程實踐
閱讀高級代碼
- 努力理解代碼,並和自己的代碼進行比較,設法尋找可以改善自己的實現的模式,同時記錄下所有能夠提高自己工作流程的技術細節
- 可以從社區尋找開源項目,閱讀並理解代碼
- 在閱讀其他開發人員的代碼時,盡量將遇到的問題向開發者提出來,如果有人能夠回答你的問題,就更好了,你需要讓他們知道你在努力理解高級代碼,請求他們回答你的問題
應該閱讀什麼代碼
閱讀你真正用得着的代碼
- 閱讀那些你已經在使用的插件或者庫文件源碼
- 為閱讀的代碼添加註釋,文檔
閱讀印象深刻的代碼
- 遇到的印象深刻的項目
- 了解項目所基於的開源技術
閱讀你尊敬的大師寫出的代碼
- 關注那些優秀的程序員
閱讀給你帶來靈感的代碼
- 在初期選擇一個小項目進行閱讀,這樣可以關注細節,學習到更多知識
如何閱讀源碼
先看大框架
- 在宏觀層面上熟悉代碼是如何實現的(README.md), 項目的網站,教程,文檔
- 大致瀏覽項目的結構
- 注意項目的文件結構
- 目標:
- 熟悉源代碼
- 找出哪些文件包含,請求,加載其他文件
- 大部分代碼在哪裡
- 命名空間以及相關性質
記錄閱讀心得
- 當開始理解程序流時,為代碼添加註釋,記錄你的假設和結論
- 隨着理解的進展,刪除無關緊要的注釋
邊閱讀邊測試
- 當閱讀別人代碼時,測試是最佳理解代碼程序流的方式:記錄了代碼應該完成的任務
- 在閱讀時,試着讓測試套件成功運行
- 這樣確保開發環境配置恰當,在進行更改優化時更加得心應手
親自動手做
- 為代碼的實現添加或者更改邏輯但不要破壞代碼
- 嘗試給代碼中添加功能
- 設置項目範圍的日誌記錄
了解更多的編程設計模式和原理
- 仔細閱讀每個模型的定義
- 搜索學習每個模型的示例
- 快速閱讀設計模式和原理