大佬看菜鸡写的代码肯定是认为垃圾的
如果代码量不大也算不上屎山吧
你像google的chrome团队里面的人认为chrome就是屎山(除了一些核心的代码)
代码不成章法太多太杂乱,可读性差,不够优雅, 数量多了就可以称为屎山了
这代码都是一个人写的
然后这个人写的没有章法, 自己都没有一套规范, 这个类以驼峰形式命名
另外的类又匈牙利命名,自己写的也乱七八糟的,那么后面的人接手 你懂得,内心一万个草泥马
这里完全没有嘲笑的意思,不过这也是程序员的必经阶段吧, 刚入行都这样,编码水平都不高,你编码10年如果还这样说不过去了
一般团队开发 小组里面水平大部分差不多,应该也是 2 8定律, 假设10个人 应该有1个大佬,有个新手,大部分的是水平差不多的
这时候核心的模块 基础的都是这个大佬写, 其他的业务啊 等等等都是剩余员工写了
那么这个时候屎山怎么形成的呢?
我理解认为的就是 赶工期和质量 这俩就是鱼和熊掌的关系, 总和就是1 , 水平高的就还能保质量, 经验少的业务不熟悉的 那就是真的赶时间,
你说产品和老板一直催的话 你会花那么多的时间设计架构 类图 之前的关系等等吗 ,在加上代码本来就是屎山了 你设计的那不是屎盆子镶金边吗
后面给新人维护 一段时间又给你改的烂烂的
怎么避免 我认为就是要建立非常严格的review制度
你写的代码不合格就是不能合入
必须改到合适为止, 这里肯定是会耽误工期的
我之前工作的时候就是 一个需求2天开发完, 修改代码 review 这个环节搞了一周… (不怕大家笑话)
而且对于抢市场 加上公司人手不够的公司和团队 领导怎么可能让你搞这个费事费力的review呢, 因为审核的人也需要花大量的时间帮你看代码,这根本就不现实,日积月累 得过且过 屎山就一步一步形成了
进度和质量不可兼得, 两个之间是相互制约的 他俩之间有个度
就是看你自己有没有代码质量追求 + 加上你们团队的技术氛围 + 你们上级&组长 对质量的追求和把控 不过这些也是只是阻止屎山形成路上的一些防御
linux 这个项目, 连创始人现在都说是个屎山了, 他刚开发时 那多精简就内核代码很少, 他对review严格到 一个提交者 提交一个commit 提交了3个月,被他邮件骂了N次,红红火火恍恍惚惚
屎山还是会生成的, 生成就重构呗 。。。。。
行了 今天就扯到这里吧