新入职一家公司,接手了个从零开始的项目,好难!
入职一家新公司,少不了要接手自己不熟悉的项目,有可能是开发已久的老项目,也有可能是从零开始的新项目。今天就来聊聊如何接手一个从零开始的新项目,主要以mall项目为例来聊聊项目开发流程、技术选型以及框架搭建!
开发流程
一个完整的
从零开始
开发的项目,会涉及到功能设计、数据库设计、项目框架搭建、接口设计与实现等流程,具体可以参考下图。与我们后端开发有关的主要是功能设计、数据库设计、接口设计与实现这三部分,当然接口设计与实现中也包含项目框架的搭建。
技术选型
其实在项目初期,比如产品正在设计功能原型的时候,我们就可以开始搭建项目框架了。所谓的搭建项目框架,简单来说就是搭建项目的脚手架,主要是选用一些主流技术,来实现一些项目的基础功能,比如在项目中整合MyBatis、MongoDB、Redis来实现数据存储。当然你也可以实现一些通用的业务功能,比如你在做一个后台管理系统,可以实现一个通用的权限功能。
在进行技术选型的时候,我们需要选择一些
主流的框架及版本
,比如在我的mall项目中就选择了如下技术。技术 | 版本 | 说明 |
---|---|---|
SpringBoot | 2.7.5 | 容器+MVC框架 |
SpringSecurity | 5.7.4 | 认证和授权框架 |
MyBatis | 3.5.10 | ORM框架 |
MyBatisGenerator | 1.4.1 | 数据层代码生成 |
RabbitMQ | 3.10.5 | 消息队列 |
Redis | 7.0 | 分布式缓存 |
MongoDB | 5.0 | NoSql数据库 |
Elasticsearch | 7.17.3 | 搜索引擎 |
LogStash | 7.17.3 | 日志收集工具 |
Kibana | 7.17.3 | 日志可视化查看工具 |
Nginx | 1.22 | 静态资源服务器 |
Druid | 1.2.14 | 数据库连接池 |
MinIO | 8.4.5 | 对象存储 |
Hutool | 5.8.0 | Java工具类库 |
PageHelper | 5.3.2 | MyBatis物理分页插件 |
Swagger-UI | 3.0.0 | 文档生成工具 |
logstash-logback-encoder | 7.2 | Logstash日志收集插件 |
docker-maven-plugin | 0.40.2 | 应用打包成Docker镜像的Maven插件 |
框架搭建
技术选型完成后,就可以进行项目框架的搭建了,在搭建过程中,有些技术我们可能并不是很熟悉,这时候我们需要先去学习这些技术,再把这些技术整合到我们的项目中去。
比如我们的项目中需要用到MinIO、Elasticsearch、RabbitMQ这些技术,如果我们之前没接触过的话,就得先学习下,最好自己实现个小的使用案例,把这个案例调试通了,再整合到项目中去。
以我的mall项目为例,在搭建项目的脚手架时,我经历了下面这个过程。
框架搭建视频
其实从零开始搭建mall项目脚手架的整个过程,我都已经录制了
完整的视频
,这些视频都在《mall视频教程(2023最新版)》中 。大家如果想要了解
mall项目框架搭建的完整流程
,从而获得独立搭建一个项目框架
的能力的话,可以长按扫描下方二维码
加入学习。这个项目框架的搭建过程视频
共30期,约10小时
,这些内容在目前都在我的知识星球 中了,具体内容大家看下视频的目录。mall学习教程-架构篇(30期)
- P005_架构篇_mall项目架构篇介绍
- P006_架构篇_SpringBoot使用教程
- P007_架构篇_SpringBoot常用注解
- P008_架构篇_MyBatis使用教程_上篇
- P009_架构篇_MyBatis使用教程_下篇
- P010_架构篇_MyBatis Generator使用教程_上篇
- P011_架构篇_MyBatis Generator使用教程_下篇
- P012_架构篇_Lombok使用教程_上篇
- P013_架构篇_Lombok使用教程_下篇
- P014_架构篇_Hutool使用教程_上篇
- P015_架构篇_Hutool使用教程_下篇
- P016_架构篇_mall整合SpringBoot+MyBatis搭建基本框架
- P017_架构篇_Swagger使用教程
- P018_架构篇_使用Postman增强Swagger功能
- P019_架构篇_mall整合Swagger实现在线API文档
- P020_架构篇_Spring Data Redis使用教程_上篇
- P021_架构篇_Spring Data Redis使用教程_下篇
- P022_架构篇_mall整合Redis实现缓存功能
- P023_架构篇_mall整合SpringSecurity和JWT实现认证和授权
- P024_架构篇_Elasticsearch使用教程_上篇
- P025_架构篇_Elasticsearch使用教程_下篇
- P026_架构篇_mall整合Elasticsearch实现商品搜索
- P027_架构篇_MongoDB使用教程
- P028_架构篇_mall整合MongoDB实现文档操作
- P029_架构篇_RabbitMQ使用教程_上篇
- P030_架构篇_RabbitMQ使用教程_下篇
- P031_架构篇_mall整合RabbitMQ实现延迟消息
- P032_架构篇_MinIO使用教程
- P033_架构篇_mall整合MinIO实现文件上传
- P034_架构篇_mall项目架构篇总结
当然《mall视频教程》 的内容不止于此,它是Github上标星60K的电商实战项目的
全方位讲解教程
。包括了mall项目架构、业务、技术要点、线上部署的全方位解析,如果你想拥有一个涵盖主流Java技术栈的完整的项目经验
的话,可以长按扫描下方二维码
加入学习。整套视频教程的内容还是非常完善的,涵盖了mall项目最佳学习路线、整体框架搭建、业务与技术实现全方位解析、线上Docker环境部署等内容,具体大纲可以参考下图。
总结
接手从零开始的项目,对于没有搭建过项目框架的小伙伴来说确实有点难,但是大家只要有
完整的项目框架搭建经验
,就会简单不少了。推荐阅读
- 大家期待已久的mall视频教程,目前进度如何了?
- Github标星60K!mall电商实战项目出视频教程了,主流Java技术一网打尽!
- Github标星60K!mall前台商城系统正式发布,支持完整订单流程!
- SpringBoot项目中使用缓存的正确姿势,太优雅了!
- 还在乱用try-catch处理异常,项目中这样处理更优雅!
- 船新SpringBoot 3.1正式发布,新特性真香!