# 程序设计的一些总结

确实太久没写文章了，没啥理由，就是懒了。

没想到 2020 年过得真快，眼看进度条已经快 40%了。

2020 年发生了太多事，大到全球疫情，小到家庭矛盾，总体来说不太走运，但是人总要乐观一点，否则真的会不太好过。

偏题了，这篇文字是想写一些程序设计相关的一些感悟，观察，感慨。观察一些厉害的人，学习他人优点，补充一些自己的不足。

### 聪明人的自带天赋

> 如果一定要说聪明人之所以聪明，我一定会说：记忆力。

印象中物理界、数学界大佬，现实中认识的聪明人，无一例外记忆力都挺强。对曾经发生的事，甚至一些细节末梢依然描述得非常清晰。

有一次问个大佬一个代码问题，看 git 记录可能已经是 2 年前的代码，主要细节依然很清楚。

而「推理」跟大脑中的信息量是有直接关系的。

so~ 有些天赋得认命~

#### 提高记忆力

*   好记性不如烂笔头
*   想更多，更深，持续改进
*   睡眠、睡眠、睡眠！

在程序开发中，厉害的程序员会想清楚方方面面，文字、UML、脑图、架构图、流程图，越细越好，这些东西本质上是在帮助记忆。

当然更重要的是，提前想好，规划好你要做的事。

良好的睡眠则是最好的大脑养护。

某大佬：程序设计=睡好觉

大脑的保养很重要。

### 问题的抽象汇总与方案输出

工作中，随着开发、迭代，我们总会碰到一系列的问题，这些问题可能会有一些联系，规律。

那么，对问题的 分类，归纳，总结，找出共同点，或本质的问题，最终输出一个合理的方案来解决问题。

这种能力需要经验以及丰富的知识，视野来提供支撑。

其实也需要一定的创造力。

### 程序设计是一门创造性的工作

上面说到程序设计中的一系列问题，工程师本质上就是一直在解决各类问题。

而各类解决方案的输出，本质上是一门创造性的工作，也许有一些方案已经存在了轮子，可以拿过来用，比如搜索功能 es。

但是某些没有的功能，是创造性的，需要权衡各种利弊的，甚至需要一些文献来提供支撑的，至少在逻辑上合情合理的。

普通程序员与高阶程序员一定程度上就是这种差异，这种差异往往是很难追赶的。

普通程序员如果想往上爬，做更厉害的程序员，需要思考更多。

与厉害的程序员交流是非常好的方式，当然你得提前将你的问题整理成问题，你的解决方案，你的思路，要解决的问题，这样更大佬交流才能更高效。
