学习Java的最佳路线

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了学习Java的最佳路线相关的知识,希望对你有一定的参考价值。

我是初学者,看了半年Java语言,不知道接着该怎么学下去了

首先先搞懂JavaSE的部分,Swing和swt部分就可以少看或不看,因为现在用的比较少。重点是看懂Java中的面向对象、集合框架、JDBC、异常、IO、线程和网络编程。JavaSE搞定后再学习Servlet、JSP,然后才是经典的Struts2、Hibernate和Spring,学习框架时重点理解框架的运行原理,甚至可以尝试自己写个轻量级的框架。理解运行原理的最好方法就是阅读源代码,还是要感谢Java中的开源项目。这期间还要多找各种大小的项目去完成,不一定要大,但是要精致,功能要完整,这样可以练习所学知识,并且可以在做项目中发现自己的知识体系中不足的地方。关于看视频,我不推荐,很多同学一天到晚就知道看视频,殊不知,编程真理在于“练习,练习,不停练习”!

推荐看看这个学习路线,规划的很棒:

再补充下:当学习Java的期间,会碰到各种各样的异常,请积累这些异常信息,以及如何出现的异常和如何处理的,因为java中常见的异常就那么几种,积累的多了,处理问题的能力就提高,这样水平会提高的很快!

SpringMVC 这几年的占有率迅速的提高,可能之后会取代 Struts2,但是无论怎么变化,这些还都是 MVC 模式,理解了这个模式,上手任何的 MVC框架都应该很快。
企业需要的变化还体现在大数据方面,因为 Hadoop 的流行,Java 的应用场景又多了一个。所以,不喜欢 web 的可以考虑学习大数据方面的知识。
另一个流行的场景自然就是 android,学习 Android 依然需要你有 JavaSE 的底子+HTTP 协议的理解,再配合上 Linux 的知识就可以开始了。

再说下找项目的问题,初学者可能会碰到不知道做什么的问题,其实最开始大家都是从模仿开始的,例如你学会了 jsp+Servlet,那就可以模仿一个 v2ex 这样的论坛出来。学会了 SpringMVC,那就试着将论坛的代码重构,提供restful接口供客户端访问(Android、ios 、web 等)。论坛做的没难度了,那就模仿一个团购网站,依然是不一定要做全部的功能,但是做出的功能要稳定,要精致。或者一个微信公众平台的开发都是不错的项目。

初学者看源代码有的人推荐看 Struts2、spring 的,但是我相信10个初学者9个看不懂,那就从简单的开始,例如 Apache 的 Commons 库,例如 lang、dbutils、io 等,这些都是非常不错的代码,类的数量不多而且质量也不错,这些看懂之后,你的基础水平增长的不是一点点。

再次提醒初学者,学习编程没有你想的那么简单,必须要多练习,多思考,最主要的是你对这个有兴趣。现在不少网站和媒体都宣传1个月学会前端、3个月入职 BAT 的口号,那也就是口号而已,别太认真。这条路没有捷径,写你的代码就是了!

参考技术A

根据个人实际的经历,结合多种书籍,特别整理出了下面的java学习路线:

一、Java SE部分

1、java基础:基础语法;面向对象(重点);集合框架(重点);常见类库API;

2、java界面编程:AWT;事件机制;Swing;

3、java高级知识:Annotation;IO和NIO、AIO;多线程、线程池;阻塞、非阻塞、异步网络通信;反射、动态代理;

二、JDBC编程

4、SQL基础:基础SQL语句;基本查询;多表查询;子查询;结果集的交、并、差运算;

5、JDBC基础:常见数据库用法;JDBC操作常见数据库;RowSet与离线结果集;数据库连接池;事务管理、批处理;

6、JDBC进阶:存储过程、函数;触发器;理解JCBC的不足;掌握ORM工具优势和设计;

三、DHTML编程

7、html基础:基本HTML标签;常见表单标签;DIV+CSS布局;

8、javascript知识:javascript基本语法;javascript基本对象特征;Json语法;深刻理解javascript的动态特征;

9、Dom和事件机制:DOM操作、编程;常见浏览器事件机制;掌握用户交互技巧;

四、XML编程

10、XML基础:XML基础规则;DTD和SCheme;XML和样式单;

11、XML进阶:DOM、SAX和JAXP;dom4j、JDOM等工具;XQuery和XQJ;基于XML的数据交换;

