美文网首页
写代码那点事

写代码那点事

作者: bruce_wu | 来源:发表于2016-07-10 18:20 被阅读71次

算来进入软件开发这个行业也有十年了(是不是暴露年龄了),当我还是一个开发的新人的时候我觉得写代码是一件很酷很爽的事情,能让代码跑起来,能让项目正常的运行起来就是很爽的一件事情,代码写的怎么样却从来没有关注,只要程序能正常的运行起来就好了.
然而随着作为一个码农这时间越来越长,越觉得写代码不是一件简单的事情.因为虽然我们写的程序经过测试.修改上线后能正常运行,但是有时让我回过头来改我以前写的代码,我自己都不愿意读自己写的代码.这就像饭店里做菜的厨师,如果做出来的菜自己都觉得难吃,那么你能指着客户常来吃么?所以我一直在想如何才能写出好的代码,要想写好代码首先要知道什么样的代码才是好代码.

  • 我认为这样的代码才是好代码
    其实,做开发的同志们大都有这样的问题,有人认为好的代码是容易读懂的代码,有的人认为好的代码是容易维护的代码,有人认为好的代码是效率高的代码.
    我认为好的代码有以下几个特点:
    1. 逻辑清晰,易于阅读
    2. 模块和函数划分合理,易于维护
    3. 合理的注释
    4. 执行效率高
  • 如何写出好代码
    首先,对于研发类的工作,因为大部分情况下做的功能后面都会有修改,那么代码就一定要易于阅读,否则后面再修改的时候非常困难.
    那么什么样的代码易于阅读呢.其实我们的代码是以函数划分的,那我们阅读代码的时候其实是想要读懂一个函数或者是函数中一部分代码的功能,那么如果这个函数的代码很长,在你的电脑上翻了两屏还没有完,那你会觉得这个函数的代码容易阅读吗?其实我们一个函数的代码之所以很长是因为我们没有把每个函数的功能封装好,开发的一个原则就是一个方法或函数只做一件事情,仔细想想我写的代码中很长的函数一般是因为一个方法或函数做了太多的事情.
    这就是我前面说到的好代码的第二点,模块和函数的划分合理.模块和函数划分合理后,代码的可复用性就会比较高.因此能极大的减少在很多地方出现同样功能代码的情况.
    虽然我们的代码写的条理清晰,阅读方便,但是对于没有接触过这块代码的人来说还是需要耗费时间和精力去了解这块代码,这时候如果有一些简短明了的说明,那么会极大的提高阅读代码的人理解代码的效率.
    最后,代码的执行效率要高,这就要求我们平时写代码的时候要考虑一下代码的执行效率,不能只考虑代码实现功能,不考虑执行情况,写代码的时候,要在大脑中有一个大概执行情况评估,这样写会不会占用过多内存(例如一次查询出太多数据),或者这样写会不会增加数据库的压力(例如对数据修改和写入操作比较多的时候应该考虑使用事务).

相关文章

  • 写代码那点事

    算来进入软件开发这个行业也有十年了(是不是暴露年龄了),当我还是一个开发的新人的时候我觉得写代码是一件很酷很爽的事...

  • 关于我开始写代码那点事

    如果硬要把我和写代码扯上点关系,不得不承认,咱懂点英语,至少看文档的时候,有种单词都差不多认识的虚幻的优越感。至于...

  • 写代码那点事(二)分享一些代码

    最近这段时间一直在读大家写的代码,发现有时候不好的代码有些是因为不了解程序运行的本质,有些代码是因为没有用心这次我...

  • 代码规范那点事

    最近这个月,从制作 CocoaPods 私有库,到搭建 Git 服务器,大多数时间都花在了调研和试错上。不过调研试...

  • 写小说那点事

    我最近有点事情,正在更文的小说估计要断几天。等忙完了,后续慢慢补上。 前几天,娘娘安然还说我,怎么老是躺着舒适圈里...

  • 写教案那点事

    停课已经一周了,根据学校的安排,暂时没有进行网课,只是布置了作业,让学生完成——其实就是一种牵绊,防止学生随意外出...

  • iOS简化代码那点事

    首先声明,本人是一名菜鸟,写一些技巧跟新手分享,大神勿喷。如有不足,敬请大神指点。 在做开发时,项目中通常被繁琐冗...

  • iOS时间那点事--NSDateFormatter

    文章出处 iOS时间那点事--NSDate iOS时间那点事--NSDateFormatter iOS时间那点事-...

  • 写技术博客那点事

    这边文章为转载,原文https://zhuanlan.zhihu.com/p/56768925 前言 写文章是一个...

  • 写论文的那点事

    开头先表个态哈,我就一个小抄书的。。。 没发过几篇论文,之所以取这题目说事,存为了应付每天的日更。。。 言归正传,...

网友评论

      本文标题:写代码那点事

      本文链接:https://www.haomeiwen.com/subject/lqydjttx.html