visual studio + git + github/gitlab
visual studio code (简称 vscode)是一款集大成者,上天入地无所不能!比如我想让编辑器支持思维导图,只需安装 markdown 和 plantuml 插件即可。使用效果可查看下面,绝对秒杀任何工具(不接受反驳)
思维导图
比如加个颜色:
再比如画个时序图:
用例图:
时间图:
等等,你能想到的, plantuml 全部支持,包括以下几种类型:
代码
如果笔记中想插入代码,直接新建一个文件,随手写随手运行,如果运行通过就将代码 copy 到 设计模式.md 中即可:
于是,我们的笔记,就多了可运行代码~~
同步
同步问题可以利用 git 解决,同步仓库可以选择 github (无限容量的笔记库??)。
git 可以查看每一次的记录,并能进行适当的回滚操作:
而且能查看修改细节,修改细节可具体到每一个字:
把上述的笔记同步到 github 就很简单了,只需要几步即可:
于是,我们的笔记就被同步上来了(据说时不时会被存入南极冻土 :) ):
如果有的人觉得 git 操作太多,那我们就写一个自动同步脚本,发现文件变更后就同步(不建议这么做,因为完全没必要)。
目前使用 vim 插件,可以体验一切皆快捷键(你要干的每件事,都可以通过快捷键完成,不需要鼠标这种低效率的东西),快捷键配合五笔输入法简直是飞起(很喜欢微软自带的五笔,很贴合打字习惯),网上的快捷键介绍如下:
vim 快捷键列表
在 vim 中只需要安装 vim 插件即可:
vim 插件
------------------------------------------------------待更之:我为什么不再记笔记了,有什么替代方案
记笔记的目的是复习,有没有一款软件可以自动安排复习时间,像打卡一样进行复习,有!
Anki
我会把笔记搞成问答形式,每一个知识点,都是一道问答题,每天起床的首要任务就是按照 Anki 的记忆曲线复习。
比如学到适配器模式,我会出一道小题:
以下是答案,每天看到题目后,如果立刻能想出代码,就不上机敲,反之需要上机敲出结果。
我建议把正在学的每一个知识点都做成问答卡片,通过回答问题主动复杂,这种复习方式比填鸭式学习好太多了!!
比如学习设计模式,我可以手撸 23 种,并且把应用场景背的明明白白(ps:目前正在项目中实战),但一定要注意,学习和实战的鸿沟像地震缝一样,如果不能实战,你学的内容 80% 都不可验证(大概率是错的)。要把实战当成学习的一部分,比如我会手撸 23 种设计模式只算完成 50% 的学习,剩下的 50% 要进行实战(实战过程中会遇到各种反馈,表示你之前的理解是错的)。我认为,学习的本质是背诵,任何理解都要建立在背诵的基础之上(不会背诵的都是扯淡,那些现用现查的排外),实战是检验背诵结果是否成功的唯一途径。
具体学习过程如下,一问一答形式: anki 会给你显示问题:
点下面的回答问题即可显示答案,然后有三个选项:again , good , easy 。 anki 会根据你选择的选项,自己安排后续复习日期。
当然还有其他模式,比较常用的就是上述这种模式