Java全栈工程师:从Java后端到全栈,高级电商全栈系统大课(更新至阶段二)
课程详细介绍内容
第一阶段:小程序高级电商前端(1-6周)
第1周 走进Web全栈工程师
开课第一周,我们会公布完整的课程体系计划,展示完整的项目效果,然后开始进行项目分析,项目技术选型,和小程序组件化开发方式和技巧。
课程安排:
1. 全栈项目的前期规划与投入
2. 如何从0开始去架构一个电商级别项目
3. 如何分析项目,典型项目的必备环节有哪些
4. 项目技术选型怎么选才合理
5. 开始前端之旅--初识LIN-UI
6. 掌握小程序组件化开发方式和技巧,打好基础
第2周 深入理解REST API开发规范 开启三端分离编程之旅
本周将正式进入电商项目的前端开发环节,在开发前会先讲解REST API开发规范,前端是怎么配合服务端同学工作的,再开始电商首页开发,更深入掌握小程序组件化编程。
课程安排:
1. 深入理解REST API开发规范,以及如何调用服务端API
2. ES6 Promise与Class/组件化进阶开发
3. 异步加载数据
4. 如何展示数据,如何刷新数据,掌握setData解决方案
5. 学会如何调用服务端API
6. 开发《风袖》首页轮播图/首屏加载动画开发
7. 首页3种专题/热卖商品推荐等
第3周 电商系统分类页面/客服/商品详情 页面开发
本周 开发《风袖》的分类/客服/商品详情,是电商必备功能,光分类我们就讲了大分类、小分类与子级商品,这都是市面稀缺的干货,本周带你认识真正的电商分类开发,彻底学会它。
课程安排:
1. segements与combinedtabs快速构建tab切换
2. Tabs和Combinded Tabs组件的应用
3. 在小程序中结合LinUI使用字体图标
4. 加载分类数据/交叉分类/滑动特效
5. Price价格组件应用
6. Tag标签组件应用
7. 客服/分享小程序页面开发
8. 商品详情多图构建
9. 多图片惰性加载
第4周 攻克SKU和商品购物车
第四周很重要!我们会重点讲解SKU,SPU和购物车,完善购物车的复杂逻辑是每一个前端开发头疼的问题,更是电商项目的精髓所在,此环节还专门开设了直播互动,助力同学攻克难关!。
课程安排:
1. SKU联动计算(库存检测与禁止购买)
2. 矩阵与矩阵转秩用来提取可用规格
3. 生成 所有可能出现的SKU路径
4. 优惠与折扣的显示方案
5. 无货状态监控/订单无效的30分钟逻辑校验
6. 库存再次校验机制/+ - 的逻辑计算/一次下单限制
7. 快速实现全选与反选与取消
8. 优惠券处理机制/优惠券的前端规则计算
9. 购物车与服务器同步/本地缓存
10. 无货状态,数量报警与服务器的同步策略
第5周 高级电商系统的订单管理开发
本周我们讲解电商系统的订单管理,与订单金额计算,电商价格计算模式很多,关键是对于小数部分的保留问题,通常分为向上/向下取整,四舍五入,银行家模式等几种。我们紧密与企业真实开发接轨,掌握实实在在的技术干货。
课程安排:
1. 订单的状态管理/订单生成与订单SKU计算
2. 订单子项/分类订单/取消订单/限时订单
3. 解决二次下单的数据监控机制
4. 二次下单里的逻辑删除的提前校验
5. Bearer JWT Token令牌/令牌缓存/监测令牌
6. 用户无感知登陆
7. 不间断重试机制/二次重发机制
8. Refresh Token 刷新令牌应用401机制检测
9. 订单校验
10. 金额与折扣金额计算(浮点数运算处理、银行家模式金额计算)
第6周 个人中心开发和Java服务端体系规划
本周我们主要讲解电商系统中“我的页面”,然后会为大家系统梳理本阶段的核心内容,让同学们更好的巩固和掌握,于此同时开始第二阶段java服务端体系规划,让同学们从前端平滑的过度到后端。
课程安排:
1. 订单列表 地址管理 状态管理等功能的实现
2. 快递状态如何监控
3. 地址管理与选择
4. 账户管理与退出登录
5. 配送管理
6. Java服务端体系规划
7. 三端分离的体系结构
第二阶段:Java与SpringBoot,高级电商后端开发(7-18周)
第7周 项目中你必须会的Java高级语法
工欲善其事必先利其器,Java的基础语法大部分同学都有,本周重点讲解Java的高级特性,以方便同学们更好的理解后续课程中的一些高阶语法应用,同时也提升编程内功,夯实基础。
课程安排:
1. Java编程思想与模式/真正的面向对象编程
2. Java继承与多继承变通实现
3. Interface与面向接口编程
4. 多态与多态的应用/泛型与泛型的应用 /动态与工厂方法
5. 注解与装饰模式/反射与无侵入设计
6. IOC与依赖注入
7. 什么时候用实例和静态?
8. Java的匿名类与匿名函数Lambda表达式
9. 面向接口编程与面向抽象编程
10. 无参构造函数与有参构造函数
第8周 项目中你需要掌握的SpringBoot基础与高级特性
本周的重点是SpringBoot,SpringBoot只是基础框架,如果要用来开发电商,需要做二次开发。我们会深入讲解SpringBoot高级特性和二次开发思路,帮助你进一步提升开发效率和编程内功。
课程安排:
1. SpringBoot的IOC机制
2. 如何在SpringBOot中使用其AOP机制
3. SB的代码规范讲解,依赖注入时的技巧
4. 合理分层(现代的Java分层结构推荐)
5. SpringBoot的依赖注入
6. Spring Boot全注解
7. ***与全局异常处理
8. Maven相关配置
第9周 数据库设计与分析
本周我们开始学习数据库设计与分析,我们将带你从业务分析到设计一步一步带着你做,无论是理论基础还是设计思路都毫无保留,细致入微的带你攻克数据库设计难关,成为企业的一把手。
课程安排:
1. 电商数据库特点分析
2. 是否需要外键约束
3. SKU、SPU、SPEC等核心规格设计
4. 订单设计技巧
5. 类目设计
6. 常见表关系(1:1,1:N:,N:N)学习
7. 优惠券、优惠券限制种类、优惠券活动、发放规则和类型数据表设计
8. 订单、订单表、用户表设计
9. Banner、Theme主题表设计
第10周 高效开发:Lin-Spring-Core核心库精讲
SpringBoot是通用性框架缺少很多方便的定制化,所以我们专为课程量身定制了Lin-Spring-Core核心库,可以加速基于SpringBoot的Web开发,提升开发效率,告别996:)。
课程安排:
1. SpringBoot分层机制
2. 快速Post与Get路由实现
3. 多级路由自动映射机制
4. Validation2
5. Java返回结果的处理
6. 详细讲解分层机制VO、DTO、Service、Repository
7. Lin的验证层/全局异常处理机制
8. Lin中的AOP思想应用/日志处理系统/模型机制
第11周 SpringBoot JPA入门与深入
本周我们将开始学习SpringData的神器 JPA。使用JPA可以大幅度减少编写SQL,并且由于是基于对象的查询所以JPA的维护是非常方便的。
课程安排:
1. JPA基本认识与模式
2. JPA配置/JPA实体隐射
3. IDEA自动生成JPA实体
4. 正向与逆向
5. JPA关联关系配置1对多
6. JPA关联关系双向1对多
7. JPA关联关系双向多对多
8. 复杂多重关系配置(多对多对多)
9. JPA命名方法查询
10. JPA@Query查询/JPA分页查询
第12周 商品详情和分类的API开发
本周我们开始学习商品详情和分类的API开发,商品详情的多级复杂度,分类数据级别难度,一直是电商开发中困扰同学们的问题,本章我们将详细的一步一步带你做出这么复杂的功能,助攻你在业务中提升业务逻辑思维。
课程安排:
1. 商品详情数据API
2. 商品头部图片API
3. 商品详情图片API
4. 分类数据API
5. 分类详情数据API
6. 二级分类API
第13周 服务端SKU的概念与实现【重难点】
本周是全课最难的部分之一,涉及SKU的实现,SKU路径算法等,经过不断的优化和打磨,整理最佳SKU实现理念,将最优解决方案和过程倾囊相授,以最快的速度带你成长进阶。
课程安排:
1. 单品与商品的概念(SKU与SPU)
2. 服务器计算SKU
3. 服务器SKU联动
4. SKU路径算法
5. 优惠与折扣计算
6. 均值与预扣除库存API
7. 30分钟取消订单的逻辑 API
第14周 服务端--购物车与缓存系统
本周开始学习服务端购物车的全套业务逻辑实现和缓存系统开发,将用到Redis来做缓存,又是一个主流技术栈,我们将带你向更高的层次进阶。
课程安排:
1. 服务器购物车保存
2. 购买时库存检测
3. 最大库存限制 API
4. 结算与优惠结算
5. Redis的基本命令
6. Redis的特性
7. Redis与MySQL对比
8. Redis缓存系统设计
9. Redis在业务中的应用
第15周 优惠券系统
优惠券听起来简单,但其实非常复杂,包括优惠券模板、活动、Cover封面、适用范围(哪些商品参与活动,哪些商品分类参与活动)、发放规则以及优惠券适用人群。此外优惠券还分为满减券、折扣券等各种类型。都是我们本周的重点知识。
课程安排:
1. 优惠券系统设计
2. 优惠券活动、活动封面、活动关联
3. 优惠券商品种类限制
4. 优惠券类型(满减、折扣、无门槛等)
5. 优惠券规则计算
6. 优惠券投放
7. 优惠券过期
8. 优惠券与前端联调测试
第16周 微信身份体系和微信支付
本周主要讲解微信身份体系和微信支付。我们将详细介绍微信支付的整个流程并编写产品的下单、支付与处理支付结果的相关接口和主流的现代化技术栈,与实际工作开发更完美契合,带你快速上手企业开发。
课程安排:
1. 支付的小程序端讲解(含签名的作用讲解)
2. 支付的服务器端编写
3. 统一测试订单与支付接口
4. 支付的服务器端编写(支付结果回调机制)
5. 支付回调通知处理
6. 事务与锁防止多次减库存
7. 测试支付全流程
8. 令牌的选择/JWT令牌
9. refresh token与BasicAuth验证体系
10. 从微信服务器验证用户身份
11. 身份体系与权限处理
第17周 订单处理Redis实战和‘我的页面’API开发
订单处理是服务器端的重点和难点,本周我们重点讲解订单的生成规则和取消订单的逻辑和我的页面所有的API开发工作,最终将我们的项目部署上线,完完整整的把全栈项目跑起来,有没有很激动!。
课程安排:
1. 生成订单/订单子项
2. 使用Redis处理订单超时
3. 分类订单
4. 订单并发的处理
5. 分布式的解决方案
6. 数据冗余以对抗高并发
7. 取消订单/二次下单
8. 订单管理 API/快递状态 API
9. 地址管理 API/配送管理 API
10. 账户管理与退出登录 API
第18周 队列、消息与服务高可用性
本周我们开始学习高可用性和消息队列,提升你的架构能力,向更高的架构层进阶。
课程安排:
1. Redis实现消息队列
2. Redis KeySpace 队列通知
3. RocketMQ实现延迟消息队列
4. 高可用性的实现与完善
5. 状态不确定性的处理方案
|