如何节省更多的时间,犯更少的错误。

在这个总结中,我列出了一些对我的职业生涯有帮助的事情。它读起来很快,但是用得好可能要花一辈子的时间。我写代码已经将近15年了,但有时候,我还是不得不停下来思考这个职业的关键部分。

  1. 把代码分解为小函数。

  2. 如果你下班的时候还没有解决问题。关掉电脑,留到第二天再解决。不要再想这个问题了。

  3. YAGNI principle:代码的功能不要超越需求。不要预测未来,只要尽快创造出可行的东西就可以了。代码只需要解决当前必须要解决的问题。

  4. 你不需要了解所有内容,也不需要了解所有现有框架。最重要的是要有一个良好的基础。在开始使用框架之前,要深入了解这门语言,并学习一些基本的东西,比如SOLID原则或如何编写干净的代码。

  5. KISS:“Keep it simple, stupid”或“Keep it stupid simple”是一个设计原则,它表明大多数系统在保持简单而不是复杂的情况下工作得最好。虽然这是合乎逻辑的,但有时很难实现。

  6. 不要想得太多。

  7. 如果你遇到问题或bug的时间太长,那就走开,稍后再来解决它。通常,我在从办公室到卫生间的路上就会想到这些问题的优秀解决方案。当你对客户或同事生气的时候,特别是如果你还想保住你的工作,走一走也是明智的。

  8. 学习编写有用的测试并学习做TDD。TDD是一种依赖于重复非常短的开发周期的软件开发过程:编写测试、运行所有测试并查看新测试是否失败、编写一些代码、运行测试、重构代码、重复。

  9. 先解决问题,然后再写代码。不要在不知道怎么做的情况下开始编码。

  10. 不要去记代码,而是要理解其中的逻辑。

  11. 如果复制粘贴stack overflow解决方案,请确保可以理解它。学会使用 Stack Overflow的正确方法。

  12. 如果你想学习,那就去练习。举个例子,让它们发挥作用,因为仅仅阅读是不够的。

  13. 学习别人的代码,也让别人时不时地学习你的代码。结对编程和代码复查是一个好主意。

  14. 不要重复造轮子。

  15. 你的代码就是很好的文档。

  16. 知道如何google东西。为此,你需要有经验和大量阅读,知道应该找什么。

  17. 你的代码将来可能需要自己或者别人来维护,所以写代码时要考虑到读者,而不是试图成为最聪明的人。让它读起来像你在读故事。

  18. 利用google来解决错误的好方法是复制粘贴这个错误。

  19. 永不放弃,最终,以这样或那样的方式解决它。糟糕的日子总会过去的。

  20. 休息,休息,再休息。解决问题的好办法是有一个冷静的头脑。

  21. 学习使用软件设计模式。设计模式是软件设计中常见问题的解决方案。每个模式都类似于一个蓝图,你可以自定义该蓝图以解决代码中常见的设计问题。(不要重复造轮子)

  22. 尽可能使用集成工具和自动化。

  23. 做代码练习。code kata是一种编程练习,帮助程序员通过练习和重复来提高他们的技能。这里:https://codingdojo.org/kata/

  24. 面对接口编程,而不是面对实现编程。依赖注入是必需的。参考SOLID原则。

  25. 重构-测试-重构,是一种重构现有代码、修改和改进其内部结构而不改变其外部行为的技术。

  26. 需要帮助的时候就去问。不要浪费时间。

  27. 熟能生巧。

  28. 虽然有时注释可以帮助你理解,但不要太在意它们。他们可能过时了。

  29. 熟悉你的开发环境,并购买于一个足够强大的开发环境,比如IntelliJ。

  30. 重用组件。

  31. 在开发web应用程序时,请考虑mobile-first以及相关的功率和带宽限制。

  32. 不要过早地优化或重构。更重要的是尽快有一个最小的可行产品。

  33. 永远不要为了节省几分钟而选择低效的捷径。每次写代码的时候,尽你很大的努力!

  34. 遵循文档的标准。

  35. 用户不是技术人员。当你开发你的UI时,想想它。

  36. 一定要用Github或bitbucket之类的代码管理系统,做小和频繁的git提交。

  37. 使用日志比调试代码更好。记录所有关键信息。

  38. 编码时要保持一致。如果你使用了一种风格,请始终使用同一种风格。如果你和更多的人一起工作,所有的团队使用相同的风格。

  39. 不要停止学习,但要比学习新的语言或框架更关注软件开发的基础知识。

  40. 最后,耐心以及热爱你所做的事情。