12、Web Service:JAX_WS2、SAAJ规范;WSDL和SOAP协议;CXF框架、拦截器;CXF整合Spring;

五、Java Web编程

13、Web编程基础:Tomcat服务器;Jsp语法、EL、内置对象;Servlet API;Servlet 3.0注解;Listener和Filter;

14、Web编程进阶:自定义标签库;MVC和DAO、Servlet、标签的作用;JSTL、DisplayTag等常见标签库用法;

15、Web编程原理:请求/响应、架构;Http协议;深刻理解Jsp运行原理;掌握Web容器底层的线程池、socket通信、调用Servlet的命令模式;

六、Ajax编程:

16、Ajax编程:XML HttpRequest和异步请求;发送请求和处理响应;常见Ajax库(Prototype、Jquery、ExtJs、DWR)用法;结合Http协议、异步请求深入研究ajax库的设计;

七、Android开发

17、Android基础:Android开发调试环境;Android应用结构;界面组件与界面编程;资源管理;四大组件;

18、Android中级:文件IO和SQLite;图形、图像与动画;音频、视频的录制与播放;传感器编程;GPS应用;

19、Android高级:网络编程与Web Service;OpenGL_ES 3D开发;整合Google服务;使用NDK开发;java和c相互调试;

八、轻量级Java EE

17、Struts2:MVC与struts体系;Action和Result;国际化和标签库;文件上传、下载;类型转换和输入检验;拦截器与插件开发;

18、Hibernate:ORM与持久化映射;关系映射、继承映射;延迟加载、性能调优;HQL查询、条件查询、SQL查询;二级缓存和查询缓存;

19、Spring:IoC与Bean配置、管理;Bean生命周期;SP、EL;AOP与事务权限控制;S2SH整合开发;Spring整合Jpa;

九、经典Java EE

20、JSF<选学>:MVC与JSF设计理念;托管Bean与导航模型;JSF流程与事件机制;JSF标签库;类型转换与输入检验;

21、EJB及相关技术:JNPI与RMI;会话Bean及其生命周期;IoC与EJB拦截器;JMS与MDB;会话Bean与Web Service;

22、JPA:ORM框架与JPA规范;JPA注解与常用API;JTA事务与事务管理;JPQL查询;EJB、JPA整合;

十、Java 拓展、进阶:

23、Java EE实践与架构:Ant+Ivy或Maven;SVN、CVS;深刻理解10种以上设计模式;掌握各种Java EE架构及各自优势;

24、Workflow:Workflow规范及功能;JBPM等workflow框架;多次重构、反复思考;大型项目经验;

25、Java EE进阶:掌握各MVC框架运行原理、能开发类似框架;掌握Spring、HiveMind、AspectJ等框架原理、能开发类似工具;掌握Hibernate、iBatis等框架原理,能开发类似工具;深入研究EJB机制、大致了解应用服务器的实现;

希望对您有所帮助!~

