专栏首页机器之心解决不了bug先放着,这里有40条提升编程技能小妙招

解决不了bug先放着,这里有40条提升编程技能小妙招

选自Medium

作者:Kesk

机器之心编译

参与:魔王

这 40 个小贴士,或许可以帮你提升编程技能。

如何提高编程技能?恐怕很多开发者思考过这个问题。最近,拥有将近 15 年开发经验的软件工程师 Kesk -*- 写了一篇博客,列举了 40 条对其职业生涯有所帮助的事项。

或许,通过以下 40 个小贴士,你可以提升自己的编程技能。

1. 将大块代码拆分成函数。

2. 下班的时候还有问题没解决,请关上电脑,明天再看。

3. YAGNI 原则(你不会需要它):只写别人要求你写的功能。不要预测未来,只需要尽可能快地完成开发。只编码解决当前问题最必要的部分。

4. 你不需要什么都懂,也不需要了解所有框架。最棒的事情莫过于打好基础。在开始使用一个框架前先深入了解这门语言,学习基础的事项(如 SOLID 原则),或者如何写出干净的代码。

5. KISS 原则:KISS(保持简单和愚蠢)原则表明,大多数系统保持简洁而非复杂化,就可以运行得很好。尽管这很符合逻辑,但有时候却很难做到。

6. 不要想太多。

7. 如果你和一个问题或 bug 斗争了太长时间,先离开一会儿,等下再回来。通常,在离开办公室去往卫生间的路上,解决方案就会出现在脑海里。当你对客户或同事生气时,也建议你暂时离开去走走,如果你还想保住工作的话……

8. 学习写有用的测试,学着用 TDD(测试驱动开发)。TDD 是一种软件开发流程,它是对如下简短开发周期的重复:写测试;运行所有测试,查看新的测试是否运行;写代码;运行测试;重构代码;重复。

9. 先解决问题再写代码。不要在一筹莫展的时候开始编程。

10. 不要记代码,而是理解逻辑。

11. 如果你复制粘贴 Stack Overflow 中的解决方案,请确保自己首先理解它。学习用恰当的方式使用 Stack Overflow。

12. 想学习,先实践。创建示例,并使其运行,因为只通过阅读来学习远远不够。

13. 研究他人的代码,也时不时让别人研究你的代码。结对编程并进行代码 review 是不错的想法。

14. 不要重复造轮子。

15. 代码是最好的文档。

16. 了解如何搜索。你需要有经验,大量阅读,了解需要找什么。

17. 你写的代码以后会由自己或别人进行维护,因此写的时候想着读者,不要把自己当做最聪明的人。写代码要像写故事一样。

18. 用谷歌解决错误的最佳方式是复制粘贴。

19. 不要放弃,问题总能得到解决的。糟糕的时刻总会过去。

20. 好好休息。解决问题的最佳方式是先让大脑得到充分休息。

21. 学习使用软件设计模式。设计模式是软件设计常见问题的解决方案。每个模式就像一个蓝图,你可以依据它进行自定义,进而解决自己代码中的常见设计问题(记住,不要重复造轮子)。

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

23. 练习编码套路(code kata):编码套路是一种编程练习,可以帮助程序员通过重复实践来提升技能。示例参见:https://codingdojo.org/kata/

24. 编程并达到接口水平,而不是实现水准。依赖注入是必要的,参见 SOLID 原则。

25. 重构——测试 - 重构。重构即对现有代码进行重建、改动,在不改变其内部行为的前提下提升内部结构。

26. 必要的时候寻求帮助,不要浪费时间。

27. 多实践,熟能生巧。

28. 尽管有时候注释可以帮到你,但不要在这上面花费太多注意力。注释可能是过时的。

29. 了解自己的开发环境,并建设足够强大的开发环境,如 IntelliJ。

30. 重用组件。

31. 在开发 web 应用时,思考移动端及其相关的电量和带宽限制。

32. 不要过早地优化或重构代码。尽快做出最小可行性产品比较重要。

33. 不要为了节约几分钟,而选择低效的捷径。每次写代码,都要竭尽全力。

34. 遵循文档标准。

35. 用户不是技术人才。开发 UI 时时刻想着这一点。

36. 经常使用 GitHub 或 bitbucket 等源代码控制系统,并频繁进行小的提交更新操作。

37. 使用 log 要比代码 debug 更好。将所有关键部分记录下来。

38. 写代码时要保持连贯性。如果你使用一种风格,请一以贯之。如果你和多人合作的话,请和整个团队使用同样的风格。

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

40. 最后,保持耐心,保持热爱。

原文链接:https://medium.com/swlh/40-tips-that-will-change-your-coding-skills-forever-bf9d6b936ccc

本文分享自微信公众号 - 机器之心(almosthuman2014)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-07-26

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 写出一手烂代码的19条准则

    「代码写得好」是对机器学习研究者及开发者最好的赞扬。其第一层意思是说,你的模型非常好,有自己的理解与修正;第二层意思是说代码的结构、命名规则、编写逻辑都非常优秀...

    机器之心
  • GitHub不为人知的小秘密…让你的工作更高效

    近日,GitHub 宣布将无限制地开放私有代码库,这让我们能够在几分钟之内就将那些不想让人别人看到的代码传到云端,还确保我们可以充分利用 GitHub 所提供的...

    机器之心
  • DL时代的代码补全利器,北大出品,效果远超语言模型

    在本文中,机器之心采访了项目总负责人北京大学计算机科学技术系副教授李戈,请他为读者朋友解读自动代码补全背后的技术,以及 aiXcoder 背后的技术特性和优势。

    机器之心
  • 让代码自动补全的全套流程

    ? 作者:熊唯,黄飞 ,腾讯 PCG/QQ研发中心/CV应用研究组 AI 如果真的可以写代码了,程序员将何去何从?近几年,NLP 领域的生成式任务有明显的提...

    腾讯技术工程官方号
  • 聊聊前端项目

    做前端也不是很久,也没做过什么特别大型或者是特别复杂需要很多前端配合开发的项目,所以对于前端的架构我并没有一个清晰的认识。只是最近看着新公司的项目,实在有感而发...

    wade
  • Python制作十款经典的童年游戏(附源码)

    不知道行友们每年六一是怎么度过的,行哥的童年是在游戏世界里度过。这里行哥分享一下十个python可以制作的经典游戏,看看有没有你的菜,代码链接放在文末

    行哥玩Python
  • MVC中的M(model)、MVC总结

    这篇博客的源代码是我的正在写的在线简历,博客是继上一篇写的 完整代码(项目暂未完成) 预览地址

    代码之风
  • Debug Your Life!关于学习、面试和工作成长(附B站录播)

    --- Jack Kerouac <The Dharm Bums>

    Datawhale
  • IT大咖撩段子

    01 一个士兵爱上一个公主,公主告诉他,如果他愿意连续100个晚上守在她的阳台下,她就接受他。于是士兵照做了,他等了一天,两天,三天……直到第九十九天,士兵离开...

    IT大咖说

扫码关注云+社区

领取腾讯云代金券