全栈程序员这个月写了啥代码?
猜猜寫了多少行?都寫了哪些語言呢?
大家好,我是魚皮。
時間過得真是太快了,又到月底了。對于程序員來說,總結還是挺重要的,我也一直保持著一個習慣,就是每個月末都要看一下自己這個月的代碼統計情況,比如寫了多少行代碼、寫了哪些語言的代碼、占比是多少等等。
接下來就帶大家看一看咯~
本月不摸魚情況
首先,代碼統計肯定不是我自己來做的,總不可能一行行代碼去數、再去分類吧!所以,我一般直接看公司提供的代碼提交報告,根據你每個月的代碼 git 提交數,自動統計生成。
比如下面這個代碼提交語言餅圖:
從餅圖中,就能看出我這個月寫了 23.58 % 的 Java、寫了 30 % 左右的前端(TypeScript + JavaScript + CSS)、寫了 12.67 % 的 Markdown、還有 30 % 左右的其他語言。
等等,Others 是其他我能理解,這個 UNKNOWN 是什么鬼?!我就當是系統的 Bug 了吧哈哈。
那大家是否好奇這其他語言都有什么呢?
我舉一些例子,比如 Java 和前端項目的一些配置和數據交換文件,比如 xml、yaml、yml、properties、conf、 json、proto 等。還有一些腳本文件,像 bash 腳本、bat 腳本、SQL 腳本等。還有一些工程化的文件,比如 gradle 項目管理,以及自動構建項目用到的 jenkinsfile 等。
之前有小伙伴質疑我的工作不是全棧(啥都干),這回可以相信了吧!
[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-I9HJA3VF-1622801885137)(https://qiniuyun.code-nav.cn/image-20210530181124367.png)]
不過,不是說只有全棧工程師才要寫各種語言。要做一個完整的項目,不可能只局限于一個編程語言本身,相關的技術棧像上面提到的配置文件、數據交換文件、腳本、工程化文件等,其實是每個程序員都應該熟悉或了解的。只有這樣,你才能算是一名工程師,而不是靠復制粘貼度日的碼農。
哦對,好像我現在大部分代碼也靠復制粘貼,我擱這兒打臉放鞭炮呢?
這個月我新寫了 1.58 萬行代碼,平均每天 500 行,也不是很多。但是這個只會統計你最后通過提交的代碼,也就是經過我優化后的,所以實際上每天估計也會寫近千行代碼吧。
[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-d4lWKSQQ-1622801885138)(https://qiniuyun.code-nav.cn/image-20210530171325585.png)]
不過,關注代碼行數也沒太大的意義,自己看著爽就完事兒,也能側面反映出我沒怎么摸魚哈哈!
意義何在?
看自己的代碼統計有什么意義呢?對我來說至少有三點:
1. 復盤
首先,幫我回顧這個月的工作和效率。
其實這半年來,大部分情況下我都是在做調研、技術選型和場景分析,除了這個月寫的代碼比較多之外,其他時間很少寫代碼。因此,當我意識到代碼寫的少了時,我會有意在工作之余去花更多的時間來做自己的項目,多寫一些代碼,不讓自己生疏。
那這個月代碼寫的比較多了,我又會警醒自己不要只沉迷于寫代碼,成為了項目和老板的工具人。我會在之后有意讓自己更多關注代碼之外的東西,比如業務場景;還會思考寫這么多代碼來實現這個需求是否真的有意義,能否換一種方式。
另外不知道大家是否注意,Markdown 文檔語言在我本月的代碼中占比 12 % 左右,也意味著最近我寫了不少文檔,多寫文檔對項目來說是很有幫助的!
2. 未來
通過分析代碼統計,可以確定我未來的重點學習方向,比如有個月我在做一個用 Java 實現的項目,寫了 80 % 的 Java 代碼,那我自然會把重心放在 Java 上,在工作之余去深入看一些 Java 的東西。
3. 成就感
不要小瞧這一點,回顧自己寫的代碼數的確能幫助你收獲成就感,就像是打怪升級一樣,看看自己上個月刷了多少只怪、爆了多少裝備,這個月才會更有動力去沖!
當然,代碼寫的多也不一定是好事,有些程序員老奸巨猾的,為了湊行數,特么的一行代碼后面跟一個空行,一行代碼寫完的功能拆成十行來寫!沒必要沒必要。
如何統計?
看到這里,肯定有同學也想統計下自己寫的代碼行數,這里簡單介紹幾種方式。
1. GitHub
如果使用 GitHub 來管理你的代碼,可以進入 insights 面板,能夠看到指定時期的提交數、文件修改數、代碼新增和刪除數。
2. 編輯器插件
很多編輯器像 WebStorm、IDEA、VSCode 等,都提供了代碼行統計插件,比如 JetBrains 全家桶通用的 Statistic 插件。
[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-Q8jT8lez-1622801885141)(https://qiniuyun.code-nav.cn/image-20210530174554591.png)]
安裝之后,就能看到代碼中各個語言的行數、占比等信息了。
3. 工具
還有一些現成的代碼統計工具,比如 cloc 。通過命令行使用,可以直接分析本地或者 GitHub 上的代碼包。支持按語言分類統計代碼空行、注釋行、自然行數等,還能單獨分析指定提交。
4. 硬核命令
如果你的 git 命令耍的很溜,也可以直接寫命令來統計代碼,根本不需要什么工具!
不過看這狗命令就知道,這種方式過于硬核:
git log --author="_your_name_" --pretty=tformat: --numstat | awk '{ add += $1; subs += $2; loc += $1 - $2 } END { printf "added lines: %s, removed lines: %s, total lines: %s\n", add, subs, loc }' -5. 軟件
也有一些現成的開發統計軟件,比如 WakaTime,可以靈活配置自己的開發指標看板,記錄自己的代碼工作。
好了,以上就是本期分享,原創不易,如果覺得文章不錯,希望 點贊 支持下,給俺點創作動力。
最近還在開發我的 編程導航( https://www.code-nav.cn ),一個幫大家找編程資源的項目,歡迎使用!
我是如何在大學期間通過自學,拿到騰訊、字節等大廠 offer 的,可以看這篇文章,不再迷茫!
我學計算機的四年,共勉!( https://t.1yb.co/q0mS )
總結
以上是生活随笔為你收集整理的全栈程序员这个月写了啥代码?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JAVA环境配制和生成jar包的方法
- 下一篇: [实验手册]MPLS/×××分解:防止P