Python教程

Python系列 38 目录规范

本文主要是介绍Python系列 38 目录规范,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

目录规范

为了提高程序的可读性与可维护性,我们应该为软件设计良好的目录结构,这与规范的编码风格同等重要。

软件的目录规范并无硬性标准,只要清晰可读即可。

但是有一些规范还是十分合理的,我们应当予以遵守:

  1. 目录层次不超过5层
  2. 目录尽量以复数形式命名,如imgs而不是img
  3. 目录命名尽量清晰易懂

目录说明

bin

目录级别:一级目录

目录作用:通常用于存放项目启动脚本

其他命名:暂无

注意事项:如果拥有此目录,则启动脚本需要考虑模块导入路径的问题

core

目录级别:一级目录

目录作用:存放主程序、业务逻辑源代码

其他命名:src

注意事项:可根据不同的子业务继续划分二级目录

api

目录级别:一级目录

目录作用:通常用于存放项目接口文件,使得项目能够在启动后和外部通信

其他命名:interface

注意事项:可根据不同的子业务需要继续划分二级目录

db

目录级别:一级目录

目录作用:存放操作数据库相关文件,主要用于与数据库交互

其他命名:暂无

注意事项:暂无

lib

目录级别:一级目录

目录作用:存放程序中常用的自定义模块

其他命名:暂无

注意事项:暂无

conf

目录级别:一级目录

目录作用:存放项目所需要的配置文件

其他命名:config

注意事项:暂无

logs

目录级别:一级目录

目录作用:存放项目运行时所产生的日志文件

其他命名:暂无

注意事项:暂无

docs

目录级别:一级目录

目录作用:存放项目的详细说明文档

其他命名:暂无

注意事项:暂无

plugins

目录级别:一级目录

目录作用:存放项目中所需要的第三方插件

其他命名:utils、tools、helpers

注意事项:暂无

common

目录级别:一级目录

目录作用:存放项目中大部分需求都能使用到的功能,相当于公共插件

其他命名:暂无

注意事项:暂无

test

目录级别:一级目录

目录作用:存放项目测试代码

其他命名:暂无

注意事项:暂无

static

目录级别:一级目录

目录作用:存放项目中所需要的静态文件

其他命名:暂无

注意事项:暂无

views

目录级别:一级目录

目录作用:存放项目中所需要的模板文件,MVC模型中的视图

其他命名:templates

注意事项:暂无

controller

目录级别:一级目录

目录作用:存放项目中的主流算法,MVC模型中的控制

其他命名:暂无

注意事项:暂无

models

目录级别:一级目录

目录作用:存放项目中与数据库打交道的脚本,MVC模型中的模型

其他命名:暂无

注意事项:暂无

文件说明

run.py

文件位置:项目根目录下,或者bin目录下

文件作用:项目的启动脚本

其他命名:start.py

注意事项:如果启动脚本是在bin目录下,则需要考虑sys.path

setup.py

文件位置:项目根目录下

文件作用:安装、部署、打包的脚本,一键安装所需要的所有依赖环境

其他命名:暂无

注意事项:暂无

一般来说,用setup.py来管理代码的打包、安装、部署问题。业界标准的写法是用Python流行的打包工具setuptools来管理这些事情,这种方式普遍应用于开源项目中。

不过这里的核心思想不是用标准化的工具来解决这些问题,而是说,一个项目一定要有一个安装部署工具,能快速便捷的在一台新机器上将环境装好、代码部署好和将程序运行起来。

settings.py

文件位置:conf文件夹下

文件作用:项目配置文件

其他命名:有的是py脚本,后缀就是.py,而有的是.ini 、.conf、.yaml等

注意事项:暂无

requirements.txt

文件位置:项目根目录下

文件作用:存放所有项目第三方依赖库、模块的名字及版本

其他命名:暂无

注意事项:这个一般都是用第三方模块生成的

requirements.txt文件的存在是为了方便开发者维护软件的依赖库。我们需要将开发过程中依赖库的信息添加进该文件中,避免在 setup.py安装依赖时漏掉软件包,同时也方便了使用者明确项目引用了哪些Python包。

README.md

文件位置:项目根目录下

文件作用:项目整体描述信息,设计思路,设计目标等

其他命名:暂无

注意事项:暂无

关于README.me的内容,这个应该是每个项目都应该有的一个文件,目的是能简要描述该项目的信息,让读者快速了解这个项目。它需要说明以下几个事项:

  • 软件定位,软件的基本功能;
  • 运行代码的方法: 安装环境、启动命令等;
  • 简要的使用说明;
  • 代码目录结构说明,更详细点可以说明软件的基本原理;
  • 常见问题说明。

其他文件

CHANGELOG.md :描述项目每个版本的更新信息,说明版本号、更新内容、修复了哪些问题等

humans.txt :保存网站信息和网站建设者信息 ,格式规范参考官网http://humanstxt.org/

LICENSE.txt:项目基于的许可协议

robots.txt:规定爬虫程序能够获取本网站的那些信息

这篇关于Python系列 38 目录规范的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!