参考技术B 身边有很多Java小白,他们渴望学习知识,但又没有方向!我们都知道学习Java语言可能要有一个拥有庞大的知识体系,想要掌握这些内容的话,最好清楚Java学习路线,有一个好的学习规划才能达到事半功倍的效果,那么Java学习路线是什么呢?今天,小编就聊聊喽!
小编认为由简入难、由浅入深、循序渐进,先通过基础的入门学习逐步深入了解,不断进阶,最终掌握所需要具备的技能。
第一步:掌握基础入门知识
优就业致力于打造完善的基础课程体系,除了基础语法、核心类库、面向对象编程、异常、集合、IO流之外还增加了网络编程、线程、反射等企业热门应用的技术点,另外融入JDK1.8新特性,让学员在基础阶段都能成为行业中的佼佼者。
第二步:学习热门企业应用框架
了解HTML5及CSS3的新特性,在此基础上还会学习JavaScript、jQuery脚本语言和异步交互技术AJAX等,从而达到从零开始独立编写出完整的网页。学习数据库优化技术,通过Java工具JDBC、JDBCUtils技术连接数据,让程序完成前台到后台的完整请求。通过servlet实战以及服务器技术Tomcat和Jsp的深入学习,达到对整个项目部署及运行流程的系统化了解,掌握真正全栈工程师所需要的技能,同时达到企业的用人标准。
第三步:课程接轨市场前沿技术
通过学习Spring以及IOC、AOP、SpringMVC、Spring Boot、Spring Could这些当前企业中流行的项目解决方案,从而熟练掌握企业实际开发中需要的核心技能。通过学习Linux操作系统+Redis从而更高效的处理数据,学习Ngix+Tomcat+Oracle三层物理架构从而快速的运行项目,学习Maven平台实操项目管理从而掌握内在核心本质。最后各阶段实战项目让学员顺利达到JavaEE开发领域准职业人水准。
第四步:分布式企业项目实战
当前热门的互联网分布式架构,使用Git进行代码管理,汇总之前学过的技术进行企业级开发,从项目需求到研发再到项目测试,严把每个细节,真正做到学会、学懂、学透,逐渐成长为一名合格的Java全栈工程师。
一般公司的招聘介绍:
岗位职责:
1、参与开发和维护后端Java服务框架;
2、参与开发和维护数据统计、分析系统。
六、任职资格:
1、大学统招本科及以上学历(985/211优先考虑),计算机相关专业;
2、精通JAVA 熟练掌握SpringCloud SpringBoot框架;
3、熟练使用mysql、Redis等;
4、了解RabbitMQ等消息队列机制;
5、理解restful风格接口规范;
6、熟悉大规模高并发访问应用开发经验者优先;
7、具有良好的代码风格、接口设计与程序架构;
8、积极乐观,责任心强,工作认真细致,具有良好的团队沟通与协作能力
参考技术C 说到学习Java,我们今天就来说说Java开发需要学习的内容,说说java学习路线,说说Java学习的课程内容。
Java学习大致分为四大阶段,具体内容如下:
第一阶段——Java基础
Java的学习内容从计算机基本概念,DOS命令开始,为你入门编程语言扫盲,什么是程序,如何配置Java开发环境,Java编程的过程是怎样的,Java有什么物特点,程序是如何运行的,这些你都可以在这里得到答案。
Java编程的基础语法,共分为10个知识点,我们将学习变量,基本数据类型,进制,转义字符,运算符,分支语句和循环语句等,以达到训练基础语法和逻辑能力的目的。还有对数组、面向对象和异常处理等。
第二阶段——JavaWeb
Web前端开发基础和框架、Servlet和JSP在Web后端的应用、Web后端开发相关专题、MVC和分层架构以及项目开发流程及CASE工具的使用等。
第三阶段——Java框架
框架是程序中另一种存储数据的方式,比直接使用数组来存储更加的灵活,在项目中应用十分广泛。同时,框架整合开发(SSH/SSS)、RESTful架构和移动端接口设计、第三方接口和在线支付功能、网站安全和Spring Security应用实战、复杂用户交互处理和Spring Web Flow的应用、MyBatis的应用和SSM整合,我们将深入研究其中涉及到的数据结构和算法,对学员的技术深度有了一个质的提升。
第四阶段——Java+云数据
亿级并发架构演进、Linux基础、搭建tomcat环境以实战演练,企业真实项目供学员应用学习,进行知识体系的“二次学习”。
其实学习Java技术,大可参考此学习路线,该学习路线对从零基础小白到Java初级开发工程师,Java高级开发工程师,后面的Java大神级开发工程师都有一个明确清晰的指导。
参考技术D 0基础学习java是完全没有问题的,学习java不怕没有基础,最怕的是没有自己的规划和方向,我这里有一个学习java的路线你可以按照这个顺序学习

