编程学习之道
文章描述
学习技巧
遗忘曲线
帮助认识自己
横纵轴分别是时间和记忆率
记了会忘,反复查看笔记
成就感很重要
你无法和一个学的时候享受快乐的人竞争
正反馈:大脑分泌多巴胺使自己开心
学习就会让自己开心,所以加上成就感就更好了
一个知识点,能做出一个实践,获得成就
养成生物钟
固定时间
禁止三天打鱼两天晒网
选一个自己学习的时间,每天都这样,形成生物钟
固定精力
没有精力的时候不适合学习
就学五分钟学习法
不推荐使用番茄工作法(适合零碎学习 编程适合大段时间学习)
骗自己,我就学五分钟,五分钟之后就不学了,有效防止拖延
制作不方便的环境
让总是阻止自己学习的东西,慢慢解决掉
手机不放身边,避免看到手机就想去拿
电脑不装显卡,玩不了大型游戏
锁门防止打扰
去咖啡馆防止玩游戏
准备好糖分和水
不要频繁起身拿东西
每小时起身一次,防止颈椎病
你需要考试
自己问自己
期中测试,模拟面试
自我催眠
有效防止拖延
借鉴《这本书让你戒烟》,让自己相信自己可以
分析自己的学习类型
视觉:自己看书 看板书 看就能懂
听觉:老师讲就能懂
触觉:肢体接触才能学会
嗅觉:喜欢一种气味,这种气味下才能学
目标管理
不要制定宏大的目标
日拱一卒,不期速成
目标要可实施
如果达到目标,就告诉大家
不要在意完美,搞定即可
回顾很重要
根据遗忘曲线定时回顾知识点
笔记
不记笔记的后果
看书不记笔记:白看
看视频不记笔记:白看
看文档不记笔记:白看
记笔记的意义
在自己的大脑中设立一个地标
实际上在构建自己的记忆宫殿
怎么记笔记
[[康奈尔笔记法]] Cornell Notes
东京大学笔记法
吐槽笔记法
学习方法
三上之功
醉翁曾说:吾平生所作文章,多在枕上、马上、厕上
所谓“三上”,不是刻意培养的习惯,而是热爱渴望的自发
相对而言,“枕上”可能是最长的时间,然而也是思维最不敏感的时间。个人就是读一些小故事或者散文(近期),只为欣赏。“厕上”是思维最敏捷的时间。原因可能是每次的时间短,且大多集中在白天。这个时间非常适合思考一件比较小的事情或者理论。原则上,一些条文性比较突出的内容会在这个时间识记、思考。比如背经文、看议事规则、经典的二十四史等等。“马上”更不容易集中精力(这当然要视具体情况而定),因为这相当于闹市读书,初次操作还需要顶住旁人的压力,堪称比较高的境界。如果环境果真不适合,倒不如听歌为妙。如果环境合适,这正是锻炼心性的绝好机会。一般来说,个人会选择看一些系统性高但又不复杂的书(因为一般出门的时间比较长),比如一篇小论文之类。
编程的“三上之功”
通勤、上厕所、躺着的时候可以看下 ES6、JavaScript 等网页
费曼学习法
最有成效的学习法
可以简化成四个单词:
Concept 概念:即获得并初步吸收自己获得的知识
Teach 教给别人:向他人讲解你所获得的知识/或者也可以想象给别人讲解的自言自语
Review 评价:由他人或者自己对自己的教学进行评价,并回顾讲的不好的地方
Simplify 简化:简化=划重点 提炼并升华知识
四个步骤:
把它教给小孩子【选定一个学习的主题,用知识量少的方法教】
回顾【看下有没有哪里没讲懂讲透、讲得卡壳、概念联系不起来,然后重新学习】
将语言条理化,简化【没有从原材料中借用任何行话,然后用简单的语言组件成流畅的故事并讲出来】
传授【确保理解没有问题,就把它教给另一个人】
[[费曼学习法]]
互联网学习法
非常鸡贼的学习法
例如:反向操作/极致言论(评论区评论我觉得 200 元以下的耳机都是垃圾)
类比法
用生活实践解释代码
函数节流(技能 CD / 冷却中)与防抖(回城)
DDoS(找没事做的大妈到别人店里占满空间,客人就进不去,扩建来防治)
推演法
用三段式逻辑推演
由 A、B 得到 C
JS 原型适合此法
构建知识树
学习的大局观
看经典书籍
看文档和手册
整个前端在搞什么(前端体系化)
HTML 基础
CSS 基础
浏览器渲染原理
JS 基础 可以看书
TS 加分
TS 编译为 JS(编译原理、工程化)
Vue 书 + 项目
模板(编译原理)
数据响应式
React 书 + 项目 这两个框架都要会
函数式
Haskell
Fiber 架构
VDOM
Diff 算法(树)
数据结构与算法
Ng
Ajax 项目
HTTP
TCP/IP
计算机网络
浏览器
组成(V8)
线程
操作系统
组成原理
组织代码 难
设计模式
工具知识
工具
编辑器
VSCode
IDE
WebStorm
版本控制
Git
[[001-Git 常用操作]]
git init / clone / add / commit / pull / push / branch / checkout / reset
SVN
运行环境
浏览器
Chome
FireFox
Node.js
调试
开发者工具
请求/抓包
Postman / APIFox / APIPost
开发者工具
Fiddler
WireShark
线稿
Balsamig
AxureX
墨刀
蓝湖
Figma
快速运行
JSBin
CodeSandbox
用到再学
把所有的按钮都点一遍
框架知识
面向框架学习(所有的目的就是学会一个框架)
HTML(Tag) / CSS(属性) / JS(语法 ES6)
API(能调用的所有方法和函数) 背 核心单词
内置
Object.keys
Array.from
Date.parse
宿主
Chrome
Window.location
Window.history
Window.localStorage
Node .js
fs.readFile
Path.join
第三方
jQuery
$('#id')
HTTP
AJAX——不能跨域——> CORS
JSONP
状态码
200
301
302
404
Cache-Control
Cookie
设计思想
设计模式
MV*
MVC(M、V、C)
MVVM(Angular)—— C 升级
MVP
范式
面向对象
函数式
表驱动
if 转成 map
工程化
webpack
压缩/编译/打包/优化
npm
发布
CDN
Nginx
后台框架
CRM(Copy-Run-Modify)学习法
只展示内容 div
写内容 n+1 绑定修改
文章编辑
多页面 展示和编辑
AJAX 后台 leanCloud
含路由的应用
商业逻辑(电商、金融)
黑盒测试法
console.log 调试法
outline 调试法
实践经验
反复使用(路径依赖)
项目选择
避开热门
和自己兴趣相关(导航网站、展示类等)
不要在意是否够“大”,尺寸不重要,技术才重要
作品存档
GitHub
码云
充分测试(确保自己的项目拿出去没有明显的 bug 和性能问题)
自己测试
找别人测试
自动化测试
Last updated