写点什么

全栈程序员这个月写了啥代码?

发布于: 2021 年 06 月 04 日
全栈程序员这个月写了啥代码?

猜猜写了多少行?都写了哪些语言呢?


大家好,我是鱼皮。


时间过得真是太快了,又到月底了。对于程序员来说,总结还是挺重要的,我也一直保持着一个习惯,就是每个月末都要看一下自己这个月的代码统计情况,比如写了多少行代码、写了哪些语言的代码、占比是多少等等。


接下来就带大家看一看咯~

本月不摸鱼情况

首先,代码统计肯定不是我自己来做的,总不可能一行行代码去数、再去分类吧!所以,我一般直接看公司提供的代码提交报告,根据你每个月的代码 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 等。


之前有小伙伴质疑我的工作不是全栈(啥都干),这回可以相信了吧!



不过,不是说只有全栈工程师才要写各种语言。要做一个完整的项目,不可能只局限于一个编程语言本身,相关的技术栈像上面提到的配置文件、数据交换文件、脚本、工程化文件等,其实是每个程序员都应该熟悉或了解的。只有这样,你才能算是一名工程师,而不是靠复制粘贴度日的码农。


哦对,好像我现在大部分代码也靠复制粘贴,我搁这儿打脸放鞭炮呢?


这个月我新写了 1.58 万行代码,平均每天 500 行,也不是很多。但是这个只会统计你最后通过提交的代码,也就是经过我优化后的,所以实际上每天估计也会写近千行代码吧。



不过,关注代码行数也没太大的意义,自己看着爽就完事儿,也能侧面反映出我没怎么摸鱼哈哈!

意义何在?

看自己的代码统计有什么意义呢?对我来说至少有三点:

1. 复盘

首先,帮我回顾这个月的工作和效率。


其实这半年来,大部分情况下我都是在做调研、技术选型和场景分析,除了这个月写的代码比较多之外,其他时间很少写代码。因此,当我意识到代码写的少了时,我会有意在工作之余去花更多的时间来做自己的项目,多写一些代码,不让自己生疏。


那这个月代码写的比较多了,我又会警醒自己不要只沉迷于写代码,成为了项目和老板的工具人。我会在之后有意让自己更多关注代码之外的东西,比如业务场景;还会思考写这么多代码来实现这个需求是否真的有意义,能否换一种方式。


另外不知道大家是否注意,Markdown 文档语言在我本月的代码中占比 12 % 左右,也意味着最近我写了不少文档,多写文档对项目来说是很有帮助的!


2. 未来

通过分析代码统计,可以确定我未来的重点学习方向,比如有个月我在做一个用 Java 实现的项目,写了 80 % 的 Java 代码,那我自然会把重心放在 Java 上,在工作之余去深入看一些 Java 的东西。

3. 成就感

不要小瞧这一点,回顾自己写的代码数的确能帮助你收获成就感,就像是打怪升级一样,看看自己上个月刷了多少只怪、爆了多少装备,这个月才会更有动力去冲!


当然,代码写的多也不一定是好事,有些程序员老奸巨猾的,为了凑行数,特么的一行代码后面跟一个空行,一行代码写完的功能拆成十行来写!没必要没必要。


如何统计?

看到这里,肯定有同学也想统计下自己写的代码行数,这里简单介绍几种方式。

1. GitHub

如果使用 GitHub 来管理你的代码,可以进入 insights 面板,能够看到指定时期的提交数、文件修改数、代码新增和删除数。


2. 编辑器插件

很多编辑器像 WebStorm、IDEA、VSCode 等,都提供了代码行统计插件,比如 JetBrains 全家桶通用的 Statistic 插件。



安装之后,就能看到代码中各个语言的行数、占比等信息了。


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

用户头像

鹅厂全栈,爱做项目,分享技术 2021.02.26 加入

公众号【程序员鱼皮】领 6 T 最新编程资料和学习方法 💎 做了个网站叫【编程导航】:www.code-nav.cn ✨

评论

发布
暂无评论
全栈程序员这个月写了啥代码?