Java学习初期普遍所遇到的问题
1 严格按照书本上的内容学,从java核心进阶到数据库再学spring boot。这本身没错,但书上很多技能,比如多线程和设计模式等,在找第一份工作的时候用不到,也就是说,会用宝贵的时间学没用的技能。
2 学习的时候过多关注语法,比如关注spring boot程序里诸多API的作用,恨不得每个参数的含义和取值都去搞明白。事实上,在开发过程中,往往会重用现有的方法和模块,然后通过修改,快速完成一个功能。也就是说,不用过多关注细节,而要关注流程。
3 不知道学到什么程度可以去找工作,所以不少初学者会根据网上的提示,学spring boot,junit等各种组件,redis等各种中间件,还有linux命令等。网上的资料太多,学好了一定能干活,但事实上,初学者只要学到最基础的spring boot+JPA增删改查技能,就可以去干活,其他的可以在找到第一份工作后再学。
4 最重要的一点,初学者的面试技能严重脱节,其结果是,明明掌握了最基本的开发技能,但由于简历没写好,面试不知道如何准备,所以没法在面试中很好证明自己的实力,甚至没法用简历为自己争取到最基本的面试机会。也就是说,在学习技能的同时,更要准备面试,甚至准备面试的重要性要比学技能更重要。
推荐的学习方式
视频教程:
对于Java初学者来说,看视频学习也是最普通的方式,但也是这个时代最高效的一种学习方式,现在的视频教程都会把工作中常用的知识进行些讲解,而且一般都会把视频分章分节方便观看者来学习,每一个小节都只讲一个知识点,学习起来较为明确。但是视频教程尽量要完整,最好是一整套视频学习。就比如目前2022年全新的高琪老师Java300集,它是一门专门为咱们零基础入门的同学们量身打造的Java精品课程!视频里还包括五大实战项目,边学边练可以,让你对Java理解更加清晰透彻,打造厚实的基础,有基础的同学也可以观看,可以稳固以前所学的知识内容提高上限。
书籍辅助:
书籍便于对理论知识的补充,以便更容易理解Java面向对象核心设计理念和代码实践功能。但目前大部分人都没有啥耐心,看见书就头疼,看不进去书,所以目前还是大部分人都只是看看视频教程学习。如果自己能看的下去就看,看不下去就不看了,因人而异毕竟现在的书籍大多都也是有电子版的所以目前看书还是挺方便的。
有人指导:
学习Java有人指导和没人指导是俩个差距,基本上大部分同学都不太可能全靠自己的能力,把Java学的特别精通特别好。是因为你目前这个刚开始的阶段是不够了解这个行业的,也不清楚怎么学的思路,而且如果你学出来了在找工作时,再找的时候可以说提高你的就业率,但完全零基础自学Java想要找到工作,概率极低。所以建议如果真的想要做这行,尽量去找个人去带带你,至少在有不懂的问题时可以直接请教,要是条件允许了话可以看看培训班这类的,少走弯路,提高效率。学习的质量决定以后工作的薪资以及起点,所以还是应该重视起来。
然后说下java初级开发在学到什么程度以后可以去找工作。
1 能运行通一个spring boot的项目,请注意这里不是要求初学者能从零开始开发出一个项目,而是能根据提示,跑通一个现成的Spring boot项目。
这个项目的业务不限,甚至只包含很少的业务逻辑也不要紧。前端页面不限,毕竟是要找后端的工作。但是,初学者需要能够搭建数据库环境,配置全项目参数,并让代码跑起来,同时能根据其中的流程讲清楚spring boot访问操作数据库的流程。
2 项目里的各种语法,不要求能当场看懂,但对于不熟悉的语法或api,能通过查询资料很快地理解含义,这就是干活的基本标准。
3 spring boot项目运行启动后,能通过url请求拿到结果,在发出url请求后,这个请求经过了哪些模块,是怎么访问的数据库,然后怎么返回,处理中出现了异常怎么办,这套流程需要搞明白。
其实学到这种程度,就可以去找工作了,不少朋友可能会质疑我这个说法,他们可能会说,还要去学各种组件,比如redis等,或者是Spring cloud alibaba组件。其实他们说的没错,但其他技能属于java初学者找工作的加分项,而不是必选项。一方面,可以在面试过程中精确地了解当前城市当前阶段面试官会问哪些(其它分布式组件等)问题,这样能精准准备,这要比脱离面试自己闷头继续学,效率不知道高多少,另一方面,大多数公司对初级开发的要求,还真是增删改查,毕竟以来就让初学者做分布式组件的活,基本上换那个公司都是不放心的。