当前位置: 首页 > news >正文

高效学习方法论

2023.03.17 《程序员的三门课:技术精进、架构修炼、管理探秘 / 于君泽等著》学习笔记

学会学习

    • 一、高效学习的方法
      • 1、管理好自己的目标
        • 1)评估能力
        • 2)制定目标
        • 3)评估目标
      • 2、利用好碎片时间
      • 3、在同一时间只做一件事
    • 二、高效学习的途径
      • 1、阅读书籍
      • 2、参加在线课程
      • 3、参加线下会议
      • 4、贡献开源项目
      • 5、编程竞赛
      • 6、创建博客
      • 7、编码训练营

一、高效学习的方法

高效学习的方法:管理好自己的目标、利用好碎片时间、在同一时间只做一件事。

1、管理好自己的目标

目标管理,主要可以分为如下几步:评估能力、制定目标、评估目标。

1)评估能力

目标管理的第一步,就是正确评估自己的能力。

每个人都有不同的能力,并且自己其实是最了解自己能力的人。

在评估自己的能力时,可以给自己画一个简单的雷达图,并正确评估自己在各个方向上的能力指标。

示例:
例如在学习方面,可能要依赖如下几种能力:理解能力、自控能力、坚持能力、智商能力、专注能力。

2)制定目标

在正确评估自己的各方面的能力之后,就可以根据实际情况及时间等因素,给自己制定目标了。

在制定目标时,建议给自己制定两个目标,一个长期目标和一个短期目标。短期目标可以有长期目标分解而来。这里的目标其实等同于计划,不仅有自己要达成的目的,还伴随着时间节点。目标的设定模板可以是:

在什么时间节点完成什么事。

示例:
比如计划在三个月内学会 Java 9 的新特性,那么可以计划第1个月学会Jigsaw,第2个月学会JShell,第3个月学会Stack-Walking API。

3)评估目标

在评估好能力并制定好目标之后,还要养成定期评估自己目标的习惯。这就是我们为什么要设置短期目标,以及为什么要有时间节点,因为这样可以方便我们进行目标的回顾和调整。

示例:
例如,对于学习 Java 9 的新特性这件事,在第1个月要完成时,要及时检查一下自己是否真的学会了Jigsaw,并根据实际完成的情况重新评估自己的能力和制定新的短期目标,以期完成自己的长期目标。

2、利用好碎片时间

3、在同一时间只做一件事

在碎片的时间里如何更好地达成目标呢?那就是专注,即在同一时间只做一件事。在学习方面就是指在同一时间只专注地学习一种技术。

示例: 比如计划学习 Java 9 和 Spring Boot 2.0,则最糟糕的做法是同时或者交叉学习,这会导致两个技术都学不好。只有专注,才能达到高效学习的效果。

小结:

通过管理好自己的目标、利用好碎片时间及在同一时间只做一件事这三种方法,读者就可以高效的学习了。

二、高效学习的途径

1、阅读书籍

开卷有益。一般来说,学习知识最好的途径就是阅读,这是一种很古老也极其有效的方法。


互联网上各种平台,为我们提供了不同领域的内容,但这些内容大多数比较零散,不成体系。
阅读书籍则是一种比较好的选择,而且对于技术类知识来说,书籍中的内容也相对权威一些。

书籍内容的特点成体系相对权威


如果你想高效地学习,那么阅读相关书籍绝对是很好的选择,它可以让你对所学的知识建立一个很好的知识体系,并且在学习过程中通过反复翻阅来巩固那些容易遗忘的知识点。另外,你在读书的过程中有足够的时间来思考,这个思考的过程在学习中是十分关键的。

阅读书籍的优势:有助于建立很好的知识体系、可通过反复翻阅来巩固知识点、读书过程中有足够的时间来思考


非常适合原理性的技术知识,也适合实战类的知识学习。


  • 适合对象:所有人
  • 目标:构建知识体系、巩固知识点、有足够时间思考。

2、参加在线课程

对技术知识的学习,主要包含两方面:原理和实战。对于原理性的技术知识,建议通过阅读书籍等方式来学习;对于实战性的技术知识,则可以考虑学习在线课程,这或许会更高效一些。


