包及软件开发目录规范
包
包的概念
大白话:多个py文件的集合>>>:文件夹
专业:内部含有__init__.py文件的文件夹(python2必须要求,python3无所谓)
包的具体使用
虽然python3对包的要求降低了,不需要__init__.py也可以识别,但是为了兼容性考虑,最好还是加上__init__.py
1.如果只想用包中某几个模块,那么还是按照之前的导入方式即可
from aaa import my1 my2
2.直接导包名
import aaa
导入包名其实就是导包下面的__init__.py文件,该文件内有什么名字就可以通过包点什么名字
""" 如果单独import aaa(包名),只能导入aaa包的__init__.py文件,要是想一次性导入aaa包名下的a.py文件,提前在__init__.py中导入a.py文件"""
编程思想的转变
1.面条版阶段
所有的代码全部堆叠在一起(if elif elif elif else)
2.函数版阶段
根据功能的不同封装不同的函数(func_dict)
3.模块版阶段
根据功能的不同拆分成不同的Py文件
4.面对对象
"""
第一个阶段可以看成是直接将所有的数据放在c盘
视频 音频 文本 图片
第二个阶段可以看成是将c盘下的数据分类管理
视频文件夹 音频文件夹 文本文件夹 图片文件夹
第三个阶段可以看成事将C盘下的数据根据功能的不同划分到更合适的位置
系统文件夹 C盘
视频文件夹 D盘
图片文佳夹 E盘
>>>>>:目的为了资源的高效管理
"""
软件开发目录规范
良好的目录结构,有助于提高程序的可读性和可维护性。
1.文件及目录的名字可以变换,但是思想是不变的 分类管理
2.目录规范主要规定开发程序的过程中针对不同的文件功能需要做不同的分类
myproject项目文件夹
1.bin文件夹 主要存放项目启动文件
start.py 启动文件可以放在bin目录下,也可以直接在项目根目录
2.conf文件及 主要存放项目配置文件
settings.py 里面存放项目的默认配置 一般都是全大写
3.core文件夹 主要存放项目核心文件(业务逻辑相关代码)
src.py 里面存放项目核心功能
4.interface文件夹 主要存放项目接口文件
user.py 根据具体业务逻辑划分对应的文件
account.py
5.db文件夹 主要存放项目相关数据(与数据库交互)
userinfo.txt
db_handler.py 专门存放数据库操作相关的代码
6.log文件夹 主要存放项目日志文件
log.log
7.lib文件夹 主要存放项目公共功能(程序中常用的自定义模块)
common.py
8.readme文件 主要存放项目相关说明
9.requirements.txt文件 主要存放项目所需模块及版本
关于 READEM的内容
1.软件定位、软件的基本功能
2.运行代码的方法:安装环境、启动命令等
3.简要的使用说明
4.代码目录结构说明,更详细点可以说明软件的基本原理
5.常见问题说明
一般用setup.py来管理代码的打包、安装、部署问题。业内标准的写法是用python打包工具setuptools来管理这些,一个项目一定要有一个安装部署工具,能快速便捷的在一台新机器上将环境装好、代码部署好和将程序运行起来。requirements.txt文件是如何包含一个包依赖的说明,具体格式参照https://pip.readthedocs.io/en/1.1/requirements.html

浙公网安备 33010602011771号