• 对模拟博客园登陆的改进---软件的开发规范


    1. 为什么要规范开发:

      • 全写在一个py文件中,文件加载慢,代码可读性差,查询麻烦
      • 所以要将一个py文件分开,合理的分成多个py文件
    2. 程序配置:

      • 统一相同的变量.比如模拟博客园登陆中多次使用的文件路径.为了好修改这个文件路径,可以在文件的最上方写一个变量指向这个路径,代码中直接引用这个变量.修改时只需修改这个变量.
    3. 文件划分:

      1. setting.py

        配置文件,用于放置一些项目中需要的静态参数,比如文件路径,数据库配置,软件的默认设置等等.比如上面所说的文件路径.

      2. common.py

        公共组件文件,用于放置一些常用的公共组件函数,并不是核心逻辑的函数,而更像是服务于整个程序中的公用的插件,程序中需要即调用.比如装饰器,密码加密功能,序列化功能,日志功能等.

      3. src.py

        核心文件,主要存放的就是核心逻辑功能.

      4. start.py

        项目启动文件,目的是显眼,方便开启

      5. 类似register文件

        文件名不固定,存储数据的文件,类似于文本数据库,项目中有时会遇到将一些数据存储在文件中,与程序交互的情况,所以要单独设置在这样的文件.

      6. log文件

        存储log日志的文件

    4. 划分具体目录

      blog
      |__bin
      |  |__start.py
      |
      |__conf
      |  |__settings.py
      |
      |__core
      |  |__src.py
      |
      |__db
      |  |__register
      |
      |__lib
      |  |__commmon.py
      |
      |__log
      |  |__access.log
      |__README
      
    5. 按照项目目录结构,规范模拟博客园登陆

      1. 配置start.py

        import sys
        import os
        # print(os.path.dirname(__file__)) # 获取本文件所在文件夹即bin的绝对路径
        # print(os.path.dirname(os.path.dirname(__file__)))
        # 获取本文件所在文件夹bin所在的文件夹blog的绝对路径
        BATH_DIR = os.path.dirname(os.path.dirname(__file__))
        sys.path.append(BATH_DIR)
        
        from core.src import run
        if __name__ == '__main__':
            run()
        # 或
        # from core import src
        # if __name__ == '__main__':
            # src.run()
        
      2. 配置settings.py文件

        # 配置静态文件,不会轻易改变
        import os
        print(os.path.dirname(os.path.dirname(__file__)))
        # 获取当前文件所在的目录的上级目录,即blog
        print(os.path.join(os.path.dirname(os.path.dirname(__file__)), r'db
        egister'))
        
        file_name = os.path.join(os.path.dirname(os.path.dirname(__file__)), r'db
        egister') # 拼接出register的路径
        
      3. 配置common.py文件

        from core import src
        # 用src.status_dic来引用src中的status_dic
        # 在启动strat.py时,已经把blog的路径添加到sys.path中了,意味着,在整个项目中的任何py文件,都可以引用到blog项目目录下面的任何目录:bin,conf,core,db,lib,log这几个,所以此处可以直接引用src
        
      4. 配置src.py文件

        from conf import settings
        from lib import common
        # 用settings.file_name引用settings中的file_name
        # 用common.wrapper引用common中的装饰器
        
      5. README

        1. 软件定位,软件的基本功能
        2. 运行代码的方法: 安装环境,启动命令等
        3. 简要的使用说明
        4. 代码目录结构说明,更详细点可以说明软件的基本原理
        5. 常见问题说明
  • 相关阅读:
    Solr7.2.1环境搭建和配置ik中文分词器
    LayUI table表格控件 如何显示 对象中的属性(针对Mybatis的级联查询--一对一情况)
    ajax传数组到后台,后台springmvc接收数组参数
    springMVC访问根路径问题
    SpringMVC拦截器(资源和权限管理)
    jquery ajax post请求实例
    SpringMVC对日期类型的转换
    SpringMVC数据绑定四(自定义的类型转换器)
    SpringMVC数据绑定三(JSON 、XML))
    SpringMVC数据绑定二(List、Set和Map类型)
  • 原文地址:https://www.cnblogs.com/zyyhxbs/p/11104294.html
Copyright © 2020-2023  润新知