软件开发目录规范

1. 为什么要有好的目录结构

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

性和风格是不被鼓励的。如果你去维护一个非常不好读的项目,虽然实现逻辑并不复杂,但是对后续的维护者来说

就是灾难。

[优点]

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

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

2. 目录组织的方式

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

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

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

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的内容,这个应该是每个项目都应该有的一个文件,目的是能简要描述该项目的信息,让读者快速

了解这个项目。它需要说明以下几个事项:

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

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

3、简要的使用说明;

4、代码目录结构说明,更详细点可以说明软件的基本原理;

5、常见问题说明。
posted @ 2020-12-14 20:51  Mn猿  阅读(194)  评论(0编辑  收藏  举报