1. 做完的东西记得写笔记。
比如在Spring中配置了redis集群,如果下次配置,还要去网上搜,效率低,不如把那部分代码写到笔记里。
今天在idea中用插件把代码部署到docker里,也是一边谷歌,一边记笔记。
又比如一些常用的命令,总是会记不起来,用到的时候去搜谷歌,效率真的很低。不如记录下来。
我自己用的notepad++记录笔记,一直开着,需要的时候用快捷键直接切换到前台,从来不会卡,从来不担心内容丢失。马上就能记下来。记得时候不用太担心格式,毕竟文字最重要。记录了之后,后面整理好,用markdown格式写到云笔记里。
2.坚持学习新东西
程序员只有一种死法,土死的。
Spring是个好东西,但是配置太繁琐了,如果自己想重新搞一个应用,或者做一些功能小demo,先要弄一大堆配置,等弄完配置,心都冷了。Spring Boot作为新技术,大大简化了配置,启动一个web应用都不用写配置。我想验证一个功能,点几下鼠标就能启动了。
学习java8,jdk8引入了lambda表达式,大大减少了繁杂代码,添加函数式方法,对集合的操作大大简化。新的time包由joda time作者所写,比之前的date,calender好用太多。如果你想学习Java可以来这个群,首先是一二六,中间是五三四,最后是五一九,里面有大量的学习资料可以下载。
好用的东西还有guava库。
3.学习其他语言和编程范式
python,kotlin,多了解一下编程范式。java写多了,人真的变笨了。
4.多看优秀书籍
Java并发编程实战,Effective Java,重构,算法,HTTP权威指南等等
5.多看源码
我觉得自己有个优点,也算是个缺点,我接触到一个东西,我就特别想知道,它原理是什么,怎么实现的,忍不住点进去源码看看。
前不久把java并发的工具类看了。从UNSAFE开始,到LockSupport和原子工具类,到AQS实现,然后基于AQS的Lock,CountdownLatch,Semaphore,然后是基于Lock的阻塞队列实现等。
Java的容器代码,我基本也看过很多。
之前也看了Zookeeper的源码。
Spring的源码结构也基本了解了。
以上5点是我努力的方向,每一点其实也并没有做的非常深入。希望后面能够不断加强。共勉!