菜鸟程序员都是怎样写代码的?你也可以学一手

简介: 每个程序员都要经历“菜鸡”这个阶段,那么,在菜鸡阶段,程序员是怎么写代码的呢?下面12大瞬间,能否找到你当初的影子?1、命名不规范可能不少程序员都会有这样的经历,写代码时灵光乍现,为了保证在灵感消逝前敲出更多代码,敲代码速度飞快,当然命名就显得很随意了。

每个程序员都要经历“菜鸡”这个阶段,那么,在菜鸡阶段,程序员是怎么写代码的呢?下面12大瞬间,能否找到你当初的影子?

1、命名不规范

可能不少程序员都会有这样的经历,写代码时灵光乍现,为了保证在灵感消逝前敲出更多代码,敲代码速度飞快,当然命名就显得很随意了。什么样奇奇怪怪的命名都有:xiaonaigou,ergouzi,xxxx,j1,llst等等,可能过后这些命名连你自己都你完全不知道是什么鬼。

2、日志不规范

可能有些同学会问:日志?那是什么东西,能吃吗?有不少同学会忽视日志的重要性,报错的时候也是选择在本地改代码然后直接部署,但是等待出了问题不知道怎么解决的时候,找谁来都会摸不着头脑。

3、不写单元测试

确切来说,是不按TDD的方式开发。在现在IDE这么强大的情况下,先写单元测试的习惯,不仅能够使得代码更具严谨性,而且也能够极大提升效率。可是很多菜鸟理解不了单元测试的价值,直到代码重构,需求变更的时候,才欲哭无泪!

4、先集成,再测试,再放弃

很多时候,菜鸡在引入第三方的库,框架,接口或者是服务的时候,最喜欢的事情就是直接和自己原有的代码集成在一起。结果,却跑不起来了,而且最崩溃的是,根本不知道问题出在哪里。有经验的程序员会先跑通官方提供的Demo,再想办法一点一点加上自己的业务。

5、没有理清逻辑,边做边猜

前端菜鸡在这里的问题特别多,做支付,不清楚支付的流程,分不清楚定义,总以为前端就是处理好借口和数据展示。先把逻辑处理好,弄清楚流程,再去动手才好。

6、不做方案,直接开干

不做方案就意味着做事全凭感觉,而写代码时最好的习惯是先在脑袋里把所有的需求细节过一遍,实现细节拿出来。

7、不关注性能

这是新手菜鸡很容易犯的错,什么是性能呢。对后端来说就是TPS和响应时间,对前端来说就是响应时间。很多新手菜鸟的习惯就是把东西做出来,然后再做优化。但往往是东西做出来了,优化留给了别人。对性能的关注也是晋升中级程序员最关键的技能点。在写代码的时候,有经验的工程师会知道了这个方法这个函数这个功能点的性能怎么样,瓶颈在哪里。

8、害怕重构

“程序员最大的勇气就是看自己三个月之前写的代码。”这句话一点都不假。其实重构并不应该是在几个月之后重构,最好的方式是实时重构。

9、只求做出来,不求最佳实践

不少菜鸡做项目时,硬编码居多,没有可扩展性,用很丑陋的方式完成了功能。

10、不考虑未来需求的变化

工程师的水准,其实可以分成以下几个阶段:面向功能编程-面向性能编程-面向未来编程。工程师拿到需求的第一件事,应该聚集在以下几个问题:

第一,哪些需求是我之前完成过的;

第二,哪些需求是有可能变化的;

第三,有几种方案,分别支持什么样的需求变化。

但是,菜鸟却永远不会考虑这么多,一是因为对业务不熟悉,判断不出来哪些需求可能会产生变化;二是对可选的方案掌握的不多,根本就没有什么可选的余地;三是没有这种思维习惯,分不清楚哪些是现在要完成的,哪些是未来可能会支持或者是变动的。

11、遇到问题不会试错

这也是新手常见的问题。很多时候新人会遇到问题,解决不了,去找一个有经验的工程师,这个有经验的工程师虽然也没有遇到过这种情况,但是却有解决问题的思路,通过试错很快就跑通了。其实,解决问题就是一个分析推理的过程。解决问题应该是:

