骑猪大佬你好:
其实编程、写代码跟其他的工作没有本质的区别,都是从入门、熟练、再到精通的过程。所以,扎实的基础是为了以后能够快速学习、得心应手的必备技能。
对于 Java 知识体系来说,包含的内容太多太多,我们当然不可能把所有的东西都学一遍,所以,抓住重点,你工作、面试需要什么,着重看那些东西(毕竟,吃饭的技能是最核心的)。
对于 Java 语言来说:高级语法(泛型、抽象类、接口、反射等等)、多线程并发、线程安全、GC 过程、常用的 GC 处理思想等等都是必须要掌握的;
对于 Spring、SpringMVC、SpringBoot 来说就比较简单了,它们是在 Java 语言基础上发展出来的框架,是把功能用语言实现出来:
Spring 的话,只有两大核心点:IOC 和 AOP(但是,它们也没有那么容易);
SpringMVC,你要搞清楚一次完整的 Request、Response 之间都经历些什么(Request、Response、响应码、过滤器、拦截器、HandlerMapping、DispatchServlet等等);
SpringBoot 要能够理解 Spring + 自动配置 的思想。
其他的都基本属于工具了,像存储用的 MySQL、缓存用的 Redis,基本特性和常用的功能都应该会。当然,如果你在工作中必须要用 RabbitMQ、Kafka 之类的工具,掌握它们也是你必备的技能,当然也算是基础。
我是勤一,致力于将这门课程的问答区打造为 Java 知识体系知识库,Java 知识体系 BBS!共同建造、维护这门课程,我需要每一个你!