⼤型项目的代码布局

⼤型项目的代码布局

概览

proj/
├── proj/
│ ├── settings.py # 只存放 Django ⾃身的配置
│ ├── other_config.py # 其他配置
│ ├── urls.py
│ └── wsgi.py
├── common/ # 不与具体模块关联的独⽴的东⻄写到这⾥
│ ├── errors.py
│ ├── keys.py
│ └── middleware.py
├── admin # ⼯作中的 admin 本身就是⼀个独⽴模块
├── app1/
│ ├── migrations/
│ ├── apps.py
│ ├── helper.py (logic.py) # 逻辑写到这⾥
│ ├── models.py
│ └── views.py (api.py)
├── app2/
│ ├── migrations/
│ ├── apps.py
│ ├── helper.py
│ ├── models.py
│ └── views.py (api.py)
├── scripts/ # 项⽬维护的脚本
│ ├── xxx.py
│ └── yyy.sh
├── libs/ # 底层模块写到这⾥
│ ├── cache.py
│ ├── http.py
│ ├── orm.py
│ └── sms.py
├── worker/ # 异步任务,或耗时任务,或定时任务
│ ├── __init__.py
│ └── config.py
└── manage.py

布局详解

通⽤的算法、功能放到 common ⽬录
底层的功能放到 lib ⽬录
独⽴脚本的放到 scripts ⽬录
配置⽂件放到项⽬⽬录 或 config ⽬录
views.py 及 view_func()

  • MVC 模式的 V 只负责试图处理, 逻辑属于 Controller 层
  • view_func 本身不适合写逻辑, view 是特殊函数, 只负责视图处理。
  • 添加 helper.py ⽂件, ⽤来放置每个 app 的逻辑函数
  • 函数构建应保持功能单⼀, ⼀个函数只做⼀件事情, 并把它做好, 避免构建复杂函数
  • 复杂功能通过不同函数组合完成
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值