1. 课程内容总览
1.1 功能模块概述
电商分为电商网站和电商后台管理系统两部分,包括了用户模块、商品模块、购物车模块、订单模块、支付模块,实现了电商行业大热的众筹商品和分期购买,用elasticsearch实现了商品属性的分面搜索、同义词搜索,实现了商品类目的面包屑导航。
1.2 技术点
课程不单实现了电商网站中的业务模块,介绍了一些常用的开发工具和部署上线,还一步步教你如何做代码封装、优化。课程涵盖技术包括:
- laravel
- Eloquent ORM的使用,访问器、修改器,模型关联、作用域
- Request请求验证、事件监听、定时任务、异步任务
- 自定义异常处理
- auth 认证
- laravel-admin 快速搭建后台
- elasticsearch 实现分面搜索、同义词搜索
- 创建/修改/删除 索引、文档
- 布尔查询、分页查询、排序、Multi Match多字段匹配
- 实现面包屑导航
- 众筹、秒杀商品的业务逻辑
- 分期支付业务逻辑
- 订单下单、退货退款业务逻辑
2. 学习总结
在学习L05、L06两本电商课程的过程中,学习到了很多优秀的编码设计、代码实现技巧,常有醍醐灌顶、茅塞顿开的收获。时隔几个月,最近二刷教程,总觉得有种被教程牵着走的感觉。教程的每一个新章节总会抛出新的问题,再详述解决方案。教程说的很详细,也很连贯,连贯到我忘记去思考从问题抛出到解决方案敲定,这中间经过了怎样的分析?
【开发流程】
在我们的日常开发中,当有新的需求出现需要程序编码实现时,通常是由产品经理提供召开产品需求会、出具详细的需求文档和产品原型图,让开发人员和测试人员充分了解需求和落实到产品中的细节处理方案。而开发人员的任务就是编码实现需求。
本次二刷教程,希望立身电商项目本身去思考和学习课程中的实现方式,教程侧重编码实现,那就自己把编码前的需求分析和表设计分析补上。
以下是本次课程学习根据模块功能划分的学习笔记,内容主要包括:需求分析,表设计分析和代码借鉴,笔记目录如下:
01 用户模块
02 商品模块-基础
03 商品模块-进阶 商品类目
04 商品模块-进阶 众筹
05 购物车&订单模块
06 支付模块
07 优惠券模块