本文介绍了近期流行的“防御性编程”概念及其背后的争议。一些大厂员工开始在代码中实施防御性编程,以应对可能的裁员。文章包含了对程序员对这一现象的不同看法,以及关于mall项目实战教程网的推荐。同时,也指出了防御性编程的初衷是为了预防和减少未来可能出现的错误和灾难,但在当前环境下,这种做法可能对团队和项目的长期发展造成负面影响。
文章推荐了mall项目实战教程网,包括基于SpringBoot3+Vue的电商系统,后端支持多模块和最新微服务架构,以及视频教程等。
防御性编程本意是细致、谨慎的编程方法,但当前环境下,它更多被用作程序员自保的工具,可能对团队和项目的长期发展造成负面影响。
mall项目实战教程网:
macrozheng.com
你听说过“防御性编程”吗?
最近,为了防止被裁员,一些大厂员工开始在代码里搞一些小九九,比如在代码里面留下后门,或者遇到异常情况就自动记录日志、发警报,并称之为“防御性编程”,确保就算自己被裁,剩下的代码也不可维护。
同行采访实录
你怎么看待“防御性编程”?我们采访了许多程序员,大家给出了不同的看法:
1.有人赞同,觉得挺好的,公司做事不守规则,那打工人就让它守规则。
2.有人说,以前觉得违反职业道德,现在觉得公司都没道德,那还提什么职业道德。
3.有人感叹,但凡早学会这个,自己也不至于被裁。
4.有人贴心整理了防御性编程入门教程:能用手拖的尽量不用代码;多用设计模式,一层套一层;能用一个函数绝不开第二个函数;多用if else 嵌套 if else;命名多用abcd。
这或许是一个对你有用的开源项目
,mall项目是一套基于
SpringBoot3
+ Vue 的电商系统(Github标星60K),后端支持多模块和
2024最新微服务架构
,采用Docker和K8S部署。包括前台商城项目和后台管理系统,能支持完整的订单流程!涵盖商品、订单、购物车、权限、优惠券、会员、支付等功能!
-
Boot项目:
https://github.com/macrozheng/mall
-
Cloud项目:
https://github.com/macrozheng/mall-swarm
-
视频教程:
https://www.macrozheng.com/video/
项目演示:
5.也有人觉得没用,写得再难维护也还是会被裁。
6.有人说,得核心项目才行,边缘项目维护不了就丢弃了。
7.有人说,现在大厂都是直接裁项目,压根不需要人去维护。
8.有人说,这么做只会恶心接手的人,上面才不管能不能维护呢,他们根本不看代码。
9.有人觉得有点可笑,说自己就算失业、要饭,也不搞这么多弯弯绕绕。
10.有人觉得很扯,这样怎么过得了代码评审?写完代码要给组里所有人过一遍,除非所有人都不在乎,不然怎么通过?
11.还有人说,有没有可能大家写的代码本身就是屎山,无需刻意防御性编程。
小编有话说
防御性编程的本意是一种细致、谨慎的编程方法,它是让程序员写代码时提前预测可能出现的问题,并采取措施来规避这些问题。防御性编程是为了预防和减少未来可能出现的错误和灾难。但在“开猿节流”的大背景下,防御性编程却成为了程序员自保的工具,这种做法可行吗?
也许短时间内能达到不被裁员的目的,但从长远来看,这种做法会对整个团队和项目的可持续发展造成严重影响。伤人一千,自损八百,即使短暂保住了岗位,也会影响自己的职业声誉,不利于未来就业。
其实,所谓“防御性编程”不过是打工人自保的无奈手段,如果不是迫于无奈,谁不想把工作做好,把代码写得清晰优美呢?警察愿天下无贼,医者愿天下无疾,程序员愿天下无bug。社会真正要做的不是禁止程序员防御性编码,而是给大家提供一个可以充分发挥能力的安全环境啊。
Github上
标星11K
的微服务实战项目mall-swarm,全套
视频教程(2024最新版)
来了!全套教程
约26小时,共59期
,如果你想学习
目前最新的微服务技术栈
,同时提高自己
微服务项目的开发能力
的话,不妨了解下,下面是项目的整体架构图,感兴趣的小伙伴可以点击链接
mall-swarm视频教程
加入学习。
整套
视频教程
的内容还是非常完善的,涵盖Spring Cloud核心组件、微服务项目实战、Kubernetes容器化部署等内容,你也可以点击链接
mall-swarm视频教程
了解更多内容。