再論 golang 環境配置建議
摘要
在之前的實踐中滿足開發環境所有特征的情況下進行了大量方式上的升級。經過 8
次的版本升級,調整,爬坑,終于覺得這次版本升級足夠有意義替代之前版本的建議。
我總覺得花一少部分的時間調整開發工具讓自己的工作效率更高是非常值得的。
本次祭出大招 Docker
來作為項目開發的主要腳手架。
并且我現在認為一個好的開發工具應該滿足:
- 項目管理
- 快速文件跳轉
- 自動語法檢查
- 自動補全
- 查找定義
- 啟動速度快
- 如果自己有需求的話插件可以隨便寫
- 靈活的運行配置
但是根據10個月的開發實踐,除了上面這些之外還需要兼顧:
- 國內的網絡環境
- 升級方便
- 隨時隨地快速部署自己的開發環境
- 能在線上服務器進行開發,隨時隨地升級版本修改代碼。
Docker Registry
docker pull index.tenxcloud.com/philo/golangdev:1.2.1 docker pull lijianying1/golangdev:1.2.1
如果你還不會docker請參考 這里 。
Dockerfile
升級日志
1.2.1
- 修復vim下escape有時間延遲(解決方法見.vimrc最后一行)
- Ctrl+s保存的時候添加代碼格式檢查(其實就是追加命令 :GoMetaLinter)
- 更新golang到1.5.2 based on Debian 8
特征解釋
兼顧國內網絡情況
- 使用Dockerfile從國外VPS構建,然后推送到時速云備用。這種構建方式適合調試
- 推薦! 如果您在國外沒有VPS推薦使用時速云TCE來構建,從香港節點自動化構建隨時能看到日志。 參考文檔 。
升級方便
- 直接修改Dockerfile完成升級,調整From就可以調整底層系統使用。
- 可根據您的需要隨時定制自己的版本。非常方便
隨時能夠快速部署
- Docker啟動速度非常快
- 如果您沒有Image在內網該Image也只有1GB大小可非常快速的傳輸到您的電腦。
- 國內準備好了加速源,詳細查看Docker Registry部分。時速云確實挺快的。
- 如果您的工作站安裝的是CoreOS or Rancher這種的Docker Linux 不但安裝快,部署開發環境也是一瞬間完成。
能夠在線上服務器進行線上代碼調整
- 只要部署到線上服務器直接就可以使用。
- 老板再也不用擔心我的集成新功能速度太慢了。
使用方法
文件跳轉( Command-T )
快捷鍵: <leader>t
注意: <leader>
在我的vim配置里面是反斜杠,插件快捷鍵參考官方文檔
項目管理(NERD_tree)
快捷鍵: M-u
注意: 插件快捷鍵參考官方文檔
自動語法檢查
觸發: 每次保存文件
命令:
:GoMetaLinter, which invokes all possible linters (golint, vet, errcheck, deadcode, etc..) and shows the warnings/errors
例子中:Struct默認要求有注釋,不然就會報警。對于常用的拼寫比如說ID有嚴格的檢查需要符合大眾的拼寫習慣。
其他正確性檢查這里不再贅述。
自動補全
注意:在最上面會顯示API文檔,想關閉文檔快捷鍵: M-c
查找定義位置
快捷鍵: M-n
Outline 快速跳轉(Tagbar)
快捷鍵: M-p
快速關閉文件
快捷鍵: C-c
文件標簽切換
快捷鍵: M-i
切換到上一個 快捷鍵: M-o
切換到下一個
保存文件
快捷鍵 C-s
注意: Stop tty已經被我關閉,不必擔心tty被鎖。
總結
在上面我總結的全部都是我加的快捷鍵用起來比較舒服的。如果您需要自己修改快捷鍵請fork 我的github REPO 。
如果您有任何改進意見請回復留言給我發Email。先謝過。
vim還有很多默認的快捷鍵這里就不再多說,最好的學習方法是想到自己有什么習慣或者需要快捷鍵支持去google找找。
本文由用戶 bwnx 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!