优势:比较直观,可以看到真正的操作步骤,比较容易理解,很适合实战类的知识学习。
弊端:不容易使参与者集中注意力、没办法带动参与者一起思考等。


比较适合实战类的知识学习。


  • 适合对象:所有人
  • 目标:可以更好地学习和理解实战类的技术知识。

3、参加线下会议

线下会议,也是近年来比较流行的一种方式,适合有一定经验的开发者,人们可以在会议中和其他人交流。很多时候,别人的经验是很宝贵的,所以,也是一种很不错的学习方式。


国内有很多类似的线下会议可供参加,比如 QCon、ArchSummit 等。


  • 适合对象:有一定经验的开发者。
  • 目标:可以在会议中和其他人交流,吸取别人的一些宝贵经验。

4、贡献开源项目

对于有经验的程序员来说,保持自我进步的最好方法就是参与开源项目。


  • 适合对象:有经验的程序员
  • 目标:保持自我进步。

5、编程竞赛

解决问题是提升开发者编程能力的最好方式。


国内外编程竞赛网站:TopCoder、CodeForces、Hackerrank、LeetCode 等。


  • 适合对象:所有人
  • 目标:提升开发者编程能力。

6、创建博客

创建并记录博客也是一种学习技术的好方式。“教是最好的学习”,学习某技术的最终效果,就是能够把学到的新知识经过自己的理解给其他人将清楚。


相比其他几种学习方式,创建博客也有很多好处。

  • 能更深入地了解技术。在很难多时候,当我们想学习一个知识并且把它写成文章时,为了避免文章的内容出错,一般都会尽量阅读很多文献,来确保内容是正确的。所以,写文章之前的准备也是自我学习的一个阶段,而且学习的内容往往是比较深入和透彻的,这样才能保证自己写的内容具备权威性。

  • 能更好地记忆知识点。写作的过程就是最好的记忆过程。因为在写文章的过程中会仔细推敲每一句话。这个过程就是多次记忆的过程。很多时候,你记不住别人说的话是因为其思维方式和你的不一样,但是通过自己的思维方式表达出来的内容就会很难容易记住。


  • 适合对象:所有人
  • 目标:能更深入地了解技术;能更好地记忆知识点。

7、编码训练营

我们一般称其为参加培训机构。


  • 适合对象:新手
  • 目标:成为一名开发者。
http://www.lryc.cn/news/40330.html

相关文章:

  • C语言结构体(一篇学会)
  • 嵌入式软件开发之Linux下C编程
  • 普通Java工程师 VS 优秀架构师
  • Java:SpringBoot实现ApplicationEvent事件的监听和发布
  • 星戈瑞-Sulfo-Cyanine3 azide?磺酸基-Cy3-N3叠氮基水溶性染料
  • 十大经典排序算法(下)
  • 网络协议分析期末复习(四)
  • Matlab对图像和视频的简单处理(图像视频文件读取和输出,转灰度图,取指定帧的图像)
  • ArrayList源码分析
  • SpringBoot IOC、DI、@Autowired、@Resource、作用域
  • 链表相关oj题
  • 【Linux】操作系统(Operator System)
  • 机器学习自学笔记——感知机
  • C++ Primer第五版_第三章习题答案(21~30)
  • colmap+openmvs进行三维重建流程全记录
  • yolov8命令行运行参数详解
  • 分布式锁简介
  • 【嵌入式Linux学习笔记】Linux驱动开发
  • 2023年中国高校计算机大赛-团队程序设计天梯赛(GPLT)上海理工大学校内选拔赛(同步赛)(H题)(线段树)
  • Linux内核Thermal框架详解十三、Thermal Governor(3)
  • TikTok品牌出海创世纪(二)
  • iOS中SDK开发 -- cocoapods库创建
  • 2023年了,还是没学会内卷....
  • chatGPT爆火,什么时候中国能有自己的“ChatGPT“
  • 【Matlab算法】粒子群算法求解一维非线性函数问题(附MATLAB代码)
  • 2023 最新发布超全的 Java 面试八股文,整整 1000道面试题,太全了
  • 产品经理面经|当面试官问你还有什么问题?
  • 单链表的基本操作
  • 【微信小程序-原生开发】系列教程目录(已完结)
  • JavaEE--Thread 类的基本用法(不看你会后悔的嘿嘿)