前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >Go项目实战 - 给大家做一次项目的技术评审

Go项目实战 - 给大家做一次项目的技术评审

作者头像
KevinYan
发布2024-12-25 15:10:42
发布2024-12-25 15:10:42
1180
举报
文章被收录于专栏:网管叨bi叨网管叨bi叨

从这节开始我们就进入项目需求的开发阶段了,我们在专栏的第一部分主要是搭建框架,第二部分除了为框架补充需要的组件外还普及了怎么为项目做模块划分,业务逻辑如何做分层解耦。

接下来的实战需求开发部分的内容大家在阅读时除了关注功能是怎么实现的,还要在看项目代码时留意一下是怎么按照我们在《Go项目模块划分、逻辑分层解耦》中讲解的方法论做分层解耦合的。

这些方法论并不是铁板一块,不是说写代码只能这么写,还得靠自己根据项目特征来进行变通、慢慢体会把他们变成自己的东西,只有这样不停地的重复加演练和理解,才能自己的项目中才能把这些方法论真正应用起来。

我们的开发实战部分主要涵盖两部分:

  • 一套支持多平台登录,Token泄露检测、同平台多设备登录互踢功能的用户认证体系
  • 商城 app C端接口主要功能的实现

因为只要面向用户的产品应用都需要用户认证体系所以在项目代码上它们仍是一个项目,其中会把怎么建设用户认证体系做一个详细的介绍和功能实现,未来假如你需要做自己的产品时可以直接移植过去再加上一些微信登陆、公众号扫码登陆之类的功能与之结合很快就能建设好产品的用户和认证体系。

好了,在真正进入开发环节前我必须把项目需求的功能、大体流程还有项目的业务结构给大家介绍和分析一下,大家可以把它当成一个立项阶段的项目技术评审

我们这节主要用来大家建立以下共识:

  • 项目需求的主要功能是什么?
  • 项目开发时要划分成哪些业务模块?即业务的结构分析
  • 结合业务结构分析推演出我们的库表结构

真正的技术评审除了业务结构分析外,还要有业务的流程分析,一些主要功能的流程分析我会在对应章节再给大家配合着UML图进行介绍和分析。

项目功能介绍和分析

之所以选商城项目是因为大家对商场应用的业务形态都很熟悉,不需要太多解释大家就能理解,还有就是业务流程还算多变(只要跟营销扯上边都要三天两头的变),把一些设计模式应用在它们中并不会显得为了用设计模式而用。

针对商场项目,大家可以随便打开淘宝、京东、拼多多这些APP看一看,它们的产品构成都差不多。

img

首先能看到的页面构成无外乎:首页、商品分类、购物车和订单列表,具体使用的时候还会有下集的商品列表、搜索、商品详情等页面,以及用户个人页面。

当我们接到一个这样的商城需求后,我们该怎么分析呢?我估计很多人可能已经开始想库表结构,把字段有几个枚举值都想好了。着啥急呢,美女瞅了你一眼、碰了你一下,你就把你们第二个孩子的名都想好了,哈哈哈。

我在画图课专栏的《怎么做好技术评审--业务结构分析和建模》一文中曾经讲过,业务需求的分析我们可以先拿一张纸或者打开绘图软件的一个空画布,先把粗略的流程想一下:

  • 需求有哪些部分构成?
  • 找一条典型的流程路径,想一下这些构成部分是怎么参与进来的?

然后我们把构成部分在纸上或者画布上用一个方框表示,方框之间有交互则用箭头或者直接连接起来,在旁边标注上它们是怎么参与到流程中的。

使用购物App购物这个典型流程,我们可以画出来一个类似下面的草图。

这个草图就是未来为项目做结构分析和模块划分的雏形。

随着你对项目的PRD也就是产品需求文档逐步阅读,对需求了解更深入后,你可以使用用例图梳理出来一个项目的主要用例流,用例即功能,比如我们站在顾客的角度,可以梳理出用户在使用App过程中会用到的功能。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-12-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 网管叨bi叨 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 项目功能介绍和分析
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档