【3.0】ATM和购物车项目架构设计

【一】项目结构树

|- ATM(项目根目录) |-- README.md # 项目说明书 |-- start.py # 项目启动文件的创建方式二,直接暴露在最外层 |-- bin(启动文件目录) # 存放启动文件的方式一,单独创建目录 |- main.py # 存放用户核心代码 |-- core(用户视图层) # 存放用户视图层代码文件 |--- user_src.py # 用户功能代码 |--- admin_src.py # 管理员功能代码 |--- shop_src.py # 购物功能代码 |-- interface(逻辑接口层) # 存放核心业务逻辑代码 |--- user_interface.py # 用户功能相关接口 |--- bank_interface.py # 银行功能相关接口 |--- shop_interface.py # 购物功能相关接口 |-- db(数据处理层) # 存放数据与数据处理层代码 |--- db_handler.py # 数据处理层代码 |--- user_data # 用户数据存储文件夹目录 |---- user_data.json # 用户数据存储json文件 |-- conf # 配置文件文件夹目录 |--- settings.py # 配置参数代码 |-- lib # 公共方法文件夹目录 |--- common.py # 公共方法代码 |-- log(日志文件层) # 存放日志文件夹目录 |--- User # 用户日志文件夹目录 |---- username.log # 某个用户的日志文件 |--- Admin # 管理员日志文件夹目录 |---- username.log # 某个用户的日志文件 |--- Shop # 购物日志文件夹目录 |---- username.log # 某个用户的日志文件

【二】项目结构树说明

【1】README.md

  • 存放项目的说明,包括但不限于,程序运行展示
  • 存放一些对程序的解释型介绍

【2】start.py(启动文件)

  • ATM和购物车项目的启动入口

【3】bin(启动文件目录)

  • 总项目的总功能整合

(1)__init__.py(包出口)

  • 作为 bin 包的出口文件

(2)main.py(统合主逻辑)

  • 作为用户视图层的整合代码入口

【4】core(用户视图层)

  • 存放用户视图层代码文件
  • 主要负责参数的读入
  • 输入层反馈的状态的信息的展示

(0)__init__.py(包出口)

  • 作为 core 包的出口文件

(1)user_src.py(用户功能视图代码)

  • 用户功能的视图代码
    • 负责用户数据的输入
    • 将用户数据传给接口层
    • 接口层反馈结果,将接口层返回的结果进行展示
  • 例如注册功能
    • 输入用户名和密码
    • 将用户名和密码传递给接口层
    • 接口层处理完成后反馈结果
      • 注册成功 返回 True
        • 打印登陆成功
      • 注册失败 返回 False
        • 打印登陆失败

(2)admin_src.py(管理员功能视图代码)

  • 管理员功能的视图代码
    • 负责管理员数据的输入
    • 将管理员数据传给接口层
    • 接口层反馈结果,将接口层返回的结果进行展示

(3)shop_src.py(购物功能视图代码)

  • 购物功能的视图代码
    • 负责购物数据的输入
    • 将购物数据传给接口层
    • 接口层反馈结果,将接口层返回的结果进行展示

【5】interface(逻辑接口层)

  • 存放核心业务逻辑代码

(0)__init__.py(包出口)

  • 作为interface 包的出口文件

(1)user_interface.py(用户核心逻辑接口)

  • 用户功能的逻辑代码
    • 负责对视图层传入的数据进行处理、清洗或加密
    • 负责调用数据处理层进行数据的保存和读取
    • 将用户视图传入的参数进行清洗处理后向视图层反馈结果
  • 例如注册功能
    • 接收到视图层传入的用户名和密码
    • 对原始密码进行加密
    • 构建好存储到数据库的数据格式
    • 调用数据处理层的函数进行数据的写入
    • 获取到数据处理层反馈的结果
      • 写入成功
        • 返回 True 返回 写入成功
      • 写入失败
        • 返回 False 返回 写入失败
    • 将数据处理层的结果处理后反馈给视图层二次处理

(2)admin_interface.py(管理员核心逻辑接口)

  • 管理员功能的逻辑代码

    • 负责对视图层传入的数据进行处理、清洗或加密

    • 负责调用数据处理层进行数据的保存和读取

    • 将用户视图传入的参数进行清洗处理后向视图层反馈结果

(3)bank_interface.py(银行核心逻辑接口)

  • 银行业务相关功能的逻辑代码

    • 负责对视图层传入的数据进行处理、清洗或加密

    • 负责调用数据处理层进行数据的保存和读取

    • 将视图传入的参数进行清洗处理后向视图层反馈结果

(4)shop_interface.py(购物核心逻辑接口)

  • 购物业务相关功能的逻辑代码

    • 负责对视图层传入的数据进行处理、清洗或加密

    • 负责调用数据处理层进行数据的保存和读取

    • 将视图传入的参数进行清洗处理后向视图层反馈结果

【6】db(数据处理层)

  • 存放数据与数据处理层代码

(0)__init__.py(包出口)

  • 作为 db 包的出口文件

(1)db_hander.py(数据处理层代码)

  • 用来处理有关数据的存储
  • 处理有关数据的读取和清理

(2)User(用户数据文件夹)

  • user_data.json : 存储所有用户的数据的json文件

(3)Product(商品数据文件夹)

  • shop_data.json : 存储所有商品信息的数据的json文件

【7】conf(配置文件夹)

  • 存放配置文件

(1)__init__.py(包出口)

  • 作为 conf 包的出口文件

(2)settings.py(配置文件)

  • 存放设置相关的代码
    • 比如根目录参数
    • 比如日志配置字典参数

【8】lib(公共方法文件)

(1)__init__.py(包出口)

  • 作为 lib 包的出口文件

(2)common.py

  • 存放所有函数或者部分函数公用的函数代码或逻辑

【9】log(存放日志文件)

  • 用来存放生成的log日志文件

(1)User

  • 存放普通用户的日志文件

(2)Admin

  • 存放管理员操作日志

(3)Shop

  • 存放购物相关日志

【三】搭建项目结构树

image-20231228141107129


__EOF__

本文作者Chimengmeng
本文链接https://www.cnblogs.com/dream-ze/p/17937378.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   Chimengmeng  阅读(34)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示