感觉水文不太好啊,所以后面的用自己的话总结Java系列改为链接放送吧,推荐有缘刷到本篇的读者看看我的其他原创文章。本篇就是单纯的理论知识学习,感兴趣的可以点有道云链接看看,不定时更新。
理论或者直白来说八股,这些东西你要说没用那肯定是不可能,什么地方都是理解原理最吃香,单纯的应用都是很方便快捷的,对于造轮子的人来说轮子用着不方便就是对作者成果的否定。在我看来理论这东西,如果不是搞架构的,百分之九十对你都毫无意义,大多数开发的真实场景其实在于用户的定制化需求,弯弯绕绕天马行空。能有对业务快速拆解和完美设计能力的人才是大多数场景需要的,对于这样的人才,开发技巧可能不是最重要的,场景化设计和细节掌控才是重点。但问题往往在于每个人在一个地方积累的经验往往有限,因此完整的理论能增长见识,即使没有相应的实践经验也能有所了解,说的有点套娃,理论和实践在IT行业有种鸡生蛋、蛋生鸡的感觉。
举个例子来说,Spring事务。这个大家肯定常用,挂上注解开箱即用,新手打个注解没啥难度,有手就行。老手可能会注意到Spring事务是用切面实现,在开发的时候会有意识地注意避免切莫失效,比如public、自调用之类的情况。再精通一点,会去设计更广泛的场景,比如分布式事务,这时候你需要考虑很多问题,ThreadLocal、多线程、不同数据库的事务实现原理、Spring手动事务、2PC3PCTCC等理论基础。
Java其实算是上手简单,精通也还算不麻烦的类型,得益于网络的发达和GitHub之类的开源以及一麻袋博客的洗礼,Java变的没有那么复杂。但问题就在于,Java流行了太长时间,积累了太多东西,理论知识过于繁杂,当你想要更进一步时就会感慨Java的套路之广,八股还是不得不看,不求熟记于心,但是至少得有一定了解。
废话说了很多,总体思想就一个,八股还是得看。看多了就能举一反三,学新东西也会理解的更快,设计理念都是相通的。