• 有一说一,很多时候加班还是因为效率不高,教你 10 个技巧


    点击关注上方“五分钟学算法”,

    设为“置顶或星标”,第一时间送达干货。

    转自寒食君

    俗话说,天下武功,唯快不破。也就是说要练成天下高手的话,出招速度一定要快,这样才能在江湖上立足,不至于掉了脑袋。

    而程序员要在IT界混出个名堂,也要有高效的工作效率才行。IT行业时时刻刻都产生着新知识、新技术,要想跟上变革肯定要有几把刷子。

    计划

    所谓计划, 其实就是编程中的设计阶段,当然,这里的计划并不像架构那样重量级。“计划”要求我们程序员在正式编程前最少要考虑一下下面的问题:

    1.你这个程序,工具或是项目的目的,究竟是用来干什么的。你只有知道做什么,要达到什么样的目的,你才能做得好,做得对。2.需要有什么样的功能。需要你给出来个功能表。这样可以保证我们不会遗漏了什么。3.准备好一些技术难题的前期调查和解决方案。不要等到开始编程的时候才去想。

    下面是你因为有“计划”而得到的好处:

    1.你能够清楚地明白你要做的东西长什么样。

    2.你能清楚知道你要开发的东西要干些什么事。

    3.你能够在开发工程中解决你所有可能发生的难题。

    使用伪代码

    伪代码是一个非常不错的方式,让你可以看到你要写得程序长什么样。

    一些人并不喜欢伪代码,因为他们并不想把同样的代码写两遍,一遍是伪代码,一遍是真代码。如果的算法很简单,那么就不需要伪代码了,如果你的算法比较复杂,比较绕,那么,有一个伪代码提纲挈领将会是一件非常不错的事情,因为他有利于让别人从一个简单的文档来了解一个复杂的算法或系统。这就好像一个电线的布线图一样,你可以很容易地通过一个简单的文档从复杂的实现中找到头绪。

    书写清楚的注释

    请在你的代码中书写清楚的程序注释。当然,注释不是越多越好,注释应该是简明扼要的,如果你的程序足够地清楚简单,那么注释就会显的多余。另外,注释应该是注释“原因,理由,目的”,而不是注释“是什么”。

    使用高效工具

    高效工具包括快捷键、shell、任务脚本等等。不要觉得自己不用这种工具也能干活,只不过多花了一点点时间而已,别小看这一点点时间,如果你每天都在写代码的话,今天一点点,明天一点点,将会为你省出很多的时间。

    减少代码

    减少代码的数量,坚持DRY(Don’t Repeat Yourself) 和 KISS(Keep It Simple & Stupid) 原则。这样可以有交物减少代码的复杂度,提高程序的易读性和可维护性,同时也能增加代码的质量。

    代码重用

    DRY (don’t repeat yourself) 原则就是告诉我们需要重用现有的代码。这样,你才能够站在巨人的肩膀之上,从而可以更多的关注和自己所要处理业务的逻辑。编程的最高境界就是写出来的代码是可能被重用的,重用和泛型这是编程里始终在追求的目标。

    代码重构

    一些老的代码可能已经不合时宜了,比较以前老的 C++ 的 STL 库在多线程下可能会出现很多问题。所以,我们自己的代码也是一样的,每过一段时间,我们需要把这些代码回收再利用,这就是软件的重构。重构代码所追求的并不是要提供更多的功能,而是让老的代码更有生命力,让老的代码跟上时代,更具扩展性,灵活性。

    使用设计模式

    设计模式是一种从代码级解决某一些问题的方法论。这个世界上有很多很多的设计模式,比如 MVC,单实例,工厂,观察者等等,等等。使用好的设计模式可以让你的代码更具重用和扩展性。

    泛型编程

    如果抽像出一些程序中相似的东西,然后把这些相似的东西用一个标准的东西实现,这也是编程所追求的最高境界之一,像诸如 C++ 中的 STL 之类的东西就是此类东西的最佳体现。灵活之及,几乎都快放之四海皆准了。

    使用开源的、稳定的代码

    这个世界上有太多太多开源的代码了。学会利用他们可以让你更节省时间和精力,因为我们完全没有必要把相当的东西实现若干次,学会使用开源的代码不但是一个学习的过程,同样也是一个增加编程效率的事情。

    使用版本管理工具

    版本管理工具应该是任何程序员都应该要去学会使用的东西,特别在一个团队中,如何管理程序的不同版本,如何维护,存放代码,版本管理工具绝对是开发过程中不可少的东西。其意义绝对不只代码备份和共享那么简单。


    推荐阅读

    •   C++是如何从代码到游戏的?•   告诉你一个学习编程的诀窍(建议收藏)•   自学编程的八大误区!克服它!•   新手如何有效的刷算法题(LeetCode)•   10款VS Code插件神器,第7款超级实用!•   在拼多多上班,是一种什么样的体验?我tm心态崩了呀!•   写给小白,从零开始拥有一个酷炫上线的网站!


    欢迎关注我的公众号“五分钟学算法”,如果喜欢,麻烦点一下“在看”~

  • 相关阅读:
    2020916 spring总结
    20200915--事务
    20200915-mybatis基础
    20200911--使用注解开发
    20200910--Spring配置
    20200909--spring基础-IOC
    20200909-待补充
    20200909记我所看到的问题
    20200909-spring基础一
    面向对象
  • 原文地址:https://www.cnblogs.com/csnd/p/16674792.html
Copyright © 2020-2023  润新知