1、寻找正确的代码;

2、理清楚正确的执行顺序;

3、重现错误;

4、最小化错误产生的场景;

5、修改代码到一个已知的错误类型等等等。

12、不做数据量的预估

后端工程师在前期经常会忽视数据量的大小,没有形成一个好的习惯。写代码只注重功能,没有一个关于数据量的概念。比较好的做法是,程序员要对数据很敏感,后端要知道每一个表的规模可能会有多大,当前的系统能支持的数据库表的大小是多大,而前后端都需要知道每一个操作,都分成了哪几个步骤,每一个步骤花费的时间是多少,大概占用的内存是什么样的。做到这一点其实并不难,难的是养成这种习惯,初级工程师眼里看的是功能和代码,中级工程师眼里看到的是数据和时间。

相关文章
|
8月前
|
开发者
作为微信小游戏开发者,这份白皮书不看可太吃亏了!
作为微信小游戏开发者,这份白皮书不看可太吃亏了!
226 1
|
前端开发 JavaScript 小程序
预备金九银十,这套前端面试小册阁下请收好
预备金九银十,这套前端面试小册阁下请收好
89 0
|
消息中间件 存储 JavaScript
如何写出一手让同事膜拜的漂亮代码?
如何写出一手让同事膜拜的漂亮代码?
|
存储 消息中间件 Oracle
莎气藤藤YYDS!如何写出一手好的业务代码?
莎气藤藤YYDS!如何写出一手好的业务代码?
170 0
技术总监亲自上阵,手撸了一门编程语言,同事直呼哇塞
都说程序员的三大浪漫是:操作系统、编译原理、图形学;但图形学确实是特定的专业领域,我们几乎接触不到,所以对我来说换成网络更合适一些,最后再加上一个数据库。 这四项技术如果都能掌握的话,可以在 IT 行业横着走了,加上这几年互联网行业越来越不景气,越底层的技术就越不可能被替代;所以为了给自己的 30+ 危机留点出路,从今年上半年开始我就逐渐开始从头学习编译原理。 功夫不负有心人,经过近一个月的挑灯夜战,每晚都在老婆的催促下才休息,克服了中途好几次想放弃的冲动,终于现在完成了 GScript 一个预览版。 预览版的意思是语法结构与整体设计基本完成,后续更新也不太会改动这部分内容、但还缺少一些易用功
|
算法 程序员 开发者
程序员苦逼生活入门总结
如何成为优秀的软件开发者,并且想要一只开发下去,保持兴趣的方法。回想走过的软件生活历程,总结一下
124 0
|
移动开发 前端开发 JavaScript
【新人福利】前端学习路线,再也不用发愁自己该从何学习
【新人福利】前端学习路线,再也不用发愁自己该从何学习
266 0
【新人福利】前端学习路线,再也不用发愁自己该从何学习
|
SQL JavaScript 前端开发
520,一份给程序员的“硬核”脱单秘籍
各位,520快乐! 今天是个粉红色的日子,我们来聊聊和技术无关的“技术活”,比如:“如何表白?”当技术人碰上心动的姑娘,他的浪漫开关就打开了。
520,一份给程序员的“硬核”脱单秘籍
|
前端开发 程序员
【晒出你的第83行代码】前端专家专门找出来珍藏的反面代码教材,请大家来拍砖!
在五四青年节之际,社区发起了来晒晒属于你的“第83行”的活动,活动中邀请业界的大牛、大神们来晒代码或者Review代码!本轮我们晒晒前端专家巴洛克上校专门找出来珍藏的反面代码教材。
1711 0
|
Java 程序员
一个“码农”自述的血泪史:当了35年程序员,我最大的遗憾就是没抓住机遇转行
注:这是一个“一子错,满盘皆落索”的故事。兢兢业业干了35年的程序员,最后却认识到,程序员的力量太过微小。无论你写程序有多厉害,你都很难有权力真正改变一些失败的产品、失败的项目。
1558 0