工资翻倍的秘诀--努力提高代码的质量
2023-04-18 15:16:02 时间
看了园子中的一篇奇文, 《重构者的20种死法》。居然有20多个人推荐。我顿时有了放下手头工作,写一篇博文的动力。
首先来看一个事实,百度,谷歌,腾讯的程序员们的工资是一般程序员的2,3倍,高级程序员的工资可能是5倍以上。
国外创业企业的软件开发者由于可以拿到股份,收入可能有百倍之多。这是为什么呢?
他们的电脑性能最多比我们的好50%吧。
他们的工作时间可能还要比我们少。
他们的人体构造和我们也没有任何区别。
他们的智商就算高,也不会高一倍吧。
那么他们凭什么拿那么多钱呢?其实很简单,那就是他们的的产品--代码,比我们写的代码好几倍,那么的他们的收入就可以高几倍。
一个快餐馆的厨师的收入可能只有2000元, 而五星级宾馆的大厨年薪可能有百万。前者的产品只能管饱,后者可以成为艺术。
好的代码就如同是特种钢,需要经过各种工序的加工,锤炼才能形成。而坏的代码就如同是粗钢,甚至是地条钢。
所以即使暂时写不了高质量的代码,但绝对不能放弃对高质量代码的追求。
如果从业3,5年,即使写不了如同特种钢一样的代码,至少也要能写出不锈钢一样的代码吧。
那么什么是好的代码呢?
1,Expressiveness(表达性):好的代码一看就能明白作者的意图,且思路清晰。比如,函数名的选择,代码的组织等
2,Coupling(耦合) 和 cohesion(内聚)的恰当平衡,耦合太多,那么修改的时候牵连太多,无法下手。内聚不够,则代码冗余严重,也不容易修改。
3,消除代码的smell(臭味),比如过多的临时变量,过长的方法,过大的类等等。
4,Generic(通用度),比如能在一定程度上适应用户的变化。
以上是纯就代码而言,如果从应用角度来看,还有很多重要方面
首先来看一个事实,百度,谷歌,腾讯的程序员们的工资是一般程序员的2,3倍,高级程序员的工资可能是5倍以上。
国外创业企业的软件开发者由于可以拿到股份,收入可能有百倍之多。这是为什么呢?
他们的电脑性能最多比我们的好50%吧。
他们的工作时间可能还要比我们少。
他们的人体构造和我们也没有任何区别。
他们的智商就算高,也不会高一倍吧。
那么他们凭什么拿那么多钱呢?其实很简单,那就是他们的的产品--代码,比我们写的代码好几倍,那么的他们的收入就可以高几倍。
一个快餐馆的厨师的收入可能只有2000元, 而五星级宾馆的大厨年薪可能有百万。前者的产品只能管饱,后者可以成为艺术。
好的代码就如同是特种钢,需要经过各种工序的加工,锤炼才能形成。而坏的代码就如同是粗钢,甚至是地条钢。
所以即使暂时写不了高质量的代码,但绝对不能放弃对高质量代码的追求。
如果从业3,5年,即使写不了如同特种钢一样的代码,至少也要能写出不锈钢一样的代码吧。
那么什么是好的代码呢?
1,Expressiveness(表达性):好的代码一看就能明白作者的意图,且思路清晰。比如,函数名的选择,代码的组织等
2,Coupling(耦合) 和 cohesion(内聚)的恰当平衡,耦合太多,那么修改的时候牵连太多,无法下手。内聚不够,则代码冗余严重,也不容易修改。
3,消除代码的smell(臭味),比如过多的临时变量,过长的方法,过大的类等等。
4,Generic(通用度),比如能在一定程度上适应用户的变化。
以上是纯就代码而言,如果从应用角度来看,还有很多重要方面
例如
1,代码和商业逻辑的吻合度,尽量减少用户不需要的代码。比如,可以采用BDD等
2,代码所映射的商业场景本身的价值,也决定了的代码的价值,如果代码所映射的商业逻辑本身比较小众,代码的价值也不会太高。
如果具备的以上特性的代码,就会成为有生命力的活代码。这样的代码具有高度的进化潜力,自然也就价值连城。
而所有的这一切,一个非常重要的步骤,就是重构。而具有重构能力的程序员才能拿到高薪。
优秀的程序员永远都是稀缺商品。
有人会说,你说的一切都太理想化,我们的领导和同事根本看不上。
我的回答是,你需要对自己的人生负责。人生是一个迭代的过程, 当你的能力增加了,你才有机会遇到好的领导,好的同事。而好的领导和同事会进一步提升你的能力,从而你有机会遇到更高层次的领导和同事。
千万不要在起跑线上放弃!
相关文章
- 【技术种草】cdn+轻量服务器+hugo=让博客“云原生”一下
- CLB运维&运营最佳实践 ---访问日志大洞察
- vnc方式登陆服务器
- 轻松学排序算法:眼睛直观感受几种常用排序算法
- 十二个经典的大数据项目
- 为什么使用 CDN 内容分发网络?
- 大数据——大数据默认端口号列表
- Weld 1.1.5.Final,JSR-299 的框架
- JavaFX 2012:彻底开源
- 提升as3程序性能的十大要点
- 通过凸面几何学进行独立于边际的在线多类学习
- 利用行动影响的规律性和部分已知的模型进行离线强化学习
- ModelLight:基于模型的交通信号控制的元强化学习
- 浅谈Visual Source Safe项目分支
- 基于先验知识的递归卡尔曼滤波的代理人联合状态和输入估计
- 结合网络结构和非线性恢复来提高声誉评估的性能
- 最佳实践丨云开发CloudBase多环境管理实践
- TimeVAE:用于生成多变量时间序列的变异自动编码器
- 具有线性阈值激活的神经网络:结构和算法
- 内网渗透之横向移动 -- 从域外向域内进行密码喷洒攻击