零基础自学Java(附详细思路与学习资料)

大道万千,殊途同归。唯有勤勉与坚持,方能收获自己想要的结果!

语言只是一种工具,交流的工具。

关键字:兴趣、计划、坚持、动手能力。

一、学习计划

1、第一部分 基础

基础包含:基础语法、面向对象、常用类、集合框架。

基础入门学习地址:

慕课网:https://www.imooc.com/course/list?c=java&is_easy=1&sort=pop

网易云课堂:https://study.163.com/course/introduction.htm?courseId=343001#/courseDetail?tab=1

我要自学网:https://www.51zxw.net/List.aspx?cid=769#!fenye=3

入门的基础学习,看看免费的资源应该已经足够了。


2、第二部分 框架和数据库

这部分资料需要自己发挥能力去找了,可以关注公众号、或者去网上去找找免费视频,或者能力之内的付费视频。通过视频跟着练习,视频学习比较简单有效,但是比较费时,所以大家可以自己衡量一下。

这里有我自己收集的资源,有兴趣的朋友可以看看。

  • Java电子书籍:链接:https://pan.baidu.com/s/1NJsLRt1cqGU79OL1xSq_pQ  提取码:v164 
  • Java视频资料:链接:https://pan.baidu.com/s/1CfhbZA337H4tsLdEyOHB9Q   提取码:ne17
  • Java软件安装包:链接:https://pan.baidu.com/s/11l7-tGXArjqTAYRjsd_Z0A   提取码:afdo 

二、学习思路

1、数据库知识点

数据库优化:缓存机制、SQL语句优化、索引。

数据源连接池、视图、存储过程、游标、触发器、主从复制、分库分区(分表)技术、数据库事务、范式理论

2、持久层框架知识点

MyBatis框架:半自动ORM实现;

Hibernate框架:全自动ORM实现、HQL语句、数据库隔离;

Spring Data JPA框架:基于Hibernate,并且增加了命名空间。

3、业务层-Spring框架知识点

IOC容器、IOC控制反转、DI依赖注入、AOP面向切面编程、bena工厂、应用上下文、一站式轻量级框架、灵活集成各类优秀框架

4、表现层-Spring MVC框架

三层架构表现层框架、基于MVC模型、传统Web和前后端分离式开发

5、前端

Http协议:无状态、无连接、基于请求响应模型

Ajax:老技术,新应用;七种技术融合,JavaScript、CSS、XSTL、HTML/XHTML等;特点;应用场景;和传统Web的区别。

servlet生命周期:加载并实例化-->初始化(init)-->提供服务-->终止或销毁(destroy)-->卸载(关闭服务器)

RESTFul架构:核心概念-资源(它认为万物皆资源)、表示(对于给定的资源,可以有很多不同的表示)、

状态(状态交由客户端维护, 而服务器无状态化)。

layui:https://www.layui.com/

bootstrap:https://www.bootcss.com/

EasyUI:http://www.jeasyui.net/plugins?tdsourcetag=s_pcqq_aiomsg

jQuery:http://jquery.cuishifeng.cn/

其余的VUE、ElementUI、React这些可以根据自己兴趣学习。

6、设计

设计模式:单例、工厂、代理等模式,这几个比较简单,可以优先掌握。

设计七大原则:依赖倒置原则(面向抽象编程)、接口隔离原则(使用统一接口)、里式替换法则(子类可完全替换父类)、迪米特原则(实体间减少交互)、单一职责原则(一个类只有一个职责)、开闭原则(面向扩展开放,面向修改关闭)、聚合/组合复用原则(使用聚合/组合,减少继承)。

软件开发流程:

  • 瀑布模型:依次进行,每项审核,通过后方可进入下一项,适用于:用户需求固定。
  • 迭代模型:瀑布模型拆分版,适用于:用户需求不明确。
  • 快速原型模型:先有可运行的软件模型,澄清需求。适用于:用户需求不明确,模糊,可变。
  • 混合模型:多种模型组合的方式,适用于:用户需求特殊。

项目开发流程内容:

  • 可行性分析(可行性分析报告,BOSS)-->
  • 项目开发计划(项目开发计划书,项目经理)-->
  • 需求分析(需求规格说明书,一般为开发人员)-->
  • 概要设计(概要设计说明书、数据库设计说明书、界面原型,一般为开发人员)-->
  • 详细设计(详细设计说明书,一般为开发人员)-->
  • 编码(API帮助文档,开发人员)-->
  • 测试(软件测试用例、软件测试报告,测试人员or开发人员)-->
  • 维护(程序维护手册,维护人员)

7、常用API

String类API

String:线程安全,且长度不可变

StringBuffer:线程安全

StringBuider:线程不安全

集合类API

  • List 
  1. ArrayList:线程不安全
  2. Vector:线程安全
  3. LinkedList:双向链表
  • Set
  1. TreeSet:排序
  2. HashSet:值的唯一性
  • Map
  • Collections:算法
  • Collection:List与Set的父接口

异常类API


2019/11/12 09:31 未完待续!

  • 2
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值