黑马程序员2023最新Java项目实战《苍穹外卖》--完结随笔

ps以下是一些碎碎念:终于把苍穹外卖给敲完啦!前后历时了一个月。比预计中的拖拉了许多,当然也是因为中途有一些事情,导致没有每天能在线。所以这篇就来做个随笔笔记吧!本人菜鸟,轻喷哈哈!

概念明晰

1、角色分工

刚开始当然是得明确一下团队分工的职责(虽然只有一个人),但是假想是一个团队还是很必要的 以下是一些常见的角色分工。

  • 项目经理:对整个项目负责,任务分配、把控进度
  • 产品经理:进行需求调研,输出需求调研文档、产品原型等
  • UI设计师:根据产品原型输出界面效果图
  • 架构师:项目整体架构设计、技术选型等
  • 开发工程师:代码实现
  • 测试工程师:编写测试用例,输出测试报告
  • 运维工程师:软件环境搭建、项目上线

而一个项目的开发过程又大致包含如下阶段:

黑马程序员2023最新Java项目实战《苍穹外卖》--完结随笔_第1张图片

2、开发环境

  • 开发环境(development):开发人员在开发阶段使用的环境,一般外部用户无法访问。即我们平常在电脑开发,使用mysql、Idea等软件开发的环境。
  • 测试环境(testing):专门给测试人员使用的环境,用于测试项目,一般外部用户无法访问
  • 生产环境(production):即线上环境,正式提供对外服务的环境

苍穹外卖

终于进入正题了!我们来看看逐一苍穹外卖的各个方面。

介绍:

其是专门为餐饮企业(餐厅、饭店)定制的一款软件产品,旨在为餐厅的商家接单、派送等的管理、用户的下单功能进行服务。

管理端 - 外卖商家使用

黑马程序员2023最新Java项目实战《苍穹外卖》--完结随笔_第2张图片

用户端 - 点餐用户使用

黑马程序员2023最新Java项目实战《苍穹外卖》--完结随笔_第3张图片

在技术选型方面:

在技术方面,几乎把之前学的的技术都用上了。而且各个结构也非常清楚,让人一目了然。

黑马程序员2023最新Java项目实战《苍穹外卖》--完结随笔_第4张图片

前后端开发的准备工作

黑马程序员2023最新Java项目实战《苍穹外卖》--完结随笔_第5张图片

开发前
  1. Yapi是设计阶段使用的工具,管理和维护接口

黑马程序员2023最新Java项目实战《苍穹外卖》--完结随笔_第6张图片

既然是前后端开发,那肯定得有接口文档。而前后端开发我们这里用到了YApi来对要开发的接口进行管理和查看接口开发的规范

YApi:YApi Pro-高效、易用、功能强大的可视化接口管理平台

黑马程序员2023最新Java项目实战《苍穹外卖》--完结随笔_第7张图片

开发后
  1. Swagger在开发阶段使用的框架,帮助后端开发人员做后端的接口测试。用Swagger来生成接口文档,而且其还可以对开发好的接口进行测试。

注意:由于开发阶段前端和后端是并行开发的,后端完成某个功能后,此时前端对应的功能可能还没有开发完成,导致无法进行前后端联调测试。所以在开发阶段,后端测试主要以接口文档测试为主。

接口文档访问路径为 http://ip:port/doc.html

黑马程序员2023最新Java项目实战《苍穹外卖》--完结随笔_第8张图片

后端环境搭建:

后端的开发基于 maven 进行项目构建,并且进行分模块开发,进行了代码的解耦。

黑马程序员2023最新Java项目实战《苍穹外卖》--完结随笔_第9张图片

使用Git进行版本控制

每一次的业务功能的开发,我们都提交到Git上面去,这使得我们在开发过程中更容易对开发进度可见,在出现问题时,也可以很方便的回溯到上一次的提交。强烈推荐养成使用Git进行版本控制的习惯。

使用Git进行项目代码的版本控制,具体操作:

•创建Git本地仓库

•创建Git远程仓库

•将本地文件推送到Git远程仓库

数据库环境搭建

传统的数据存储,我们使用MySQL来进行存储。通过建表语句,把数据存储到其中。

黑马程序员2023最新Java项目实战《苍穹外卖》--完结随笔_第10张图片

但是传统数据库的存储模式,这就使得我们需要数据时就得去数据库中不断的读取数据。而我们很多时候需要读取的数据都是重复的,所以引进了redis,其相当于我们电脑的内存,在我们读取数据时先去redis里面逛一圈,看看有没有我们需要的数据,有就在其中读取,无则去MySQL中读取。这样一来就大大的减少了我们读取数据时耗费的时间,加快了我们的响应速度。

黑马程序员2023最新Java项目实战《苍穹外卖》--完结随笔_第11张图片

前后端联调

在我们初步开完 发一个接口后,我们就需要进行前后端联调来验证我们开发的接口是否正确。而在这个过程,我们不得不来思考一个问题:前端发送的请求,是如何请求到后端服务的?

黑马程序员2023最新Java项目实战《苍穹外卖》--完结随笔_第12张图片

到这里我们就得请出nginx来作为中间的桥梁了:

nginx 反向代理,就是将前端发送的动态请求由nginx 转发到后端服务器

黑马程序员2023最新Java项目实战《苍穹外卖》--完结随笔_第13张图片

nginx 反向代理的好处:

提高访问速度

进行负载均衡

保证后端服务安全

黑马程序员2023最新Java项目实战《苍穹外卖》--完结随笔_第14张图片

技术要点

MD5

密码加密存储:

直接将登录密码存储到数据库中?不!安全性太低了。我们来使用MD5来对密码进行加密,这样就算被别有用心的人获得了我们的管理员账号意图来获得用户密码,也增加了难度。提高安全性。

你可能感兴趣的:(黑马苍穹外卖学习笔记,java,数据库,redis)