最近有很多java初学者问我java该怎么学,这个说实话得需要自己有一定毅力才行,但是今天我还是给大家总结下吧。
大致需要学习这几个大纲:1·Java基础课程、2·JavaWeb、3·Java框架课程、4·项目开发
第一阶段——Java基础课程:
对于零基础或者打算开始学习Java编程的同学,首先要去学习Java基础课程的内容,那么Java基础课程有哪些呢?无非就是需要知道Java概述、Java语言基础、面向对象、异常处理、常用类、数组和集合、IO流、线程、反射等。
1·Java概述:你要知道Java一些基本的知识,比如优点,什么时候诞生的,目前的发展状况如何。
2·Java语言基础:要学会一些标识符、变量、数据类型、运算符、控制语句、方法等知识。
3·面向对象:Java是一门面向对象开发的编程语言,什么是面向对象?这就需要你慢慢的去琢磨了。
4·异常处理:计算机虽然不会出错,但毕竟是人类制造出来的,所以在编写代码的时候可能会出现一些异常错误,出了异常之后,需要程序员去进行处理。
5·常用类:Java给程序员提供了强大的API,使我们在开发的时候变得轻松许多,Java为我们提供的那些类,常用的那些,你一定要掌握。
6·数组和集合:这块内容在以后工作的时候100%会用到,所以一定要作为重点来学习。
7·IO流:使用Java读取或者传输文件的时候会用到IO流,举个例子,你从网上买了一辆自行车,商家给你邮寄过来的应该是一些零件(组装好的自行车不利于邮寄),你需要自己动手去组装,同样,如果你想把某个文件从一个地方读取到另一个地方,使用IO流会极大的方便你的操作。
8·线程:通过线程,可以让程序更高效的工作,当然,如果使用不当,也会造成一堆问题。
9·反射:想要以后自己写一些框架,反射知识必不可少。
第二阶段——JavaWeb:
HTML5课程、CSS3、JavaScript、MySQL使用、JDBC连接池、Servlet、JSP、AJAX、jQuery、Bootstrap。
一·HTML5
html概述、html基本标签、图片标签、超链接标签、表格标签、无序列表标签、有序列表标签、定义列表标签、 div标签、语义化标签、表单标签
二·CSS3
CSS3简介和用途、CSS3书写规范、 CSS3基本语法、 CSS3三种使用方式、 标签选择器、Id选择器、Class选择器、属性选择器、层次选择器、文字、文本属性、 背景、列表属性
、尺寸、显示、轮廓属性、浮动、定位属性、盒子模型、 CSS3高级属性
三·JavaScript
JavaScript概述、 JavaScript发展史、 JavaScript组成、 数据类型、 运算符、分支语句、循环语句、系统函数、自定义函数、匿名函数、常见事件、 数组、字符串、日期对象、正则表达式、BOM对象:window、history、location、 DOM概念、 DOM操作:创建、修改内容、删除、Css样式操作
四·MySQL使用 或oracle数据库
数据库简介、 MySQL的安装与使用、 MySQL客户端和服务器配置、用户权限管理、 DDL创建数据库和表、约束与外键、 DML实现添加、修改、删除数据、聚合函数、日期函数等、DQL简单查询、 排序、分组、筛选、多表查询、子查询、in和exists关键字、分页查询、Mysql SQL语句优化介绍
五·JDBC连接池
JDBC概述、使用步骤、Connection、Statement、ResultSet接口、使用JDBC 完成数据库DML操作、PreparedStatement对象、大数据的操作、批量处理与元数据
、事务处理、隔离级别、自定义连接池、DBCP、C3p0连接池、DBUtis工具类、 QueryRunner、自定义结果集处理、连接池知识总结
六·Servlet
Tomcat与Eclipse的集成开发、什么是Servlet、 Servlet的进化史、Servlet的优化过程、Servlet中应用的多线程概念、 Servlet接收客户端请求信息、Servlet响应客户端信息、Servlet的生命周期、重定向写法、转发写法、转发和重定向区别、HttpServletRequest获取中文乱码问题、HttpServletResponse响应中文乱码问题、Servlet路径映射问题、Servlet多路径映射
七·JSP
什么是JSP、JSP的内置对象、透析JSP的本质、JSTL+EL、 MVC介绍、分层的重要性、 Web工程中事务实现、Session的使用、Cookie的使用、 web工程中连接池的使用、实现用户的自动登录、文件的上传、下载、过滤器、 监听器、反射、注解、泛型、综合案例练习
八·AJAX
Ajax技术背景、Ajax技术的理解、XMLHttpRequest使用步骤、XMLHttpRequest GET/POST的区别、同步请求&异步请求、同步请求&异步请求的区别、Ajax获取不同的返回值类型、Ajax使用原生JavaScript和Jquery的区别、Ajax响应状态处理、 JSON语法、Java JSON 解析、Java JSON 生成、Java JSON 第三方工具快速解析、JavaScript JSON转换、Jquery JSON转换
第三阶段——Java框架课程:
首先,目前市面上基本没有人用 SSH,现在主流用的多的都是 SSM 这套。微服务架构 Spring Cloud 也是主流的前沿技术。推荐按照这个顺序学习Spring、SpringMVC、MyBatis(持久层框架,这个框架互联网公司使用比较多,因为互联网项目需要进行SQL优化,MyBatis的SQL优化很方便,所以大部分都是使用MyBatis)Struts2(很少使用了,使用这个的肯定是很老的项目)、Hibernate(传统企业,还有政府等可能会使用Hibernate。)SpringBoot(新项目大部分使用的都是boot了。所以在项目中遇到还在使用SSM的一般都是遗留项目。)
第四阶段——项目开发:
1、项目启动
项目组成立(公司成员、客户成员)、制定项目预期目标、制定项目计划周期、建立好项目组成员沟通机制
2、需求调研
创建调研计划、协调调研时间、收集客户资料,获取客户需求、所有的资料都需要保留一份,资料中存疑的需要及时询问、编写需求文档、重点描述出客户的业务流程和性能要求。
采用Word、Excel、Rose等形式、需求变更记录、确定开发环境和运行环境、扩展性要求
、与旧系统的接驳要求、估算出项目工作量、本阶段需要一套需求管理系统来进行需求的管理、本阶段的需求文档也是用户测试的依据。
3、系统设计/详细设计
一个系统可以分为基础平台和应用模块两部分选择基础平台,无论是采用第三方平台还是自行开发平台,都需要深入了解,查看是否符合要求。应用模块设计(针对业务流程)、中间件的采用或自行开发,需要深入了解。用户界面的设计如果用户界面设计完毕并确认,即可初步写出用户使用手册、管理员使用手册。变更记录,本阶段的系统设计是集成测试的依据。
程序开发
创建开发任务计划表、开发计划日程表,优先编写测试用例、按照编码规范编写代码、按照文档注释规范注释、以上形成开发文档。
、本阶段需要一套版本管理系统。、本阶段的测试用例也是单元测试的依据、如果能做到,最好每日构建、测试、本阶段需要一套Bug管理系统,形成需求、设计、开发、测试互动、编写测试计划和测试方案
2)、功能测试
单元测试、集成测试
3)、性能测试、集成测试、压力测试、如果能做到,最好能进行自动化测试、如果能做到,做分析统计工作、最后形成测试报告、试用、培训、维护
4)本阶段需要解决:解决异地修改和公司修改的同步问题、用户测试中的Bug修改问题,按照级别分为、程序Bug、设计变更、需求变更
尽量按照a b c的顺序来进行修改,尽量避免b、c级的修改,最后形成安装手册、维护记录。
项目成员组成
根据以上过程,一个项目组中,需要:需求工程师,其要求
善于与客户沟通,能快速了解客户的需求,对客户所在的行业比较熟悉。
善于学习新知识。
熟悉Word、Excel、Rose等工具的使用。
熟悉已积累的产品的功能、性能等。
2、系统分析师/设计师,其要求
精通开发语言和开发框架,部分需要精通数据库
精通已积累的产品的功能、性能等
深入了解客户行业特点
能根据客户的要求分析出其实质
能做出优秀的设计
熟悉Word、Excel、Rose等工具的使用
3、开发工程师,其要求
熟悉开发语言,熟悉开发要求和注释规范,部分需要熟悉数据库。
熟悉单元测试。
能根据设计做出良好的编码,保证功能和性能。
部分需要有一定的设计要求,因为涉及到将来的维护。
4、测试工程师,其要求
熟悉测试工作,能按照测试计划进行测试。
熟悉开发语言,能协助开发工程师找错。
能独立完成黑、白盒测试。
如果是高级测试人员,还要能够对系统能深入进行分析并能制定出优秀的测试方案。
5、管理人员
一般由以上人员兼任,主要有
项目经理:负责整个项目
开发经理:负责系统设计、开发工作
测试经理:负责测试工作
6、其他人员
一些项目涉及到其他人员,如页面设计人员、页面制作人员,部分大的项目,还有专门的维护人员,由于目前国内很多公司并没有严格这么区分,如果项目小的话,可以一人兼任多项职位。
今天就到这吧,累了。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
作者:Newer??????
java学习
java学
JAVA