zoukankan      html  css  js  c++  java
  • 3.29作业

    软件开发的目录规范

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

    假设你的软件名为foo,目录结构如下

    Foo/
    |-- core/
    |   |-- core.py
    |
    |-- api/
    |   |-- api.py
    |
    |-- db/
    |   |-- db_handle.py
    |
    |-- lib/
    |   |-- common.py
    |
    |-- conf/
    |   |-- settings.py
    |
    |-- run.py
    |-- setup.py
    |-- requirements.txt
    |-- README
    

    具体内容:

    • core/: 存放核心业务逻辑代码

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

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

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

    • conf/: 存放配置文件,如路径等

    • run.py: 程序的启动文件,一般放在项目的根目录下,因为在运行时会默认将运行文件所在的文件夹作为sys.path的第一个路径,这样就省去了处理环境变量的步骤

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

    • requirements.txt: 存放软件依赖的外部Python包列表。

    • README: 项目说明文件。

    README的目的是能简要描述该项目的信息,让读者快速了解这个项目。

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

    关于setup.py和requirements.txt:

    一般来说,用setup.py来管理代码的打包、安装、部署问题。业界标准的写法是用Python流行的打包工具setuptools来管理这些事情,这种方式普遍应用于开源项目中。不过这里的核心思想不是用标准化的工具来解决这些问题,而是说,一个项目一定要有一个安装部署工具,能快速便捷的在一台新机器上将环境装好、代码部署好和将程序运行起来。

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

    这个文件的格式是每一行包含一个包依赖的说明,通常是flask>=0.10这种格式,要求是这个格式能被pip识别,这样就可以简单的通过 pip install -r requirements.txt来把所有Python依赖库都装好

  • 相关阅读:
    水池问题的lua语言算法(面试题分析:我的Twitter技术面试失败了)
    grep
    hdu 4455 Substrings(计数)
    Concurrency Programming Guide 并发设计指引(二)
    ASP.NET 预编译命令(解决发布后第一次访问慢问题)
    将浏览页面变为可编辑状态
    windows系统上利用putty通过SSH连接亚马逊AWS服务器
    SQL Server2008 R2 数据库镜像实施手册(双机)SQL Server2014同样适用
    非域环境下使用证书部署数据库(SqlServer2008R2)镜像
    遇到问题---hosts不起作用问题的解决方法
  • 原文地址:https://www.cnblogs.com/haliluyafeng/p/12593208.html
Copyright © 2011-2022 走看看