大家好,我是皮鱼。
现在网上有很多播放量巨高的免费编程项目教程,之前我也带大家评测了【瑞吉外卖】、【尚医通】这两个近百万播放的热门项目,很多同学表示挺有收获,但美中不足的是感觉大家都做过。
所以这次我给大家分享一个今年出的、相对较新的项目 —— 硅谷课堂。通过这篇文章,希望能帮大家快速了解和学习这个项目,少走弯路~
这是一个基于微服务的在线学习平台,包括公众号前台和管理后台。
管理员可以在后台发布视频点播课程和直播信息:
用户可以在公众号查看、购买课程,并了解直播信息:
快速导学视频:https://www.bilibili.com/video/BV1De411L7zG(建议先看这个)
原课程视频地址:https://www.bilibili.com/video/BV13T411372x
这个项目用的技术并不复杂,基本都是学习路线上提到的必学技术:
微服务:
数据存储层:
工具库:
下图中,左侧的服务治理部分仅供参考,并没有全部实现。但是可以看到这个项目对接了很多第三方服务:
请看这个视频:https://www.bilibili.com/video/BV1De411L7zG
这是一个侧重后端的项目,也是要从整体理解各微服务模块的作用开始学习。
如下:
功能模块图:
这个项目的接口比较多,这里给大家讲一下接口类型划分规则,便于大家理解项目。
本项目接口主要分为:内部接口、管理员后台接口、前台接口。
内部接口:接口路径包含 inner 的均为内部接口,其他服务可通过 feign 客户端来调用这些内部接口。
接口实现一般在 service 的 api 目录下,接口定义在 feign 客户端模块下,如图:
管理员后台接口:一般在 controller 目录下,前缀为 /admin。如图:
前台接口:一般在 api 目录下,前缀为 /api。如图:
这个项目的代码并不复杂,了解各模块功能后就可以逐个击破。
有同学说微服务代码行数就多?其实这是一个错误的认识,我们可以用 IDEA 的 Statistic 插件来看一下这个项目的代码行数,发现也就 8000 多行。且占用最多行的 MTCloud 文件感觉都是直接粘贴的官方 SDK 的代码,如图:
再看看登录接口的代码,会发现他没有做任何校验,并且就是设置了一个固定的 token。如图:
所以如果你想把这个项目直接上线,还是需要不少时间来完善它的。
1、跟上次推荐的尚医通微服务项目比起来,这个项目的坑不算太多,还是比较适合入门的,前后端都可以学习。前端建议至少学完 Vue、后端建议至少学完 Spring Boot 再来看这个项目。
2、业务层面:这个项目的业务流程比较完整,值得学习。本质上也是类商城业务,但是在这方面比尚医通的业务流程更完整,包括:信息发布 => 信息展示 => 领优惠券 => 购买 => 下单支付 => 统计管理。
但是代码实现比较简单、不够完整(比如上面提到的登录功能),也不够细节,甚至有些地方是有点水的。但毕竟课程的时间就这么短,也能理解。建议大家做项目的时候不要完全跟着视频他一行你一行,还是要有一些自己的想法。
3、技术层面:项目的重点不在微服务上,只是象征性地用了下微服务,没有服务治理相关的东西,哪怕你事先没学过微服务,也能做这个项目。
但是,项目重点讲解了微信公众号的开发及相关工具,并使用大量的第三方服务如文件上传、直播、点播等,很适合学习第三方服务的接入。
如果你已经做过类似业务的系统,建议只看自己想学的章节,比如学习如何对接第三方直播平台或者公众号开发。