软件的开发目录规范及三层架构
目录
软件的开发目录规范及三层架构
一 面向过程编程
1 什么是面向过程
面向过程的核心是”过程“二字,过程指的就是做事的步骤。即先干什么,再干什么、后干什么。。。
基于该思想写程序就好比设计一条条的流水线。
2 优点:
可以把复杂的问题流程化,进而简单化。
3 缺点:
牵一发而动全身,扩展性差。
二 软件的开发目录规范
软件的开发需要一个规整的目录,使程序结构清晰,便于程序的维护。
Soft # 项目根目录
├────bin # 程序的主入口
| └────start.py # 调用src主程序资源,导入环境变量
├────conf # 配此文件
| └────setting.py # 环境变量等配置文件
├────core # 程序核心逻辑
| └────src.py # 作为主程序,定义各种主功能于此处
├────db # 数据文件
| └────db.json # 用户的数据文件
├────lib # 库、模块、包存放处
| └────common.py # 通用的功能模块,包括装饰器等
├────log # 日志
| └────access.log # 程序运行日志文件
└────Readme # 开发文档
三 软件开发的三层架构
1 什么是软件开发的三层架构
程序设计的三层架构,就是将一个脚本程序,根据使用的功能,用模块的方法拆分为视图层、接口层、以及数据层等三个层次。
- 三层架构
- 视图层: 专门用于与用户交互;
- 展示功能给用户看、接收用户输入的数据、将功能返回的结果展示给用户看的;
- 接口层: 专门做业务逻辑的处理;
- 接收到用户输入的数据,进行逻辑判断,然后返回判断后的结果给视图层;
- 数据层: 专门做数据的处理
- 增加数据
- 删除数据
- 更新数据
- 查看数据
2 为什么要用三层架构
因为随着程序的需求越来越多,在一个文件里写程序,会越来越臃肿,不利于程序的维护与扩展,因此使用三层架构来设计程序,可以使软件层次清晰,易于维护。
此外,分层设计后,数据层和视图层在替换其他存储/展示方式的时候,也会更易于修改。
3 如何使用三层架构
3.1 程序三层架构图,以登录功能为例:

3.2 程序三层架构之数据处理层的写法:
# db_handler 数据处理层
import json
from conf import settings
import os
# 查
def select(username):
# 用户json文件路径
user_path = os.path.join(settings.BD_PATH, '%s.json' % username)
# 判断当前注册用户是否存在
if os.path.exist(user_path):
# 读取文件中的数据
with open(user_path, mode='rt', encoding = 'utf-8') as f:
user_dic = json.load(f)
return user_dic
# 改
def save(user_dic):
# 用户json文件路径
user_path = os.path.join(settings.DB_PATH, '%sjson' % user_dic['name'])
# 将数据写入文件
with open(user_path, mode='rt', encoding = 'utf-8') as f:
json.dump(user_dic, f)
f.flush()

浙公网安备 33010602011771号