专栏首页非著名程序员编程王道,为「慢」不破

编程王道,为「慢」不破

最近一段时间,在团队中我发现好多程序员,尤其是初级或者新手程序员常常犯得的错误都很初级,经常犯一些编程中的大忌。不是没有能力做好,而是做事不细心,我一直在给他们灌输一个思想,其实编程的核心和王道就是:慢就是快。都说天下武功,唯快不破。但是在编程的道路中,天下代码,而是:唯「慢」不破。

今天,我们就来谈谈新手程序员或者经验少的程序员常常犯得大忌是哪些,表现形式有哪些,以及如何避免的问题。

1、兵马未动,粮草先行

所谓兵马未动,粮草先行,就是讲做一件事之前一定要做够充分的准备工作。而很多程序员犯得大忌和表现形式就是:原型需求和整个产品的业务逻辑都没有搞明白之前,就开始动手了。边做边开始捋需求,对于前端程序员来讲,这还好说一点,但是对于后端的程序员来说,真的是大忌了。因为架构的设计,数据库的设计都是要依据这个产品的业务逻辑来实现的。

这里讲的编程王道,唯「慢」不破,指的是前期一定要花大量的时间来搞明白产品的需求和业务逻辑,不要着急动手去做代码的实现。

我感觉作为一个程序员来讲,在正式敲代码实现之前,搞明白产品需求和业务逻辑到确定数据库的设计和架构的设计,至少得占这个项目所有时间的 1/3 左右才合适,甚至有的难度大的 ERP 式的系统,占到一半时间也有可能。只要这些确定都想通了,剩下的就是噼里啪啦的敲代码了。

之前,有个朋友开玩笑的说:

我看你们程序员敲代码都喜欢使用机械键盘,噼里啪啦的敲代码的声音很大,感觉你们是在做体力活似的。

我想说:我们其实喜欢的是噼里啪啦敲代码的那种感觉,键盘的敲击声能够给人带来一种爽感。但是我们程序员最动脑的工作其实就是前期的准备工作,是设计的思考,后期确实就跟体力活也差不多。

2、编程中慢在细节,快在编码

兵马未动,粮草都已经先行了,前期我们准备工作都做好了,剩下的就是敲代码了。虽然在编码的过程中确实很快,但是也要注意一些细节。

很多程序员编码习惯的问题,或者是为了追求速度的问题,导致在一些该注意细节的地方没有注意到。比如编程的大忌和表现形式就是:后台程序员逻辑判断考虑不周全,有的甚至不写,直到测试测试出来,才会写;而前端程序员不注意细节的体验问题,出现错误不弹窗处理,不告知用户,有些该提示的地方,不给用户提示,不是不知道,就是懒得写。

快在编码不假,但是要慢在细节。后端程序员一定要把逻辑判断想周全,前端程序员一定要注意用户体验。这都是经验。

3、编程大忌:不要抱有先实现,后完善的幻想

有很多程序员都有这样的借口,项目比较着急,我先实现这个功能,能用就行,后期我再回来完善就行。后台程序员可能会想,这个接口先写完,给前端用着,一些判断不先加,等 过后我统一回来完善。前端程序员想这个弹框不先写,等做完了,再一一加上。项目太急了,先做完再说。

这样能叫做完吗?编程的大忌,这是大忌。不要抱有先实现后完善的幻想。敲代码最重要的就是「一步到位」。

你告诉我:有多少程序员能有时间回来完善和重构的?你这样想了,后期不出 bug 或者测试不提,你可能都忘了,都可能记不起来这件事了。因为你可能在你心中永远都认为你在忙。

再者,一个程序员最讨厌的一件事是什么?修改代码,不管是修改你自己的,还是修改别人的。回来修改代码的时间是极大的浪费,以为你要在你写的忙忙代码中找到你当时写的不好的地方,完善它。你找代码的过程是非常浪费时间的。

有多少人能够回来完善?又有多少人会重构代码?反问一下自己。

总结

说完这些之后,我们再来算一下时间成本,为什么慢就是快呢?因为如果你前期花足了时间准备和设计,在编程的时候,又尽量完善的注意到了细节,你项目最终完成的时候,bug 就会少很多,就可以及时交付。如果你认为先实现,后完善,你项目交付测试的时候,bug 会很多,很多,你修改 bug 的时间绝对会大量的浪费时间,最后很容易导致项目不能按时完成和交付。

