@wanghuijiao
2021-01-29T09:31:59.000000Z
字数 868
阅读 731
学习笔记
阅读基础知识原理,阅读源码,付诸实践,实际应用。输入->输出,整个完整闭环才能真正掌握这部分的代码能力。对自己代码里调用的各种API实现都非常清楚,才能真正确保最终代码的鲁棒性。
大量的练手,一开始看别人怎么处理,然后自己尝试解决一些故障,解决的越来越多慢慢熟悉度就上去了。写代码时如何更好的保证鲁棒性来避免故障。写一段能运转、实现需求的代码不难,但写一段各种情况下都能长期稳定运行的代码真心不容易。(观察请教大牛怎么解决故障的)
关注细节,代码逻辑整体的细节层面深入的掌握。
“其实也总结不出什么,因为每个人所处的环境不一样,有不同的适合各自提升的方法。我看自己的经历总结下来,我觉得:
如果环境不具备,就给自己一个命题挑战。例如要学高并发的通信,可以尝试自己写一个和其他的做对比,做性能等的PK,这个通常提升还是会很大的。要学GC,可以尝试给自己几个题目,来控制GC的行为等,如果环境具备的话,确实会更加有利。
多和优秀的程序员一起学习。我自己从多隆、撒迦身上学习到了很多很多。从很多优秀的开源代码,像Netty、OpenJDK里面也学习到了很多很多,所以多参与一些优秀的开源项目也是一个很好的提升方法,看优秀的书(例如并发里的那本《Java并发编程实战》,JVM里的《Oracle JRockit: The Definitive Guide》,《深入理解Java虚拟机》等),也一样是一种向优秀程序员学习的好方法。
多多尝试解决问题/故障。这绝对是提升代码综合能力非常好的一个方法,自己工作里机会少的话,网上有大把的平台,像Stack Overflow之类的,都是很好的练习场。
最后的最后,我还是想说,代码能力作为程序员的硬名片,始终是最有效的区分程序员能力的东西,"talk is cheap, show me the code",这句话我觉得是永远成立的。”