都说Java不好学,学了出来不好找工作,自学经历完整送上,立志挑战月薪30k!

在本篇文章的分享,我会分享我是如何自学Java的学习经验,并且给大家现在正在自学Java的你们一点建议,(大家不要太去在意标题)希望对你们会有所帮助,下面正文开始分享:

正在学习Java 计算机语言并且打算作为自己今后的发展方向,不幸的是你在学习中遇到了比较困惑而又不能解决的问题, 你必需要明确以下几个很重要的问题和掌握相对正确和适合自己学习编程的方法,从而为自己解惑并不断的提高自己,最终达到一个多数企业入职的基本标准。

我目前是在职Java开发,如果你现在也在入门学习Java,在入门学习Java的过程当中有遇见任何关于学习方法,学习路线,学习效率等方面的问题,你都可以申请加入:Java精讲视频教程,前来交流探讨。群文件里面有一些不错的自学书籍和PDF文档教程,需要的话都可以自行来获取下载。

首先,你要清楚自己学习Java的真正目标是否明确,学习Java的想法是否是成熟的。对于这个问题可能很多人都会不屑一顾,凭借我多年从事Java开发及在工作中接触的多数搞Java开发的人经验而言,最终能够把Java 语言学好,多数人都是将Java作为自己以后从事此项工作为目标,这个目标一旦明确则给与自己无尽的动力和压力,没有动力和压力人就有各种借口遇到困难而退缩甚至放弃。 其次,在你有了非常明确的目标后,而为之努力学习过程中,你必需清楚多数企业对于Java 开发人员的基本入职要求和需要掌握哪些常用技术。当然不同企业要求是由些差异的,不过对于一个初学Java的人而言,通常应该知道以下是大多数企业对于初级程序员的基本要求,可以从以下几个技术方面审核自己的技术水平。

一、任何Java开发方向都必需要将Java SE基础核心理论知识及实用技术牢牢掌握,从Java角度讲无论什么样的所谓高级Java技术都建立在Java SE核心基础之上,譬如Jsp 动态网页技术,Servlet Java EE标准核心控制器, freemarker 模板技术, 还是MVC模式的框架(Spring [主流IOC容器],Struts2) , 还是ORM中间件 mybatis, hibernate ,openjpa, 都基于Java SE核心技术, 而Java SE的核心技术,重中之重就是Java 面向对象的核心编程设计思想及实现,也就是Java 面向对象语言三大特点(封装,继承,多态), 如果这里掌握的有很大问题,后面在使用Java语言设计及编码时以及学习后续Java web 及各种Java 框架时不会顺利, 所以这个地方要下大工夫, 更多的时间应该用到这部分内容的学习理解及大量代码实践, 有很多培训机构为了吸引学员,让学员有短暂的成就感,会花费一定时间(甚至比较长)讲解GUI部分内容,从而让你做出一个图形界面或小游戏之类的东西,凭我多年的工作经验来看,这几乎是没必要的。因为这部分内容几乎在99%的Java开发的企业中都是用不到的鸡肋内容,完全没必要花费时间去学习。所以一个Java 从业人员如果不能很好掌握Java SE核心理论和基础并熟练应用,你第一时间就被企业入职门槛挡在了外面。我曾无数次强调Java SE有多么的重要,一旦Java SE学好,以后学习任何内容都会非常轻松。

二、真正的企业级Java项目是100%要有企业数据处理的,而且是及其重要的一块,因为记录任何事物在计算机中都体现为数据,而数据的永久存储最基本常用的软件设备就是数据库, 那么对于数据库的操作就显得尤其重要, 有资历的Java 程序员甚至有这样一个比喻:”Java SE核心技术牢牢掌握你就如同像孙悟空有了筋斗云,而具备非常出色的数据库技术就像又拥有了如意金箍棒”,这样你就有了大闹天空的本事, 如果有兴趣搜索信息,,PL/SQL 数据库开发语言排名很多时候都在前20名, 有很多人掌握了PL/SQL 从而找到薪水很高的工作的比比皆是。当然,如果从Java 角度说数据库操作,那你必需要深入理解掌握并熟练使用JDBC, 在后期你无论使用什么类似于hibernate、mybatis ORM数据库操作的中间件都是对JDBC的封装,这个搞不懂,你也就迈不过第二道企业入职门槛。

三、说到Java 企业级开发,通常都是web 应用, 那就有个绕不开的话题,也就是前端开发, 这自然就是JS的掌握,其实这部分从逻辑方面及复杂性都和Java 有一定差距,也就是说着部分技术并不难掌握,但是必需充分重视, 因为Java web项目,尤其是企业管理系统的后台管理应用JS实现或JS框架构建管理界面及实现异步请求处理数据都是很重的任务,一个JS文件一至二千行代码都是常见的,如果是数据处理,JS框架当然就是jQuery 及相关jQuery插件了,不容忽视,必需努力熟练掌握

