ATM加购物车项目分析

ATM加购物车项目分析

  1. 项目开发流程

我们都知道一个工程想要起步,前期是需要做很多工作的,先要画图纸,画出想要形状,然后计算各个位置的承重,不能是豆腐渣工程,然后在开工,很多的工人各司其职开始工作,然后完工之后还会有专门的人员来检查,检查通过的话就可以出售了。我们的项目也是一样的,给我们一个项目我们就会先做一下需求分析,琢磨一套比较简易的、容易编写的流程,然后就是架构设计,把项目进行划分,根据不同的业务需求选择不同的编程语言来实现,然后把划分的项目分发给各个部门,各个部门在分发给手下的员工,这是分组开发,等我们写完之后就交给测试部门就行测试,检查代码有没有bug,最后就是上线了,运维人员进行维护即可。这就是一个项目的开发流程,跟一个工程很象,所以我们的项目呢也可以叫项目工程,知道了开发流程,那具体都有什么呢,我们来看一下。

  1. 项目开发之需求分析

我们刚刚讲过,给我们一个项目我们就会先做一下需求分析,琢磨一套比较简易的、容易编写的流程。其实在一家公司里面做项目需求分析的是产品经理,比如客户给了一个任务,产品经理就会跟架构师和研发经理一起先大致了解一下客户的需求,然后琢磨出一套比较简易的、容易编写的流程,然后就去客户公司与客户商谈。我们就简单来模拟一下,比如这个ATM加购物车的项目就是客户的需求,我们来分析一下项目的大致需求:

1.用户的额度是自定义还是默认
2.支持多账号登录
3.查看账户余额
4.进行提现
5.钱不够了可以还款充值
6.用户与用户之间的转账
7.记录用户的消费流水
8.给购物车添加商品
9.清空购物车,结算金额
10.管理员可以拉黑、删除用户......
11.记录操作的日志

以上呢就是我们对ATM加购物车一个简单的需求分析,项目的大致需求我们已经分析好了,我们来分析一下项目的大致功能:

1.用户注册
2.登录功能
3.查看余额
4.余额提现
5.账户充值
6.金额转账
7.查看流水
8.添加购物车
9.查看购物车
10.结算购物车
11.管理员功能

以上呢就是这个项目的功能,也就是我们需要写代码的部分,然后呢我们就来看一下项目的架构设计。

  1. 项目开发之架构设计

项目的架构设计主要是架构师来实现的,架构师会根据具体的业务需求选择开发的编程语言、项目的后端框架、项目所需的数据库(又分为主库和从库)、项目的组织结构(软件开发目录规范、自定义结构)、项目功能划分(将一个大项目拆分成多个小项目)、项目的报价等等这都需要架构师来实现。在我们设计我们这个ATM加购物的项目架构之前,我们先来看一下常见的软件架构,我们以淘宝为例:

我们来看一下淘宝的结算功能,我们经常买东西都知道我们选中一个商品添加购物车,等我们想要结算的时候,选中购物车
的商品,然后就会出现价格,然后我们点击结算,就可以结账了,可以选择支付宝或者银行卡等等。我们来想一下商品价格
的最终核算和账户扣款在哪里完成的,是在我们的电脑上吗?
肯定不是的!!!
我们来分析一下操作流程:我们用户能看到的只是一个层面,我们叫展示层,主要是给用户展示的,很容易做出一些修改,当
我们在购物车结算的时候只是给用户展示了一下,因为这些数据是要基于网络发给淘宝的后台的,也就是第二层服务端,在
这里再次计算商品的最终将价格,并进行核对,然后进入下一层,数据管理层,进入到数据库拿到该用户的信息,然后返回
第二层进行扣款,最后把扣款的信息和购买的信息返回到第一层给用户展示。

其实很多程序都是这种三层架构,比如京东、百度等等,第一层就是用来展示给用户的,只做一些简单的数据展示,第二层是整个程序的核心层,负责业务的具体逻辑,第三层就是数据存储层,主要负责用户的信息存取。以上三层呢就是我们以后开发项目的固定结构了,以上三层呢其实也就是我们常说的前端、后端、数据库。

切记:不能跨层操作

基于上述的讲解我们来分析一些ATM加购物车的架构设计:

我们在展示层只展示功能选项和一些基本的逻辑,然后把所有的业务逻辑全部放到业务逻辑层,然后把逻辑层提供的数据传给数据层进行存取。
我们来具体的讲解一下,我们在展示层只展示功能选项,然后再加一些功能,就是获取用户输入的用户名和密码,然后拿着获取到的用户名和密码到第二层,
进行比对和校验,然后再到第三层进行数据的存取,等用户想要数据的时候第二层再去第三层拿数据,第二层拿到数据之后再返回给用户想要的数据。
  1. 项目开发之分组开发

因为我们是一个人,所以主要讲一下分到一个小项目该怎么下手:

1.搭建项目目录
也就是我们之前讲过的软件目录开发规范,但是这里稍微做了一些改变,我们把core文件夹中的py文件当做展示层,然后添加
一个文件夹作为逻辑层,db文件夹还是作为数据层,bin文件夹存放的py文件还是启动文件,也可以把启动文件直接放在项目根目录下。
2.功能的架构搭建
利用空函数搭建各个功能
3.着手写代码
等我们搭建好功能架构,就可以写代码了,一个一个功能的写,便于测试代码。

这里是IT小白陆禄绯,欢迎各位大佬的指点!!!

posted @ 2022-04-04 19:04  陆禄绯  阅读(44)  评论(0)    收藏  举报