揭秘:一个月不摸鱼能写多少代码? | 您所在的位置:网站首页 › 程序员一行代码大概多少钱 › 揭秘:一个月不摸鱼能写多少代码? |
作者 | 老鱼皮 来源 | 程序员鱼皮(ID:coder_yupi) 猜猜写了多少行?都写了哪些语言呢? 时间过得真是太快了,又到月底了。对于程序员来说,总结还是挺重要的,我也一直保持着一个习惯,就是每个月末都要看一下自己这个月的代码统计情况,比如写了多少行代码、写了哪些语言的代码、占比是多少等等。 接下来就带大家看一看咯~ 首先,代码统计肯定不是我自己来做的,总不可能一行行代码去数、再去分类吧!所以,我一般直接看公司提供的代码提交报告,根据你每个月的代码 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 % 左右,也意味着最近我写了不少文档,多写文档对项目来说是很有帮助的! ![]() 通过分析代码统计,可以确定我未来的重点学习方向,比如有个月我在做一个用 Java 实现的项目,写了 80 % 的 Java 代码,那我自然会把重心放在 Java 上,在工作之余去深入看一些 Java 的东西。 3. 成就感不要小瞧这一点,回顾自己写的代码数的确能帮助你收获成就感,就像是打怪升级一样,看看自己上个月刷了多少只怪、爆了多少装备,这个月才会更有动力去冲! 当然,代码写的多也不一定是好事,有些程序员老奸巨猾的,为了凑行数,特么的一行代码后面跟一个空行,一行代码写完的功能拆成十行来写!没必要没必要。 ![]() 看到这里,肯定有同学也想统计下自己写的代码行数,这里简单介绍几种方式。 1. GitHub如果使用 GitHub 来管理你的代码,可以进入 insights 面板,能够看到指定时期的提交数、文件修改数、代码新增和删除数。 ![]() GitHub 统计分析 2. 编辑器插件很多编辑器像 WebStorm、IDEA、VSCode 等,都提供了代码行统计插件,比如 JetBrains 全家桶通用的 Statistic 插件。 ![]() 代码统计插件 安装之后,就能看到代码中各个语言的行数、占比等信息了。 ![]() 代码行统计 3. 工具还有一些现成的代码统计工具,比如 cloc 。通过命令行使用,可以直接分析本地或者 GitHub 上的代码包。支持按语言分类统计代码空行、注释行、自然行数等,还能单独分析指定提交。 ![]() cloc 工具分析 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 }' - 《新程序员001:开发者黄金十年》 2001 年创刊,20 年技术见证 人人都是开发者 家家都是技术公司 |
CopyRight 2018-2019 实验室设备网 版权所有 |