四、企业级Java项目常用的框架,我个人认为,这部分内容的掌握和技术应用并不难,只要你牢牢掌握Java 核心技术,在JavaSE,数据库,Servlet和JSP掌握的基础上,学习都是不难的,就是一个构建Java Web项目的工具而已,核心要学习的就是框架的工作流程和常用注解,多用几次,自然慢慢掌握。

当你知道以上企业的基本入职要求和什么是重要的,而你要努力学习掌握的技术后,你应该知道如何找到适合自己的学习方法从而使自己不走或少走弯路。

1.无论多高水平的程序员,在什么样的企业,你必须是一个代码规范的程序员,否则你将与人格格不入,甚至被上司开掉都是有可能的。 印度之所以被称为工程师王国,就因为印度现在小学就有编程课程设置,而且严格规范编程标准,软件开发是团队合作的产物。必需是一个整体,这样要求代码要统一规范,这里啰嗦几句(不过很多人不重视从而被骂), 标识符命名绝对要规范,一定要有标准的注释,合理换行,包命名准确,重用功能再简单也要封装为类或方法,多余的代码必需删除,别乱用静态变量及方法,循环别嵌套太多等等,如果这个你在最初不重视,你将在以后付出代价,也就是你曾经走了很长而且你不知道的弯路。

2.不要盲目模仿代码,在很多培训机构或老师为了让本来问题很大的你找到平衡和虚荣心,往往告诉你,先照着我的代码敲一遍再说,我这里告诉你,这个老师在坑你,俗话说:明其理而为之行,你几乎对此一无所知就盲目模仿,即使敲出来又有什么收获呢,如果遇到这样的问题,你应该遵循以下方式逐步解决,先想想我要做的是什么,最终是什么结果,可能用到我学过的哪些知识点,缕清思路,找到可能遇到的问题,确定实现顺序和初步的方案,写一连串的注释标明每步要做什么,然后再试着动手, 在实现中如果遇到问题再想多种途径解决问题, 这样你就会积累需求的分析能力,设计能力,确定解决方式的多种途径能力,这样你才能进步,千万不要盲目模仿代码,千万千万哦。

3.明确重点不要面面俱到,这是学习很忌讳的,多数Java开发中我们只会用到20%不到的Java最重要的常用技术而解决80% 的企业开发遇到的问题,所以你不要什么技术点都用同样的时间去学习和实践,比如你用了20多天的时间搞GUI来满足你的虚荣心,你非要使用多重for循环卖弄你逻辑能力,醒醒吧,你只需要牢牢掌握核心面向对象的程序分析设计,常用SE类库, 理解多线程,熟练使用IO读写,JBDC必需的… 切记哦。

4.先思、再查、三问、后动手。就我自己看来,这是学习Java技术或者说学习任何计算机编程语言最好的一个方法。视所谓先思考就是在我们遇见任何问题的时候,学会自己先认真思考,想明白其中是什么问题,应该如何解决,解决的方法有哪些,为什么解决不了,初步确定好自己的思路,在我们最终这个问题都还想不通的时候,我们可以去查询相关的资料,文档,但凡是可以解决的渠道,我们都可以借鉴。如果自己查询了这个问题都还解决不了,这个时候我们就可以去请教会技术,有经验的同学,或者老师,问Java先行者给你思路给你启示帮你解决问题,弄明白了别犹豫马上动手吧,你的收获不少也提升自己。

5.找一个能促进你的人和真正帮助你的人。学习本是枯燥的,一个人总是孤独,你最好有个伙伴,他能够刺激你上进,对比着学,你强我就要比你更强;真正帮助你的人往往不一定是经常赞美你的人,对你学习如果经常指出问题和诟病,那他肯定是你的良师益友。

6.代码量,代码量,这个一定要保证,别为生活中的花花绿绿分你的心,你既然把它作为你的今后目标请对得起它,大量的敲代码吧,熟能生巧,Java SE 你少于5万行代码,你还想做程序员,天下没有那么便宜的事,未吃三天素,就想上西天,别做梦了。

好了,说的够多了,如果你能够充分理解我上面所说的并思考后正视自己,重新给自己一个定位,坚持下去你会有希望的,我在Java的战场等你… …

你可能感兴趣的:(都说Java不好学,学了出来不好找工作,自学经历完整送上,立志挑战月薪30k!)