软件开发目录规范

1. 为何要有好的目录结构

好的设计项目目录结构,就和编码风格同样,是每一个程序员都有的风格,可是在流水化标准化做业过程当中,个python

性和风格是不被鼓励的。若是你去维护一个很是很差读的项目,虽然实现逻辑并不复杂,可是对后续的维护者来讲程序员

就是灾难。数据库

[优势]api

1. 可读性高
后续维护人员能够一眼看懂目录结构,没必要为复杂混乱的层次耗费大量精力。测试文件在哪,配置文
件在哪会被放置在规范操做的地方,可让后续人员快速的了解这个项目。

2. 可维护性高
看清目录架构以后,维护者能够将后续新增的文件和代码按照规范放置在规定的地方,虽而后续代码
和文件增多,可是项目目录并不会混乱,仍然可以快速组织良好
因此说,保持一个层次清晰的目录结构是很是必要的,也是体现一个程序员思路和视野格局的一个标准

2. 目录组织的方式

目前各个开发语言在工程目录结构方面,已经取得了一些共识的目录结构.架构

例如,以下的一个简单的ATM目录结构,开发人员能够快速的了解项目的启动入口,用户层模块,逻辑接口层模测试

块,数据处理模块,日志模块等等。ui

ATM/
|-- bin/
|   |-- start.py
|
|-- core/
|   |-- src.py
|
|-- conf/
|   |-- settings.py
|
|-- lib/
|   |-- common.py
|
|-- api/
|   |-- api.py
|
|-- db/
|   |-- db_handle.py
|
|-- run.py
|-- setup.py
|-- requirements.txt
|-- README
  • ATM:项目目录编码

  • bin/:存放启动文件,通常也能够放在项目的根目录下设计

  • core/:存放业务逻辑相关代码日志

  • conf/:存放配置文件

  • lib/:存放程序中经常使用的自定义模块

  • api/:存放接口文件,接口主要用于为业务逻辑提供数据操做

  • db/:存放操做数据库相关文件,主要用于与数据库交互

  • run.py:程序的启动文件,通常放在项目的根目录下,由于在运行时会默认将运行文件所在的文件夹做为

    sys.path的第一个路径,这样就省去了处理环境变量的步骤,也能够放在bin下,二者选其一

  • setup.py:安装、部署、打包的脚本

  • requirements.txt:存放软件依赖的第三方模块

  • README: 项目说明文件

关于README的内容,这个应该是每一个项目都应该有的一个文件,目的是能简要描述该项目的信息,让读者快速

了解这个项目。它须要说明如下几个事项:

一、软件定位,软件的基本功能;

二、运行代码的方法: 安装环境、启动命令等;

三、简要的使用说明;

四、代码目录结构说明,更详细点能够说明软件的基本原理;

五、常见问题说明。
相关文章
相关标签/搜索