Python 入门之 软件开发规范
Python 入门之 软件开发规范
1、软件开发规范 -- 分文件
(1)为什么使用软件开发规范:
当几百行--大几万行代码存在于一个py文件中时存在的问题:
不便于管理 修改
可读性差
加载速度慢
这时可以使用软件开发规范,规范项目目录结构,规范代码,遵循PEP8规范,能够更加清晰,合理的开发。
(2)软件开发规范 -- 约定俗称
<1> bin -- 启动文件 (启动接口)
start.py 项目启动
<2> lib -- 公共文件 (大家需要的功能)
commom.py 放置一些常用的公共组件函数,像是服务于整个程序中的公用的插件。(加密,序列化,日志等功能)
<3> conf -- 配置文件 (静态文件)变量
settings.py 放置一些项目中需要的静态参数,比如文件路径,数据库配置,软件的默认设置等。
<4> core -- 主逻辑 (核心)
src.py 主要存放的是核心功能函数
<5> db -- 用户相关数据 (账号和密码等文件)
register.py 用户的相关数据
<6> log -- 日志 (记录主要信息,记录开发人员的行为)
access.log 存储日志文件
<7> README文件 简要描述该项目的信息
文件中要说明几个注意事项:
软件的定位,软件的基本功能。
运行代码的方法,安装环境,启动命令等
简要的使用说明
代码目录结构说明,更详细点可以说明软件的基本原理
常见问题说明
软件开发规范:
"""
blog
├─ bin
│ └─ starts.py 启动文件
├─ conf
│ └─ settings.py 配置文件
├─ core
│ └─ src.py 逻辑文件
├─ db
│ └─ register 数据文件
├─ lib
│ └─ common.py 公共文件
└─ log
│ └─ logg.log 日志文件
├─ README.md 使用手册
"""
Python 入门之 软件开发规范的更多相关文章
- Python进阶(十)----软件开发规范, time模块, datatime模块,random模块,collection模块(python额外数据类型)
Python进阶(十)----软件开发规范, time模块, datatime模块,random模块,collection模块(python额外数据类型) 一丶软件开发规范 六个目录: #### 对某 ...
- Python入门之软件开发目录规范
本章重点: 理解在开发人标准软件时,如何布局项目目录结构,以及注意开发规范的重要性. 一.为什么要有好的目录结构 二.目录组织的方式 三.关于README的内容 四.关于requirements.tx ...
- Python模块的导入以及软件开发规范
Python文件的两种用途 1 . 当脚本直接使用,直接当脚本运行调用即可 def func(): print("from func1") func() 2 . 当做模块被导入使用 ...
- python 全栈开发,Day29(昨日作业讲解,模块搜索路径,编译python文件,包以及包的import和from,软件开发规范)
一.昨日作业讲解 先来回顾一下昨日的内容 1.os模块 和操作系统交互 工作目录 文件夹 文件 操作系统命令 路径相关的 2.模块 最本质的区别 import会创建一个专属于模块的名字, 所有导入模块 ...
- Python 3 软件开发规范
Python 3 软件开发规范 参考链接 http://www.cnblogs.com/linhaifeng/articles/6379069.html#_label14 对每个目录,文件介绍. #= ...
- python(37)- 软件开发规范
软件开发规范 一.为什么要设计好目录结构? 1.可读性高: 不熟悉这个项目的代码的人,一眼就能看懂目录结构,知道程序启动脚本是哪个,测试目录在哪儿,配置文件在哪儿等等.从而非常快速的了解这个项目. 2 ...
- python软件开发规范&分文件对于后期代码的高效管理
根据本人的学习,按照理解整理和补充了python模块的相关知识,希望对于一些需要了解的python爱好者有帮助! 一.软件开发规范--分文件 当代码存在一个py文件中时: 1.不便于管理 (修改,增加 ...
- python中软件开发规范,模块,序列化随笔
1.软件开发规范 首先: 当代码都存放在一个py文件中时会导致 1.不便于管理,修改,增加 2.可读性差 3.加载速度慢 划分文件1.启动文件(启动接口)--starts文件放bin文件里2.公共文件 ...
- python27期day16:序列化、json、pickle、hashlib、collections、软件开发规范、作业。
序列化模块:什么是序列化呢? 序列化的本质就是将一种数据结构(如字典.列表)等转换成一个特殊的序列(字符串或者bytes)的过程就叫做序列化.将这个字典直接写入文件是不可以的,必须转化成字符串的形式, ...
随机推荐
- sql in条件 超过1000字符的处理方法
private string getOracleSQLIn(string[] ids, string field) { int count = Math.Min(ids.Length, 1000); ...
- Java基础__Java中常用数学类Math那些事
测试 package Cynical_Gary; public class Cynical_Text { public static void main(String[] args){ System ...
- 第七周课程总结&实验报告五
实验四 类的继承 实验目的 理解抽象类与接口的使用: 了解包的作用,掌握包的设计方法. 实验要求 掌握使用抽象类的方法. 掌握使用系统接口的技术和创建自定义接口的方法. 了解 Java 系统包的结构. ...
- linux下快速查找文件(转载)
权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/xxmonstor/article/deta ...
- Eclipse Setting
下载 https://www.eclipse.org/downloads/packages/ 自动保存代码 编码设置 代码自动提示 .abcdefghijklmnopqrstuvwxyz 字体大小设置 ...
- configprase模块,配置文件模块
import configparser # config = configparser.ConfigParser() # config["DEFAULT"] = {'Port':3 ...
- 评【TED】陆克文:中美注定要冲突吗?
陆克文TED演讲地址:https://www.bilibili.com/video/av2196100?from=search&seid=6953438337852168205 实话说,这篇材 ...
- 七、创建UcRESTTemplate请求管理器
一.创建UcRESTTemplate管理器封装 import com.alibaba.fastjson.JSON; import org.apache.http.client.config.Reque ...
- pandas中根据列的值选取多行数据
# 选取等于某些值的行记录 用 == df.loc[df['column_name'] == some_value] # 选取某列是否是某一类型的数值 用 isin df.loc[df['column ...
- redhat下配置SEED DVS6446开发环境1
Linux NFS服务详解 1.什么是NFS(Network FileSystem) NFS 就是 Network FileSystem 的缩写,最早之前是由 Sun 所发展出来的.他最大的 功 ...