昨晚朗读了前天深度学习的文章,有新收获,但又发现了不少问题,或许是因为它本身也是二手知识,但里面提到的观点还是值得学习的。中午饭后时间想从两个问题反思一下如何有效高效的学习以及如何更好更有影响有价值的分享。
第一,如何学习Java虚拟机。
这是Java高手的基础,尤其对性能敏感的开发更必须要注意。为此我也多次看了不少相关的文章,包括那本著名的深入Java虚拟机,网上大部分关于这方面的内容都是从这本书摘录的,并且有很多都是没有思考验证的摘录,这其实也是自己过去低效无用学习的方式。一直在看这些理论,没有真正去联系自己日常的应用。看了那么多理论似乎还不知道自己用的Java版本这些默认参数是什么,如何分析gc日志进而调优更没想过如何去验证这里面的结论。
回到实际应用中来我们大部分开发大部分时间都不用知道它里面的细节。知道它的组成及大概作用以及跟平时工作可能相关的一些理论点即可。比如类加载器的执行过程,类加载机制,运行时数据区包括哪些部分各自的作用,其中堆和方法区内存是如何分配和回收的。常用垃圾回收期的思路和优缺点,对jvm运行进行监控及调优方法等。
通过思考实践验证把相关的理论用demo模拟验证后的描述才有意义和价值,否则只是网络内容的转载,知识的搬运工是很容易被取代且没有意义的。
第二,如何用更多的形式展现内容。
这是上周想到但一直没执行的念头,除了文字描述,可以通过图,漫画,音视频多媒体等方式来创造性的展现自己知道的东西,要逐步让自己形成习惯才行,否则很容易陷入舒适区低效无用的重复学习。