全部导航
首页 > 正文

职场点睛:java程序猿的破茧成蝶之路!

时间:2017-10-21编辑:北大青鸟阅读:92次

        阿里巴巴研究员毕玄曾言道:一个优秀的工程师和一个普通的工程师的区别,不是满天飞的架构图,而是他写的每一行代码。

        自2017杭州云栖大会阿里巴巴Java代码规约插件发布以来,在业界形成了旋风式的效应,插件安装量和开源star数,都突破了预期。插件对于《阿里巴巴Java开发手册》文档进行了立体式地呈现。这背后离不开代码规约插件P3C项目组同学的努力,他们一步步让业界听到了他们的声音。今天我们就在InfoQ采访《阿里巴巴 Java 开发手册》作者杨冠宝(花名:孤尽)的访谈中,感受他们的思与行。

职场点睛:java程序猿的破茧成蝶之路!

        在阿里正式发布代码规范之前,孤尽回忆,那些牵一发而动全身的坏代码例子:如表达删除状态的字段名,非常多,像:delete/delete_flag/is_deleted,在数据分析时,总要小心翼翼,像文字游戏。而 0/1 还是 y/n 来表示已删除和未删除,更是神坑,极易造成线上问题。再如,批量接口定义时,没有接口保护很容易造成服务器方内存耗尽,产生 OOM 等等。

        孤尽认为,国内的开发者大多重技能,轻规范。此前有这么一个段子,程序员 A 和 B , A 每天只写 100 行代码,字里行间规范清晰,其余大部分时间都在整理文档,备注的非常详细, B 每天写 50000 行代码,却很少写注释,天马行空,为此还嘲笑 A 不够高效。随着业务越来越复杂,客户需求随时可变,两个人都开始组建团队,这个时候,功夫不负苦心人, A 之前的努力都派上了用场, B 只能佩服加惭愧。

        可见,编程规范,对于程序员而言,不是要靠强制约束,更关键的还是要让其从认知,思想觉悟上提高,骨子里意识到规范也是一种生产力。现在软件发展到现在,只是造一句 hello world 走天下的时代,已经过去了,需要团队紧密协作。编程风格的不一致,明显影响了团队研发效能。有时候,团队可以为没有营养的接口定义方式,能够吵上一天。公说公有理,婆说婆有理,重点是:最后没有达成一致。编程规范就是极大的减少没有营养的争论,真正把时间放在需要解决的核心问题上。 简单,适用的代码规约背后,所传递的是技术上的追求卓越,协同合作的精神,是每个技术团队不可缺失的重要利器。


职场点睛:java程序猿的破茧成蝶之路!

        Java 开发工程师都比较关心一个问题:代码出现之前如何排除掉不给 Bug 出现的机会?孤尽给出了建议:定位问题比解决问题更加重要。解决问题,在计算机的世界里,都是能够找出方案的。需要时时有异常分支流程的概念,清晰地知道这个世界上最强大的测试同学是用户,他们的操作行为千奇古怪,尽可能把自己想成傻的不能再傻的用户。曾经有一个故障,就是一个好奇的用户签名使用了:--&@# 这种奇怪的字符,结果被 SQL 注入,导致数据库被批量更新。

        有人说, Java 程序员的日常是搬砖,那么砖在哪里,就是一个个键盘。除此之外,难免还要和产品汪、运营、无厘头的用户打交道。都说普通程序员到优秀程序员的过程,无非就是量变到质变的过程。其实不然,代码多少行才会产生质变,很难量化,但是如果没有深度地思考,就是写再多的代码也是枉然。而在这其中,一名普通的程序员和一名优秀的程序员就出现了,优秀是知道自己的差距在哪里。一些刚入行两三年的程序员,经常说这个我懂了,那个我懂了,感觉写代码很枯燥,我要转型,要么往产品方向,要么往架构师方向,要么往管理方向。其实这距离一位基础程序员的自我修养,还只是摸到边。如果静下来,抬头仰望星空,发现优秀离自己两万里,而卓越更是无边无际。

        那一名优秀的程序员如何突破自己,成为一名卓越的程序员呢?卓越是弥补了这些差距。比如:1) 融会贯通技术知识体系。2) 品味编程语言的内在美,感悟语言哲学。3) 勇立新技术潮头。最后,突然发现,在计算机的世界里,所谓的全才是不存在的。真正的卓越,往往是某个语言方向,某个领域方向上,持之以恒的追求与实践,以及永不磨灭的热爱。

手机专享0元试学

与名师面对面交谈,找到适合你的专业,走向成功!
仅限100名,先到先得!

版权所有:洛阳融科职业技术培训学校

地址:洛阳市洛龙区龙门大道71号