Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说怎么样快速提升Java编程功力[亲测有效],希望能够帮助你!!!。
怎么样快速提升Java编程功力
Java的历程发展了20多年,技术日新月异,层出不穷,本人半道出家转行Java,之前都是从事硬件开发,转行学习Java的路程可谓是一波三折,坑多。
本人在2016年打算学习后端语言Java,那时候学历高中,大专自考中,有人对我说,学习这个对我来说很难,于是,我就选择学习了。
学习的时候,当时还在工作,我不知道怎么去学习,资料太多,也不知道怎么选择,于是就去了培训班,达内培训班是上市的公司,培训出来的人非常多,我就报了班系统学习。
培训完之后,我发现达内的教学内容还不够自己出去面试,有的内容没讲,项目都没有实战过,太坑了。所以个人建议,不要去培训班,都是坑,如果确实要去培训班的话,先要了解清楚这个机构的背景,就业情况,有些很多都是不真实的。
于是我就自己学习,起早贪黑的学习,每天学习长达18个小时,从不觉得累。
于是我就根据我的亲身经历总结了Java如何快速提升到高级的方法。
1.扎实的计算机基础知识。
任何人,不管你是做啥的,只要你转行学习软件开发是,计算机的基础知识必须要学习的,不然学习起来很费劲,很多坑,学习哪些基础知识了。
计算机组成原理,讲的是计算机的硬件内容,如果对计算机的硬件都不了解的话,你如何写很好的代码,让计算机运行起来,程序不会有BUG产生,也可以练就一身维修电脑本领。
数据结构与算法,这个非常重要,写软件的基本功,因为软件=程序+算法组成的,平时多用各种语言实现算法,比如堆栈,二叉树,链表,这些都是基本功,搞清楚他们各自的实现方法,扎实基本功。
计算机操作系统,这个也很重要,学习他能搞懂计算机的系统是怎么工作的,为什么能一边看电视剧,一边能听歌,同时进行,这就是多线程的作用,也很重要。
计算机网络原理,搞懂计算机是怎么连接网络,发送信息,各种短信,查询信息,上网等。特别是IP/TCP原理。
以上就是四门课程,非计算机专业的必须学习的课程。
2.基础性知识多敲代码
在学习Java基础时,要不断的去多问,为什么,这个怎么来的,新手刚学习时,必须要搞懂代码的运行原理,然后再搞懂每一行代码的指令或者作用,搞懂之后,自己手动敲打一遍代码,一遍不行,敲打两遍,直到代码全部熟练敲打出来,到了这个地步,你发现代码的运行原理你大概就知道了,知道了原理,就懂得架构的设计基础,进去公司后,你就具备了会干活的能力,知道代码怎么写,据我所知,很多毕业的学生,刚进去公司不会写代码,连最基本的代码规范也不会,是因为他们平时在学校里没有累计代码量,敲代码的能力完全是陌生,要知道,现在很多企业。都要会干活的,不会干活的,白白给你工资吗。
Java基础性知识面向对象很重要,学习时这样思考:
类是怎么定义的,为什么要定义类,为什么要导包,为什么要写接口,接口怎么实现的,,,,然后自己去一个个的解决这些问题,你就会深入底层原理了,当你深入底层的时候,你的基础掌握的牢固了,就不会忘记,刚开始学的时候,很多人反映都忘光了,本人以前学习的时候也有类似经历,那时候常常自责,为什么当初不多敲几行代码,弄的现在都忘记了,后悔来不及了。然后老师讲的案例(demo)或者书上的案例代码,你必须要看懂,然后自己去敲一遍,切记不能看书,想不起来,可以多想一想。这样,日复一日,你的代码量多了,打字速度也快了。
3.多看源码
为什么要多看源代码,因为Java运行的时候,在虚拟机中解析的,里面的东西非常多,相当于一个库,这就需要看源代码了,库里面有很多类,类里面有很多方法,搞懂这个你就可以写出高质量的代码,还有一个就是很多大厂面试都是问这个,Java怎么看源代码了,打开eclipse,创建一个空白web项目,找到该项目的JRE System Library--->rt.jar--->找到相应的包名称--->然后再找相应的各种类名,然后去看代码,全是英文的,遇到不会的英文,需要自己去查阅资料解决了,源代码一定要看懂,不懂得可以去百度,或者请教大牛。
有的人看源代码直接放弃了,是因为平时敲打代码的时候,没有搞懂代码,照的敲打,不去想为什么要这样,久而久之,会产生一种对代码看不懂的小白。
Java看哪些源代码了,比如,在JDK里面的IO库,线程库,集合框架库,反射库,动态代理库,时间库,工具库,等等。这些都是基础性,扎实了这些,相当于高级工程师级别,一般的高级工程师需要5年时间,本人升到高级只花了三年时间,就时平时多看源代码。
综上所述三点要求,其实看似简单,却很少有人坚持做到,只要你坚持每天做到以上三点要求,我相信你的基础知识很扎实的,不管多久忘不了。
还有一点就是本人于2019年9月通过了阿里巴巴CIO新零售技术专家面试,后来由于学历太低和项目经验太短,没能完全入职,造成我一生的遗憾。现在在一家小公司资深开发。
这就是我如何在最短的时间内成长为高级到架构的心得体会。正确的学习方法和每天敲代码的习惯成就我自己,希望对大家有所帮助!如有向我讨教如何学习,可用邮箱联系我1013626230@qq.com.