阶段1.Java核心技术
Java编程语言概述、Java基础语法、Java数组、面向对象编程、高级类特性、Java API、异常
处理、集合与泛型、Java IO流、Java 多线程、Java Reflection(Java反射)、网络编程、Java8
新特性、Java9/Java10/Java11新特性、经典项目
阶段2.数据库关键技术
Mysql 基础、02SQL语言、JDBC、DBUtils
阶段3.Web开发与实战应用
HTML5与CSS3、JavaScript、jQuery、AJAX&JSON、XML、bootstrap、Web服务器基
础、Servlet、JSP、JSTL、EL、Cookie&Session、Filter&Listener、国际化、文件上传下载
阶段4.经典&流行框架
Spring5.0、SpringMVC、MyBatis、Struts2、Hibernate、JPA、SpringData、Maven、
SVN、Shiro、Activiti5、WebService、Linux、Redis、Git&Git Hub、MySQL高级、JVM原
理、Quartz、nginx、JUC 线程高级
阶段5.Java高级&前沿技术
Dubbo、SpringBoot、SpringCloud、Docker、NIO、FastDFS、Elasticsearch、
Thymeleaf、MyCat、ActiveMQ、ECharts、分布式事务、单点登录、Zookeeper
阶段6.企业接轨项目以在线教育项目为例
Vue、ES6、Mybatis Plus、课程中心微服务搭建、课程中心微服务功能实现、前后端分离技
术、后台管理系统前端页、课程中心前端功能、阿里云OSS、云存储微服务、POI操作Excel、
课程基本信息管理、阿里云VOD、SpringCloud服务、社交登录-微信登录、SpringCloud配
置、SpringCloud Hy、其他
阶段7.大数据技术
大数据技术概论、Hadoop概述与安装、HDFS伪分布式文件、YARN、MapReduce详解、
Hadoop-HA高可用、HDFS完全分布式、Hive入门、Hive深入、Hive高级
阶段8.大牛必备面试题
学习java,代码这东西不像单纯的知识点看懂了就行了,一定要多敲,这样才行,学习方法上就是“多想、多问、多敲”希望对你有帮助,有问题可以及时沟通!

Python最佳学习路线

如何学习Python

最近开始整理python的资料,会陆续放到博客中存档。找了几个qq群,其中有一个群78486745(点击进群)。后面就没怎么加群了,还是需要看官方文档为主

python语言基础:(带你熟悉python语言的特性,学会使用python开发环境,使用python开发一些简单的案例)

(1)Python3入门,数据类型,字符串
(2)判断/循环语句,函数,
(3)类与对象,继承,多态
(4)tkinter界面编程
(5)文件与异常,数据处理简介
(6)Pygame实战飞机大战

python语言高级:(python语言的高级库,常用的企业级开发案例实战)

(1)Python常见第三方库与网络编程
(2)面向对象,Python正则表达式
(3)求职数据爬虫,金融数据爬虫,多线程爬虫
(4)Python线程、进程
(5)Python mysql数据库应用,Nosql数据库,sql,jython

python全栈工程师前端 (学会开发前端网页,会使用流行的前端框架)

(1) HTML+css

(2) 网页界面设计实战

(3) javaScript+ajax

(4) jquerry

(5) jquerry EasyUI, Mobile简介,photoshop

(6) Bootstrap

python全栈工程师后端 (常用的后端架构和企业项目实战)

(1) Django入门

(2) Django高级

(3) Django实战

(4) Flask开发原理

(5) Flask开发项目实践

(6) Tornado开发原理

(7) Tornado开发项目实践

Linux基础 (linux入门,和python结合可以找linux+python运维的工作)

(1)虚拟机安装
(2)linux服务器安装与配置
(3)apache服务器与nginx服务器安装与使用
(4)linux常用服务器命令
(5)Python-WEB服务器运行环境与配置
(6)版本管理工具svn
(7)版本管理工具git
(8)程序部署与网站迁移

Linux运维自动化开发 (Linux中比较深度的案例和实战)

(1) Python开发Linux运维

(2) Linux运维报警工具开发

(3) Linux运维报警安全审计开发

(4) Linux业务质量报表工具开发

(5) Kali安全检测工具检测

(6) Kali 密码破解实战

python数据分析 (分析爬虫抓取的数据,分析规律,用于商业化)

(1) numpy数据处理

(2) pandas数据分析

(3) matplotlib数据可视化

(4) scipy数据统计分析

(5) python 金融数据分析

python大数据 (Python操作大数据很方便)

(1) Hadoop HDFS

(2) python Hadoop MapReduce

(3) python Spark core

(4) python Spark SQL

(5) python Spark MLlib

python机器学习 (机器学习的一些入门概念和案例,python支持很多机器学习的框架)

(1) 机器学习基础知识简介

(2) KNN算法

(3) 线性回归

(4) 逻辑斯蒂回归算法

(5) 决策树算法

(6) 朴素贝叶斯算法

(7) 支持向量机

(8) 聚类k-means算法


附:开发环境

















以上是关于学习Java的最佳路线的主要内容,如果未能解决你的问题,请参考以下文章

Java 学习路线

java学习路线

Java学习路线图

Java学习路线图

Java学习路线图

Java学习路线