百天Go D1:Go项目组织结构浅谈
2018-10-18 本文已影响208人
副班长国伟
项目组织结构,把逻辑顺序理顺了,写代码的逻辑顺序也理顺了,知道什么地方做什么。
对项目结构进行良好的组织,一方面便于理清逻辑顺序,一方面是便于项目的可扩展性、低耦合性、高内聚性。
一、网络爬虫项目

二、beego项目
整体设计架构分为八大独立的模块构成,高度解耦。


这些独立的模块最后反应在项目组织上,就是一个个相互独立的文件夹,各个文件夹下完成相应的任务。
所以,我们需要根据特定的任务场景,打造属于我们自己的项目框架(项目组织结构)。
三、Restful API 项目

ui
对于一个Restful API 项目,UI层是HTTP和用户解析数据的那些内容。
app
应用层,主要处理一些跟UI相关的比较细节的业务逻辑。
domain
领域层,主要处理一些中间层的业务逻辑内容。
infra
基础层,为其他层提供服务,比如字符串操作、比如排序操作、比如数据清洗操作等。
scheduler
调度层,UI层 API 和 APP实体存在一些调度关系,都基于scheduler层进行操作。
main
主函数入口,启动 restful api 服务等。