简单说一下我的观点和感受
本人是工作5年的程序猿,一直在做java后台开发,如果是自学java的话,要学到什么程度取决于市面上企业对于java程序员的技术水平要求,也就是需要具备哪些技能点,只要具备这些技能点,你就符合企业的用人标准,接下来我们看看企业的招聘要求(图片来源于网络)
我们可以看到一些技术点是我们找工作的必备技能,针对于这些技术,我们必须学会,例如我们所说的java基础,Spring+SpringMvc+Mybatis,SpringBoot,Mysql,Redis这些。
针对于自学而言,要制定一个符合自身情况的学习计划,题主准备用半年的时间来学习,可以规划一下每天学习几个小时,每天学习的内容是多少,每天练习时长多少,分阶段来学习,例如javaSE阶段花一个月来学习,学完后要掌握哪些必备的知识点,完成哪些练习等等都需要有一个良好规划。
自学也要注意养成一个良好的学习习惯。
这很考验一个人的自律能力,人都有惰性,需要克服,否则就会出现半途而废的情况,到时学习效果就不太好,而养成一个良好的学习习惯也并非一朝一夕,需要每天如一日不间断的学习,网上说坚持21天就可以养成习惯了.
自学也要注意学习的方式和方法。
有时候自学会陷入一些误区,比如说你每天看视频做笔记,不是说不能看视频,看视频的同时也要去练习,其实编程是一个熟能生巧的过程,要加大练习时间的比重,多实践多操作才能加深印象,看视频会出现一种情况就是能听懂但是不会写,这就是练习少了的缘故,出现人们调侃说的”一听就会,一写就废”,所以要避免出现这种情况,多多练习。
关于学习的方法还可以采用总结法。
将每天学习的知识点归纳总结,形成知识体系,避免学了后面忘了前面,知识体系的形成也需要时间慢慢来,循序渐进,从易到难,不要想着一口气学习很多东西,分阶段进行,每个阶段学习多少,学习那些知识点,练习多少都要做到心中有数,下面我给你列出每个阶段要学习的内容,仅供参考。
JavaSE阶段:基础语法,循环,数组,面向对象,java常用类,线程,异常处理,集合框架,IO流,注解,反射,jdk8新特性
JavaWeb阶段:mysql.jdbc,html+css+js,tomcat+jsp+servlet
框架阶段:Spring+SpringMvc+Mybatis,SpringBoot
项目实战阶段:Redis+Es+Rabbitmq
出去找工作必备技能就是能熟练使用SSM架构,你可以去网上找开源项目自己练习,比如一些个人博客这种,
现在外面SpringBoot用得也比较多,也是需要掌握的必备技能。
综上所述,如果是自学的话,其实难度还是比较大,需要你有良好的自律,如果你在学习中遇到的问题也不方便及时解决,因为缺乏专业人士的指导,对于知识体系的养成也不容易,建议你报一个培训班系统学习一下,这样可能要好一点。
大概就是以上内容,只是个人的一些看法,希望对题主有所帮助。