1. 有些时候并不需要追求高可复用,特别是有很多自定义行为的时候,需要传入多个参数来到自定义目的。这个时候,追求复用容易造成后续维护不便。
2. 避免追求“一步到位”。当自己的项目很可能没有多少用户的时候,切忌上来就搞分布式高并发集群部署。多数项目生命可能也就几个月,没必要一开始就推高成本。在使用框架的时候,也要考虑用户基数,并不是队列就一定要用百万吞吐的 Kafka 。
3. 避免盲目追求项目性能。C++比 Java 快,Java 比 Python 快,这没有问题,但并不是因为要追求快,项目就必须用 C++。绝大多数情况下,项目的访问速度到不了要拼语言速度的程度,其它的诸如硬件配置,网络带宽才是影响性能的大头。
4. Web 开发并不只有 Java Spring 一家。项目快速出原型并推向市场试错,如果心里只有 Java 就太重太慢了。不妨考虑一下 Ruby on Rails, NextJs 等能够快速出产品的方案。某种程度上 PHP 就是最好的语言,Wordpress 就是能更快建站。能快速满足需求,比耗时长久的大而全要好得多。
5. 避免追求广度,缺乏深度。并不需要了解大多数的语言和大多数的框架,很多东西其实是相通的,能够深度掌握某一个的意义更大。
6. 项目部署能用云服务商的方案就用它的方案,不要自己折腾,犯不着一到部署就要自己买个云服务器,整个 EC2 ,然后发现性能监控,日志服务,安全策略等都要自己搞,费时费力还做不好。
7. 理解需求后再动手写代码,可以显著提升后续维护的舒适度。
8. 保持乐观开放的心态,学会合作很重要。一个人造不出 Google ,团队有时虽然沟通成本高,但也确实有集体智慧。
9. 是否会看文档是判别程序员水平的最重要依据之一,但不是接手一个新东西就要花费 10 天半个月去看完它所有文档,考虑一下网上 30 分钟入门视频先上手又何妨。
10.碎片时间很重要。现在已经很难有大块的时间让你去研究某个技术了,利用好碎片时间,专注某一个题目,日积月累效果惊人。相反,东一下西一下,最后什么也捞不到。
11. 很多时候开发机不需要那么强的性能。一个长续航的轻薄本解决问题的时候,不需要花冤枉钱追求 128G 内存,4090 显卡。
声明:个人原创,转载请注明出处。 |
|