Z队友上线了
最近和搞开发的同学一起闲聊,正好前段时间大家都经历过远程办公和团队协作的场景,好像大家都难免有点想吐槽的事情。
因此本篇准备跟大家来分享一下,我们工作以来所遇到过的一些程序员Z队友的有趣经历,当然分享的也是一个自己从Z队友变成X队友的成长经历。
Z队友哪哪都有,所以说一个好的团队真的非常重要。
当然说是这么说,仅仅也是希望在调侃之余来反思一下自己,因为每个人都一样,需要一些好的激励源和技术氛围来帮助我们变得更好,毕竟谁也不是天生就会写一手好代码。
猪猪1:爱写烂代码
有些人会有疑问,作为一个初学者,就是写不出好的代码咋整呢?
其实写优秀代码很难吗?
优秀的代码,其实不需要复杂!也不需要炫技!更不需要滥用语法糖!
代码清晰、明了、可阅读、可维护既是第一步,也是最最重要的一步。毕竟代码是写给人看的,顺便给计算机执行的,你说呢?
那Z队友常见的烂代码一般怎么写呢?比如:
1、关键代码不加注释。好像生怕别人看懂了他写的代码,然后偷学了他的核心技术似的。程序员本来都这么艰难了,有必要这样嘛,是吧。
2、代码一大坨。一个方法里恨不得写几百行,把接手和维护代码的人看得死去活来,非常难以维护,这可能就是传说中的“shi山”吧。
3、喜欢炫技、滥用语法糖、喜欢写复杂的复合表达式,这同样也会让接手者和后来的维护人天天怀疑人生。
4、垃圾命名。要么命名无意义、不规范、规则混用、有歧义;要么挖坑式命名,比如命名时用了现有代码或者库中已有的名字,可能导致调用者引用出错。
工作几年下来我发现,有些人真的特别喜欢延续他上一个项目的代码风格,也特别喜欢从他曾经做的老项目里去拷代码用,而且特别执拗,所以那些不太好的风格几乎一直伴随着他所有的项目。
虽说这也能理解,毕竟每个人的工作背景不一样,但是必须要说的是有个好的团队和项目真的炒鸡重要,尤其是在刚参加工作时。
猪猪2:乱改别人的代码
公司做项目毕竟是团队协作,共同完成。有时候大家一起写代码,功能上难免有重叠,代码上也难免会有交叉。
比方说,某一个基础功能的代码可能是你写的,但Z队友那边也会去调用。这时候假如Z队友那边有一个需求需要改,或者说要加一个新功能,这时候Z队友很有可能会毫无讯息,非常猥琐地跑来把你写的基础代码给改了,来试图满足他的需求(而不是去想一些更有扩展性的写法),而且改了还不跟你说,而且改了还不加注释,而且进去就是一顿if/else
这种sao操作。
这种情况可以说非常头痛,因为假如真出了问题,锅其实是别人引入的,最后却有可能要由你来背!毕竟领导并不知道这些细节问题。
猪猪3:挖坑式代码提交
可以说这种情况简直是巨坑队友了…
那就是Z队友在提交代码时直接把你写的代码给抹掉了。
因为公司里写代码必然是团队协作,代码大家一起写,各自去提交。比如现在很多公司用git
来管理代码。
Z队友最坑的是,他在提交代码时发现代码有冲突,这时候他自己可能不会解决,结果一顿sao操作,把自己修改的几个文件确实提交上去了,但是其他人之前的修改和提交被他回滚了。
还有一个就是,git
有一个很可怕的特性,就是-f
参数强制推送,Z队友爱用这个东西,它会强行用本地仓库去覆盖远端仓库。导致的后果就是,文件很有可能被老的内容给覆盖掉,仓库的历史提交记录丢失等等。
代码提交时,正常的流程就是先更新,有冲突一定要想办法解决冲突,再提交,切不可投机倒把哇!
猪猪4:乱甩锅
就像上面第2种情况说的,比如有些基础代码是你写的,结果被Z队友给改了,结果改的还有问题,这时候假如真出了问题,你说谁来背锅呢?
猪猪5:团队协作?
工作几年下来我发现,其实大部分队友还是很友好的,但难免也存在一些团队协作意识差的队友。比如我就遇到过那种非常难以交流,或者学东西非常闭塞的人。
学习工作这么多年,你别说,身边牛人还真碰到过不少,从硕士读研待实验室到校招找工作进入工作岗位,遇到过很多技术很好的人。我普遍发现真正的技术大牛普遍有的特点就是:谦虚低调、虚怀若谷、并且交流很轻松,所以那些天天不可一世,交流都费劲的队友抱着一个什么样的心态,我其实至今也是不太理解的。
共勉
好啦,吐了这么多,其实想说的就是,我们每个人作为公司和团队中的个体成员,很多优秀的习惯需要共同去营造和维护。
别人我们管不了,我们只能从个人观念出发,让自己变得更好!