1. 熟悉所使用的语言
LeetCode 第一题就是一个很好的例子,绝大多数初学者都能通过循环的嵌套解决这道题,但是如果能熟练使用语言,使用 HashMap 可以更优雅简洁地搞定。很多人说语言不是最重要的,什么语言都能解决问题,重要的是逻辑、算法、数学 balabala……,但是大佬们没说的是语言在他们手里已经可以操控自如,大佬们一眼就能将其看透了。所以熟悉语言还是很有必要的,毕竟这是吃饭的家伙。
2. 顺手的工具
IDE 和编辑器之争可能和语言之争不分伯仲,对于不同阶段来说 IDE 和编辑器带来的帮助各有千秋,我的 leader 就操得一手好 vim,让人甚是羡慕啊。抛去哪者更好用的论断,一个不拖后腿的工具是最起码的要求,如果能锦上添花,加快开发效率那就更好了。除了代码编写工具之外,自动化脚本也是保养头发的利器啊,之所以心血来潮写下这段文字,就是因为刚搞了个查看 log 的脚本,救我狗命(手动狗头)。
3. 自动化脚本
自动化脚本如此重要使得我不得不另开一条,只为打出四个字 YYDS
4. 优秀网站
Google、GitHub、StackOverflow 等优秀的网站,以及怎么看到它们
5. 一块好屏幕以及顺手的硬件
原来以为屏幕没啥用,志在成为扫地僧的男人,怎么禁锢在一块屏幕面前,直到……
作为一名长时间坐在屏幕前的新生代农民工,好的硬件可以更沉浸式地编程,心态静下来,把每个细节捋顺,减少代码风险,减少以后返工的时间。
6. 健康的体魄
曾几何时,坐在屏幕前胸闷气短的我慢慢磨着代码,眼神迷蒙,神游物外。自从健身之后,效率值爆表。
7. 好的 leader 和团队
很荣幸遇见了我的 leader 和团队的各位小伙伴,leader 他深耕手机领域多年,下到 boot loader,上到 Java 编译器都曾开发过,每每遇到问题求教与他,都能体验拨云见日的感觉。团队中的小伙伴也都很踏实,没有互相推诿的情况(可能是活多人少,没啥空间可推,大误),大家共同努力,氛围很棒。
通畅的沟通不仅可以快速对齐信息,还能令人身心愉悦,一场头脑风暴过后神清气爽。然而沟通不是一个人就能完成的事情,如果两个人没有共振,那将是一场尴尬的灾难。当项目越来越大,某一部分的逻辑不清,注释又不完善的时候,只有及时沟通才能顺畅地把逻辑捋清。所以负责的leader、优秀的团队氛围可以萌发沟通交流的萌芽。
8. 自身基础
打铁还需自身硬啊,大兄弟。
还有什么优秀经验欢迎大家指出,本文持续更新!