我希望在开始编程时就知道的 65 件事
没有一个成功的故事是相同的,我们在学习过程中都有过起起伏伏,也有一些我们希望在刚开始时就知道的事情。
如果你是一位有抱负的开发者新手,这 65 件事将帮助你为未来的漫长旅程做好准备。不妨将它们作为你学习道路上的捷径。
1. 编码是为了解决问题。
成为一名程序员远不止坐在电脑前随意敲击键盘那么简单。程序员是一个强大的工具,可以解决许多现实问题,让人们的生活更加轻松。如果你有能力胜任这份工作,你就会一直受到重视。
2. 黄金法则是计划。
每个成功的项目都始于大量的规划。确保明确目标、明确任务、了解受众等等。使用纸笔或任何在线线框图工具,尝试清晰地勾勒出你的解决方案。
3.内容为王。
没有内容,您的网站就如同空洞。如果您处理的是静态内容,请确保其呈现良好。如果内容是动态的,请务必规划您将创建或接收的内容类型,并据此设计布局、代码和数据库结构。
4. 编码应该是项目的最后阶段。
初学者可能会认为每个项目都是从编码开始的。实际上,它只是之前所有规划的技术实现,应该是解决问题的最后一步。
5. 一切尽在掌握。
现在已经不是五六十年代了,那时候你得去图书馆才能学习某个主题。所有你需要的信息都触手可及。用你的大脑和互联网吧。
6. 你不需要极端的硬件来编码。
尖端处理器、海量内存和 5 台显示器均为选配。一台中端笔记本电脑足以满足入门需求。
7.你不需要擅长数学。
根据我们看过的电影,编程常常与智商超过 200 的天才联系在一起。在人工智能、机器人技术、密码学等主题中,编程可能会涉及大量的数学知识,但入门只需了解一些基本运算即可。
8. 找到正确的工作流程并不容易。
我们每个人都有不同的偏好。尝试不同的扩展程序和设置。了解哪些扩展程序适合您以及如何将所有设置整合在一起需要花费大量时间。但这将对您以后的工作效率大有裨益。
9. 现在正是最佳时机。
把事情保存到书签里只是拖延症的代名词。想要提高效率,最好的办法就是现在就行动。
10.同步让你移动化。
在您工作的每台机器上同步所有浏览器、IDE/代码编辑器扩展程序及设置。确保您无论身在何处都能在相同的环境中工作。
11.实现的方法有多种。
一开始写代码的时候,我总觉得代码的逻辑很严谨,必须遵循一定的模式。但实际上,唯一严格的变量是所用语言的语法。
12. 命名事物很难。
一开始这听起来可能很容易,但你会发现它有多么具有挑战性,尤其是对于较大规模的项目而言。
13.把错误当成教训。
如果你看看任何成功的故事,你会发现它实际上是一种不断尝试和犯错的模式,坚持和好奇心是关键。
14. 重新创建比从头开始编写要容易 10 倍。
在重新创建现有应用程序时,您需要清晰地了解项目的布局和构建原则。而这些往往是最具挑战性的部分。
15. 找到自己的定位很重要。
从一个利基市场到另一个利基市场徘徊不前,最终只会徒劳无功。明确你的兴趣所在,并在进入某个领域之前,先研究一下其他领域。
16. 对事物运作的原因保持好奇心。
总是尝试去发现隐藏在引擎盖下的东西。不要仅仅满足于看到一些神奇的东西在运作。
17.工具是提高生产力的关键。
人之能事,在于其工具。花时间打造合适的工具组合,回报丰厚!
18.充满激情的项目会让你继续前进。
当谈到副业项目的想法时,选择你真正感兴趣的东西。这会增强你的动力,因为你关心最终的结果。
19.这是一场马拉松,而不是短跑。
开发空间在不断发展,所以要做好持续学习的准备。起步太快,很快就会感到疲惫。
20. 你关注的人就是你消费的信息。
关注你在社交媒体上关注的人。这决定了你阅读的信息流和获取信息的质量。
21.不要重新发明轮子。
在开始项目之前,先看看其他开发者是如何解决类似问题的。几乎所有问题都应该已经有解决方案了,关键在于你的搜索能力。
22. 人们很容易忘乎所以。
在社区中活跃是一件很棒的事情,但请注意,它通常会让你发现更优化的技术、更现代化的用户界面等。这并不总是意味着你当前的技术栈不好,你应该切换它。
23.教程经常误导你。
教程大多基于预先编码并重构的代码。一旦你开始拿自己和它比较,你就会感到绝望,因为你不可能一次性就快速找到解决方案并写出干净的代码。要知道,这只是硬币的光明面,创作者们也曾为此苦苦挣扎。
24. 辅导班不会让你独立。
观看或阅读教程或许能让你大致了解技术,但并不能帮助你真正掌握它。此外,尝试阅读官方文档,培养你的分析思维,并尝试提出自己的解决方案。
25. 没有完美的技术。
每项技术都有其优缺点。如有疑问,请比较一下您的替代方案,进行一些研究,并比较它们在特定任务上的表现。
26. 你拾起东西的能力很重要。
当你申请一家公司时,你很可能对他们的技术栈并不熟悉。重要的不是你掌握了多少技术,而是你能多快掌握你遇到的特定技术。
27.版本控制是必须的。
客户经常会要求提供以前的设计,但对功能却犹豫不决。版本控制是必不可少的,它可以帮您节省时间,并确保您的代码始终得到备份。
28. 虫子确实很可怕。
准备好应对那些可能需要数小时甚至数天才能修复的棘手 bug。修复期间,你可能会被低效的效率吓到,但一旦修复了 bug,效率就会提升。
29. 学习不该学的东西。
如今,在浩瀚的技术海洋中,我们很容易迷失方向。讽刺的是,如今最好的技能之一,就是学会不该学的东西。
30.阅读代码也会让你变得更优秀。
通过编写自己的代码,你可以反思自己所学的知识。阅读其他开发者的代码,学习不同的设计模式和最佳实践,这一点很重要。
31. 谦虚一点,别人就会尊重你。
在内心庆祝你的成就,但在外在保持谦逊。吹牛不会让你走得更远。
32. 追求完美会让你慢下来。
追求质量而非数量是件好事。不过也别太夸张,不然你最终会留下数百个未完成的项目。
33. 开源很棒。
从个人到大型公司,开源在社区中蓬勃发展。这是一件美好的事情,我相信我们携手合作,将创造出更好的项目。务必学习其他人使用的最佳实践和设计模式。
34. 文凭是可选的。
客户往往并不关心文凭,而是关心你解决他们问题的实际能力。
35. 当你遇到困难时,就把它分解开来。
很多时候,由于问题过于复杂,想出解决方案似乎很困难。把它分解成几个部分,一点一点地解决。
36. 企业公司需要你来开发 CRUD 应用程序。
企业的核心主要是 CRUD 操作。如果你打算申请,请先学习并做好每天与之打交道的准备。
37. 该项目永远无法完全完成。
每个项目总有改进和优化的方法。与其说是项目满足了需求,不如说是项目已经足够好,可以交付了。
38. 好的代码易于阅读和维护。
无论你是否独自工作,都要尽量以其他人会使用的方式编写代码。在比较棘手的部分,请留下一些注释,解释其工作原理。
39. 第一语言总是最难的。
我经常看到有人问什么语言最难学。其实,难度跟你的经验有关。
40. 使用 Google 搜索和 Stack Overflow 是可以接受的。
这些资源就是为了帮助你。别羞于在别人面前用 Google 搜索或阅读 SO。要知道,他们也一样。
41. 沟通技巧被低估了。
单靠代码并不能保证你的成功。练习与人互动很重要。
42. 提高你的谈判技巧。
如果你不懂谈判,即使掌握所有尖端技术也毫无意义。他们需要你,而不是你需要他们。
43. 拥有在线形象非常重要。
如果没有人知道,几十个本地项目就毫无意义。打造良好的在线形象来推广它们吧。
44. 时刻牢记20/80规则。
请记住,项目最后20%的进度会占用80%的时间。因此,在向客户汇报任何进度更新之前,请务必三思。
45.不要无缘无故地进行过度设计。
追求不再需要删除而不是添加功能的状态始终是一个好的做法。
46. 框架来来去去。
学习他们所基于的技术的价值要高出 10 倍,这样,如果有必要,您就可以选择特定的框架。
47. 精通某件事比假装什么都懂一点要好。
不要试图掌握所有东西,而是要对你感兴趣的领域进行一些研究,研究现有的技术栈,选择一个并彻底掌握它。试图成为万事通最终会让你一事无成。
48. 测试是有原因的。
养成编写测试的好习惯。尽管一开始你可能会觉得做了一些不必要的工作,但它们会帮你节省大量时间,尤其是在处理大型代码库时。
49. 成就最能激发你的动力。
珍惜学习过程中所有那些“啊哈”的时刻,那些终于让具有挑战性的功能发挥作用的时刻,那些看到别人惊叹的瞬间,那些感到自己有价值的瞬间。把它们当作你前进的动力。
50. 不要携带超过你能力范围的东西。
找到一个微妙的界限,选择一个具有足够挑战性的问题,让你学到新的东西,但也要足够狭窄,以便可以解决。
51.不要拿自己和别人比较。
如果你把自己和其他开发者的成就比较,很容易感到沮丧。你按照自己的节奏学习,这完全没问题。
52.不要把批评当成针对个人的。
建设性的批评是宝贵的反馈,它能指出你自身未发现的错误或改进之处。最终,它能提升产品质量。
53.每个人都写过糟糕的代码。
别担心,过几年再看你写的代码。你可能会觉得难以置信,甚至感到羞愧。但请记住,这其实是一个清晰的标志,表明你已经进步了。
54. 一个完成的项目胜过十个半完成的项目。
尝试一次只处理一个或几个项目,并遵循“想法-执行”的模式。记住,已部署的项目才是最重要的。
55. 最好的学习方法是教别人。
为了教别人,你必须自己学习这个概念。这能确保你彻底理解这个概念,并且在分享知识的同时,实现双赢。
56. 你永远没有做好申请工作的准备。
学习编程是一段旅程,而非终点,所以你总会感觉自己处于半途而废,无法取得任何成就。别被这种感觉蒙蔽了双眼,无论如何都要坚持下去。
57. 炒作是真实存在的。
要关注这些趋势,但要理解它们的主要工作原理和用例。这样你就能知道它最能解决哪些问题,并在必要时选择合适的工具。
58. 熟能生巧。
重复是一切知识之母,掌握某件事最安全的方法之一就是坚持练习。
59.关注索引,而不是内容。
如今,快速查找信息至关重要。如果你知道自己需要什么,以及在哪里查找,那么获取信息只是时间问题。
60. 做一块吸收知识的海绵。
养成每天学习的习惯,保持竞争力和知识储备。关注你的订阅对象。追求质量而非数量。
61.学会说不。
如果你从不拒绝任何事情,别人迟早会利用这一点,最终你会经常付出超出应有的努力。
62. 做笔记可以缓解写作障碍。
无论你做什么,无论你身在何处,都要努力追踪你的想法。创建一个信息备份,以便在灵感匮乏的时候使用。
63. 安排一周的日程并确定优先顺序。
尽量提前规划好时间。这样更容易识别所有需要处理的任务,并确定它们的执行优先级。
64.休息一下,创造奇迹。
如果你遇到困难,试着暂时不要做任何与编程相关的事。花些时间陪伴家人,或者发展你的爱好,或者去慢跑。很多时候,你会重新审视这个项目,并轻松地找到解决方案。
65. 运动和充足的睡眠可以提高工作效率。
说到效率,通常情况下,睡8小时、工作4小时的效率会更高,而不是反过来。结合规律的体育锻炼,才能达到最佳状态。
写作一直是我的热情所在,能够帮助和激励他人让我感到快乐。如有任何疑问,欢迎随时联系我们!
在Twitter、LinkedIn、GitHub和DEV上联系我!
订阅我的博客以获取更多类似文章。
文章来源:https://dev.to/madza/65-things-i-wish-i-knew-when-i-started-to-code-20ka