专栏名称: 投行圈
投行圈是您身边垂手可得的互联网投资银行!助您创业、展业、传业;助您创富、聚富、传富!【温馨提示】本系统展示的信息并不保证投资者获得收益。投资有风险,决策须谨慎。
目录
相关文章推荐
小孙观债  ·  债市复盘:2024.12.11 ... ·  昨天  
小孙观债  ·  债市复盘:2024.12.11 ... ·  昨天  
曾星智中线投资  ·  在牛市怎样长期持股? ·  2 天前  
曾星智中线投资  ·  在牛市怎样长期持股? ·  2 天前  
游资赵大哥八年一万倍  ·  12.9今晚文章,价值万金! ·  3 天前  
游资赵大哥八年一万倍  ·  12.9今晚文章,价值万金! ·  3 天前  
龙船风电网  ·  布局辽宁!这家整机商投建叶片生产基地 ·  5 天前  
老李投资生活  ·  机器人大爆发!明天怎么干?! ·  6 天前  
老李投资生活  ·  机器人大爆发!明天怎么干?! ·  6 天前  
51好读  ›  专栏  ›  投行圈

优秀程序员打怪进阶必杀技

投行圈  · 公众号  · 投资  · 2017-06-03 22:00

正文

据最新国家统计局数据显示,随着人工智能、信息技术快速发展,IT业平均工资为122478元,首次超过多年老大金融业,排名各行业首位。金融业受银行业高管限薪、股市低迷等因素影响,增幅则排各行业门类倒数第二。

IT业中无疑程序员的薪资待遇无疑是极高的,但是,如果你要成为一个优秀的程序员,你可能需要注意下面事项,让他们成为你的习惯,你才能真正算得上是优秀程序员。

► 没有明确的职业目标

没有目标的人生,就像无根的浮萍,水流到哪里就飘到哪里,一生漂泊。

如果你想要在软件开发领域获得真正的成功,那么就必须知道该何去何从。或许面对遥远的未来,你已经有了一个粗略的目标了。但是除了这点还不够,你应当坚实自己的目标——清楚的定义在实现过程中的每个重要时间点所需要达到的效果。

许多程序员和其它方面的专业人士,数十年来他们都在相同的职位上反复地做着同样的事情。是的,你没有看错,是数十年。接受职业现状,不做任何改变,是造成这种悲剧的根源。对于未来,如果你没有明确的职业规划,这样的悲剧就很可能会发生在你身上。

► 缺少必要的注释

大段的iF-else缺少注释,让维护者没有办法快速分辨分支逻辑。特定地方存在hack或复杂逻辑的代码,缺少注释会让后面得人不明是什么原因。为了你好,也为了后来者好,请务必加上代码。

► 不变和变化的部分拆分

程序员中流传着一句话,此处不要写死,将来必改。有经验的程序员会将一些业务层的逻辑抽象出来,写成配置文件,好处就是如果后续需求有改变,只需改配置文件即可,肯定不会引入bug。

► 忽视测试部分

没有测试的代码等于没写,虽不敢全部赞同,却也有几分道理。从测试用例驱动开发,持续集成,每次编译自动跑测试用例,能够保证系统的稳定同时也减轻测试成本。

► 直接操作数据

你应该通过方法去操作数据,而不是直接操作数据,这样能够保证你总能操作数据正确。例如一个类中定义的属性发生变化了,代码中所有涉及到直接操作该属性的代码都需要修改。如果通过方法操作该属性,则仅需修改操作方法,对于外部调用者,类属性变化被屏蔽了,遵循了解耦的原则,代码稳定性大大提高。

► 大小差一错误(数组边界溢出)

这个错误基本上每一个程序员都犯过,通常在写循环的时候,由于循环变量的步长增加过多或过少,导致循环遍历元素的次数发生错误,产生数组溢出的异常。

这个错误会导致遍历数组元素时访问不存在的元素,或者遗漏应该遍历的元素。产生这个错误的原因就是你忘记了数组下标是从0开始还是从1开始了。

► 不要硬记代码

很多毕业新生会去背一些常见问题的答案。好比很多程序员都知道如何“用C中的位运算来交换两数”。但并不是所有人都知道那段代码真正做了些什么,又是如何完成这项任务的。

死记硬背并不是C编程面试的捷径。即便你侥幸答对了一两题,如果不了解基础概念还是无法通过整个面试。关键要了解编程背后的概念。重点并不在于你知道多少种语言,而在于你有多了解这些语言。

► 使用全局变量

话说回来,有的编程语言是完全没有局部变量这个概念的,所以不得不使用全局变量。关于全局变量,虽然我们可以在子函数中使用它,但是却没办法声明这一变量只能在该函数中使用。尽管如此,全局变量依然非常受欢迎,因为我们只需声明一次,即可到处使用,太省时省力了有木有。

但是它的优点也是它的缺陷,这也是关于全局变量最糟糕的事情——我们没有办法控制它的改变,也没办法控制何时去访问变量。假设某个全局变量在调用到程序之前赋予了一个特定的值,但是很可能调用完了之后值就变了,而你却毫无察觉。

► 不进行评估

你的目标是写一个应用程序,你斗志昂扬,愈战愈勇。但是突然间,你发现了性能问题和内存不足的问题。

进一步的调查表明,尽管你的设计对于现在这样小型的用户数量、记录、条目运行良好,但是却不适合大规模的情况——Twitter就是例子。又或者它现在在你的8GB RAM和SSD的3GHz PC上运行顺畅,但一旦到普通的PC上,它会比乌龟爬还要慢吞吞。

► 不融入社区生活

在程序员生涯中有一样东西令我受益颇深,它就是社区的帮助。成为这个大群体的一部分,不仅让我拥有了归属感不再孤独,也帮助我改进了自身的技能,向着更高的平台发展。

如果你还没有参与社区生活的话,我强烈建议你融入这个圈子里来。它是一个比自我宽广得多的平台,有助于你的发展。

►不重视“软技能”或非技术的东西

我认识许多擅长写代码的程序员,他们可以用所写的算法把我耍得团团转,他们对复杂架构的理解力和思考能力令我自愧不如。

但是真实的状况却是:技术不如他们的我,软件开发领域的职业发展却全面超过了他们,除了职位,还包括薪水、生产力等诸多方面。

在这里我并不是为了吹嘘自己多了不起,而是为了向那些只埋头专研技术的程序员们说明“软技能”对于职业发展有多重要。

推荐文章
曾星智中线投资  ·  在牛市怎样长期持股?
2 天前
曾星智中线投资  ·  在牛市怎样长期持股?
2 天前
游资赵大哥八年一万倍  ·  12.9今晚文章,价值万金!
3 天前
游资赵大哥八年一万倍  ·  12.9今晚文章,价值万金!
3 天前
老李投资生活  ·  机器人大爆发!明天怎么干?!
6 天前
老李投资生活  ·  机器人大爆发!明天怎么干?!
6 天前