很多人算不过这个成本,慢就是快,看似你的快,其实并不是快,是伪快。所以,作为一个程序员切勿犯到上面提到的编程大忌。这是一个编程习惯和风格养成的问题。如果有一个好的变成习惯,你将会受益终生。

最后,编程王道,唯「慢」不破。

文章分享自微信公众号:
非著名程序员

本文参与 腾讯云自媒体分享计划 ,欢迎热爱写作的你一起参与!

如有侵权,请联系 cloudcommunity@tencent.com 删除。
登录 后参与评论
0 条评论

相关文章

  • 编程王道,唯“慢”不破

    ? 编程王道,唯“慢”不破 人和人之间编程速度的差异还是很大的,有的程序猿写代码非常快,有的却常常是龟速。Jeffrey Ventrella最近在一篇文章里探...

    非著名程序员
  • 看用友王文京、太极刘淮松、东华吕波、超图宋关福谈以往的过失

    访谈嘉宾:用友董事长王文京、太极总裁刘淮松、东华软件总经理吕波、超图软件总裁宋关福。 上周我们发表了《软件行业的十字路口看用友、太极、东华、超图各位老总如何谈...

    人称T客
  • 大学生上“暗网”发现“财富密码”,结果…

    王某是某大学的在校学生,2020年暑假期间,王某在上网时偶然浏览到了一些关于“暗网”的信息,这让他十分感兴趣。于是,王某通过种种渠道找来诸多教程学习,成功登录了...

    小小詹同学
  • 你知道什么是最美C语言代码吗?来看一下说说你的想法

    各位小伙伴,看到标题大家肯定会联想许多,到底怎样算最美的代码?话不多说,代码先上:

    诸葛青云
  • 你见过最美的C语言代码是什么?

    有人会疑问了,这怎么算最美代码?其实,今天之所以写这篇文章,要从下面的这幅图说起,我们慢慢道来。

    7089bAt@PowerLi
  • 响铃:2019年第一匹黑马:它给游戏行业带来哪些思考?

    近日,完美世界联手腾讯游戏打造的自由飞行战斗MMORPG手游《完美世界》上线,该产品上线前就有超过千万的玩家预约。上线后很快就出现了全线服务器火爆飘红的情况。作...

    曾响铃
  • SAP成都研究院非典型程序猿,菜园子小哥:当我用UI5诊断工具时我用些什么

    身边有些年轻同事曾经向我表达过这种困扰:尽管完成日常工作没有任何问题,但是还想更进一步,把代码写得更好些,做到精益求精。现在写的代码能实现功能,但是不知道可以怎...

    Jerry Wang
  • 安卓还能火多久?现在学晚不晚?

    疑惑一 学习编程过程中,看的懂例题,但是拿到新题还是没有编程思路,为啥? 民间有一句俗语,师傅领进门修行在个人,编程思想和编程基础的建立不是一日之功,初学者遇...

    程序员互动联盟
  • 4亿、7万、1.5万...我们数了数腾讯教育的果实

    小超(化名)是留守儿童,父母常年在外打工,家庭生活的缺失,使得他“性格或者成绩,都存在一些问题。在校时,他几乎不与任何人交流。”小超的班主任说。 腾讯教育“班...

    鹅老师
  • 小蛇学python(1)前言

    最近朋友圈被python刷了屏,无论是同学,还是运营,文案,甚至连微商们都立下了好好学python的flag,都发了分享进入python即时训练营的朋友圈。至于...

    用户2145057
  • 极客周刊丨某大型网站被植病毒,王卡宽带费1元/日,BTC价格破1万美元...

    一川水巷
  • 感悟:谈谈编程中的哲学,数学,基础,理论,思考与经验

    做为一个新人,我是无上尊崇理论的,很遗憾,我却看到不少人对理论和书本嗤之以鼻。 今天在一个web群里,突然又有人问到,md5(a)=b,那么已知b,那么...

    wangxl
  • 01.爬⾍概述

    什么是爬⾍? 不知道各位是否遇到过这样的需求. 就是我们总是希望能够保存互联 ⽹上的⼀些重要的数据信息为⼰所⽤.

    ChinaManor

扫码关注云+社区

领取腾讯云代金券