ATM和程序开发的运用

今日内容概要

  • 项目开发流程
  • 项目需求分析
  • 项目架构设计
  • 项目架构搭建
  • 编写具体功能
  1. 项目开发流程

项目开发流程分为五个流程
第一步需求分析:
	了解客户的需求在和客户交流需求的项目难度和开发时间剔除一些无礼的要求在了解要求后进行搭建框架
第二步架构设计:
    架构师会根据具体业务的需求选择
    开发编程语言的选择
	项目的后端的数据库(主库、从库)
    项目组织结构(软件开发目录规范有些项目不需要创建多余的文件、定义结构)
    	项目功能划分(一个大项目需要多个小项目组成)
    计算项目所需要的成本对项目进行报价
第三步分组开发:
    在选择好语言后,将主项目拆分之后的多个项目需要交给不同的项目组去编写,这样写的好处是降低复杂度 提升开发效率 缩短开发周期。
第四步项目测试:
    在项目完成需要将项目提交给测试组测试
    语法错误千万不要提交到测试部门才被发现 这样可能会扣绩效甚至三次之后直接全铺盖走人!!!
第四步交付上线:
	将项目打包交给运维人员运行即可

2. 需求分析

这里以ATM和购物车为例子

项目大致需求
  - 额度15000或自定义
  - 支持多账户登录
  - 可以查看账户余额
  - 可以提现(可自定义手续费比例)
  - 提供还款接口
  - 支持账户间转账
  - 记录每月日常消费流水
  - 实现购物商城,买东西加入购物车,调用信用卡接口结账
  - 提供管理接口,包括添加账户、用户额度,冻结账户等
  - ATM记录操作日志
  - 用户认证功能
提炼项目功能
	1.用户注册
  2.登录功能
  3.查看余额
  4.余额提现
  5.账户充值
  6.金额转账
  7.查看流水
  8.添加购物车
  9.查看购物车
  10.结算购物车
  11.管理员功能
项目大致技术线
	1.python基础核心编程
  2.函数(装饰器)
  3.常见内置模块(os,sys,json)

3.结构设计

1. 面条版:在采取任何包装输出的语言,长又长
2. 函数版: 采取函数进行包装输出
3. 模块版:	划分文件进行包装,精化输出的函数大大提升开发效率和容错率
列子:为什么要对软件进行架构开发	
	以百度的账户登录为例
    	登录需要密码和用户名 然后校检用户名和密码
        需要三步校验
        我们在用户端注册的数据将通过网络发送到服务端,然后存储到百度的数据库 我们在登录的时候后台的服务端将会获取我们的数据
        在后端获取到数据后将会通过相关算法在数据库取出相对应的数值是否一致,不一致将数据返回清空通过程序执行上一步程序,正确就返回校验结果
        第三步就是算法的存储和加密,数据库的存储加密算法一般都是大佬在负责
上述过程就可以发现ATM共分三个阶层模块
	展示层
    只展示功能选项 基本的构架逻辑
    逻辑层
    所有的业务逻辑
   	数据层
	给逻辑层提供数据存取
    ATM架构牛逼之处!!!
	程序的扩展性非常的强
  	比如展示层等我们以后学了前端可以直接替换成页面
    	展示层目前是cmd操作 可以换成页面
    核心逻辑层以后学了框架之后替换成框架
    	逻辑层目前是普通的python代码 可以换成django框架
    数据存取层以后学了数据库直接替换成数据库
    	数据层目前是json文件 可以换成MySQL数据库

4. 分组开发

1. 先是搭建项目目录
	脚本启动文件start.py文件 在项目多而繁杂的情况下可以放在bin文件目录下,平常直接放在根目录下即可
    第二层的目录有三个主要文件 分别附带着不同的子文件和功能
      	start.py
    conf
    	settings.py
    lib
    	common.py
    core
    	src.py
    interface
    	user_interface
      bank_interface
      shop_interface
    db
    log
    readme
2. 在相关框架下搭建
	利用空函数
3. 构建主要功能
	弄清主要功能的作用 和将函数精简化 提高效率和产品竞争力

ATM的运行

# 首先得搞明白自己的代码运行需要哪些功能
我们这里主要需要调用路径和文件的传输读取 os模块和sys模块即可
import os 
import sys
我们将文件的动态路径通过os和sys模块连用添加到start文件
sys.path.append(os.path.dirname(__file__))
然后将start文件将主要的系统文件相连起来
from core import src # 目录下的core文件夹里面的src.py文件
最后需要一个if __name__ == '__main__'文件来确定
在
from interface import user_interface
调用需要的数据模块
然后将主体调用的函数共=功能以字典的方式输出方便调用
在配置文件中将路径拼接后即可下面的db文件要用
db文件用于存储文件的数据
在程序运行的时候db模块是必须要用到的,相当于数据库在调用数据的时候可以适当的运用os模块来进行对整个文件的简编
posted on 2022-04-04 22:44  等秋叶的七月  阅读(157)  评论(0)    收藏  举报