应用程序开发架构

基于Nebula开发的应用程序应该采用以下 架构原则,并规划对应目录

  • 经典的三层架构
    • Controller
    • BLL
    • DAL
  • 强类型的数据结构,并区分用途
    • Entity
    • DTO
  • WebSite项目再增加2个层
    • ViewModel
    • View

说明:

  • 由于采用微服务开发模式,每个服务不应该非常复杂,所以建议采用经典的三层架构



解决方案目录结构

xx



项目目录结构

xx xx

Data项目结构

  • 为了方便数据结构的共用,可以创建一个独立的 Data 类库项目
  • Data 项目中按应用名称创建不同的子目录,存放所需要数据结构
  • 再分别创建 DTO 和 Entites 二级子目录,存放DTO和实体类型

应用程序目录结构说明:

  • App_Data:存放配置文件
  • BLL: 业务逻辑层代码

  • Controllers: 控制器代码
  • Messages: 消息处理器代码
  • Workers: 一些后台任务

  • Customize: 针对框架的定制化代码
  • Monitor: 业务监控相关代码
  • Utils: 工具类

  • ViewModels: MVC的视图数据模型
  • Views: MVC的视图页面

补充说明

  • Controllers/Messages/Workers 它们都是【顶层】的执行主体,不应该相互调用。
  • DAL层没有单独的体现,因为许多重复性的代码由ClownFish封装代替了。