小白学python系列————【Day38】项目开发流程

今日内容概要

  • 项目开发流程

  • 项目需求分析

  • 项目架构设计

  • 项目目录搭建

  • 项目功能搭建

  • 项目注册功能

项目开发流程

1.需求分析:
(1)明确项目的体功能(要明确到底要写什么东西,实现什么功能)
这个阶段的话具体要询问产品经理以及客户(客户对产品的具体需求)
(2)参与人员:
产品经理;开发经理;架构师
(3)技术人员主要职责:
引导客户提出一些比较合理,比较容易实现的需求。

2.架构设计:
(1)明确项目的核心技术点
项目使用的编程语言;项目使用的框架;项目所使用的数据库
(2)参与人员:
架构师

3.分组开发:
(1)明确每个组每个人具体到写该项目的哪些功能
(2)参与人员:
架构师;开发经理;普通程序员

4.提交测试:
(1)程序员自己本身写完自测以及交付测试小组测试
(2)参与人员:
普通的程序员;测试小组

5.交付上线:
(1)参与人员:
运维工程师
(2)可以直接把项目交给客户帮客户定期维护

项目需求分析

1.主题是带大家快速如门python直至开发一个ATM+购物车系统,ATM的实现类似于银行自助提款机核心业务,购物车的实现类似于淘宝商城购物系统。

2.项目的核心不仅在于引领初学者快速入门python项目开发,更是站在项目架构的角度教你如何在程序开发之初合理且优雅地设计程序的架构,从而极大地提升程序的开发效率与可扩展性。

3.项目需求:

  • 额度15000或自定义
  • 支持多账户登录
  • 可以查看账户余额
  • 可以提现(可自定义手续费比例)
  • 提供还款接口
  • 支持账户间转账
  • 记录每月日常消费流水
  • 实现购物商城,买东西加入购物车,调用信用卡接口结账
  • 提供管理接口,包括添加账户、用户额度,冻结账户等
  • ATM记录操作日志
  • 用户认证功能

4.从需求中提炼出项目的核心功能

  • 用户注册
  • 用户登录
  • 查看余额
  • 账户提现
  • 充值功能
  • 转账功能
  • 查看账单
  • 购物车功能
  • 管理员功能

5.从功能中在提炼出核心技术点

  • python核心语法
  • python诸多模块
  • 装饰器知识

架构设计

1.架构前拓展
编写代码的改进历程:
(1)代码直接写在一个文件里面,采用面条版堆积;
(2)将有些具体的功能采用函数封装;
上述两个阶段类似于小公司,一个员工身兼数职
(3)讲不同的功能拆分到不同的文件
上述阶段类似于大公司 工具职责划分部门 每个员工只干该岗位的具体事宜
敲重点:拆分的目的是为了更好的管理资源和代码,提升程序的扩展性。

2.项目架构(重要)
(1)百度
以用户登录为例:

  • 浏览器页面获取用户名和密码;
  • 基于网络将用户名和密码发送给百度服务器;
  • 服务端去数据库中校验用户数据。
    三层架构:
    浏览器;服务端;数据库
    (2)淘宝
    以购买商品为例:
  • 浏览器页面展示商品总价;
  • 基于网络将购买商品的操作发送给服务端做核心校验;
  • 之后操作相应数据库完成数据修改。
    三层架构:
    浏览器;服务端;数据库

3.三层架构
(1)用户层

  • 数据展示,数据获取
  • cmd窗口可以充当用户层
  • 将来可以替换成浏览器或者app
    (2)核心逻辑层
  • 业务逻辑
  • 某个py文件充当逻辑层
  • 将来可以替换成软件开发目录规范或者现成的框架
    (3)数据层
  • 数据的增删改查
  • json文件充当数据库
  • 可以替换成数据库程序

项目目录搭建

1.第一层
core文件夹
src.py文件充当第一层

2.第二层
iinterface文件 充当第二层
根据业务逻辑的不同再次拆分便于后期维护管理
user_interface.py
bank_interface.py
shop_interface.py
admin_interface.py

3.第三层
后续通过代码动态创建,或者直接创建db文件夹

项目功能搭建

利用空函数搭建功能展示

项目注册功能

面条版注册功能
架构版注册功能
数据层功能封装

你可能感兴趣的:(团队开发,python)