很多Java初学者在学过一段时间会觉得Java学习最头疼的不是语法结构的繁杂,而是Java本身体系结构的庞大。以至于不知道接下去该学什么,或者什么样的知识才会对后续的学习有帮助。接下来的内容将让大家对Java学习的路线有个宏观的把握。在与市场接轨的前提下,来给各位同学推荐相关学习的方向和技术,以及学习到何种程度才能适应基本的工作。(想学的就看下去,不管多长终有结束)
Java是一个宏观名称,手下小弟有Java SE 、Java EE 、Java ME。
30秒让你区分Java SE,Java EE, Java ME
简单点来说
Java SE 是做电脑上运行的软件
Java EE 是用来做网站的(我们常见的JSP技术)
Java ME 是做手机软件的
Java SE是Java入门的开端,是后两者的基础,这块内容也就是大家所熟悉的飞机大战、聊天软件、五子棋这些桌面级项目所组成的。学完了Java SE部分,可以选择继续学习JavaEE,也可以转学Android。
一、Java SE中应该关注的内容
现在列出Java SE的学习中应该关注的方面,以及这些方面里主要涉及哪些核心内容。大家可以根据自己的学习情况,对照这些条目,看看有没有缺漏的内容。在之前提到过如飞机大战这样的项目,这些确实能很好的涵盖大部分Java SE的内容,所以必要的项目是很关键的。
Java SE大致可分为以下几块内容:
对象导论:如何用面向对象的思路来开发
深入JVM:Java运行机制以及JVM原理
面向对象的特征:封装、继承、抽象、多态
数组和容器:容器的线程安全问题
I/O和NIO:NIO工作原理和应用
网络编程:TCP/IP+BIO/NIO UDP/IP+BIO/NIO
其他:正则表达式、字符串等
在这里多提一点,关于Java SE学到什么深度才合适。其实对于后续学习Java EE或者是Android来说,Java SE你只要学会皮毛就足够应付了,当然这里的皮毛是要求你熟练Java语法结构和基本CRUD操作。
二、Java EE中该学点什么
Java EE很杂,但是也很容易学,因为你做几个网站大概就能把所有知识点串联起来。所以Java EE方向说好听点儿的叫企业级应用开发,说难听点儿的其实就是做网站。当然并不局限于做网站。
对于Java EE方向的学习,重点在于能够熟练的运用各种框架,以及掌握各种框架构成的核心思想。至于学什么框架,用什么应用服务器,在学习的时候可以采用容易配置的,所有的同类服务都是类似的,精通了一个,相似的学习就很快了。
Java EE方向学习内容
下面来具体的看各个模块应该学点儿什么:
序列化:XML、JSON与Java之间的序列化和反序列化
ORM:推荐学习Hibernate
JSP/Servlet:可以顺带着把JS学习了
Spring:IOC、AOP、Spring MVC
MVC:推荐学习Struts
Web Service:JDK自带web service、CXF等框架
SOA:了解ESB、MQ等企业级应用架构
其他:会使用JMS,了解JTA
还是一点,Java EE方向的学习主要是会熟练运用即可。大点儿的企业都会有自己的框架,技术含量大同小异,会用即可。当然到了这个阶段设计模式的学习也必不可少,设计模式可以穿插于各个框架中进行学习。
三、关于Java EE之后应该学点儿什么
对于大多数企业来说,如果你能掌握上面提到的相关技术,并且熟悉SQL和Linux,那找个Java相关工作应该是没有问题的了。如果你想更深入的去应用上面所学的知识,分布式、搜索引擎、大数据处理等互联网热门技术都是你扩宽技能的方向。
开源的Lucene是搜索引擎技术最好的入门,简单易学,而且很多企业对搜索引擎的需求越来越大。诸如MINA、Kafka这样的开源框架,是你步入分布式方向很好的基石。
如果你能了解HBase、Mongo这样的非关系型数据库,那就更有利于你思考大数据的问题。
技术是学不完的,而且更新的速度一定比你学习的速度还要快。所以了解市场需求,了解技术的核心理念尤为重要。至于这一阶段可以看什么书,有如下推荐:《分布式Java应用 基础与实践》、《Hadoop权威指南》等。
想学Java?不妨看看竹迩大大【提神的咖啡】系列文章,引领你进入Java殿堂。
网友评论
另外有了这个基础,学新的框架也很快,有些提升是无形的。