Demo客户端相关规范 v1.0

375390-20190810004907885-1978193797.png

目录

更新日志

更新时间更新日志更新人员
2019/08/09完成v1.0版本文档CraigTaylor

开发环境

开发工具

组件名描述可选版本推荐版本
Visual Studio Community社区免费版For Visual Studio 2017For Visual Studio 2019
Visual Studio Professional专家收费版For Visual Studio 2017For Visual Studio 2019
Visual Studio Enterprise企业收费版For Visual Studio 2017For Visual Studio 2019
Visual Studio Preview预览免费版For Visual Studio CommunityFor Visual Studio Enterprise
Visual Studio Code推荐编辑器For Visual Studio Code InsiderFor Visual Studio Code Stable
Visual Studio Installer Projects打包扩展插件For Visual Studio 2017For Visual Studio 2019
.NET Core Runtime运行时依赖For .NET Core 3.0For .NET Core 2.2
.NET Core SDK集成包依赖For .NET Core 3.0For .NET Core 2.2
Runtime & Hosting Bundle可选(IIS用)For .NET Core 3.0For .NET Core 2.2

代码管理

项目代码

项目名称项目简介代码位置
Demo.Client标准版项目Github For Demo.Client

分支管理

分支名称分支简介备注
Develop起到了Master分支的作用,作为最终上线代码发起并入需要审核
CustomBranch私人分支,基于最新代码新建,修改后合并进入Develop

名称管理

分支名称建议采用"用户名-版本标记-发布模式-创建年月日"格式

例如:

  • Taylor-CN-Develop-20190701
  • Taylor-US-Develop-20190901

Tag名称建议采用"版本标记-发布模式-创建年月日-版本号"格式

例如:

  • CN-Release-20191001-v1.0.0.0
  • US-Release-20191001-v1.0.0.0

打包管理

存储路径

项目名测试版正式版
标准版\共享存储\Demo\Demo.Client\测试版\共享存储\Demo\Demo.Client\正式版

存储结构

测试包
文件名文件描述文件举例
发布模式-版本号-版本名称.zip解压即用的程序集(必须)Test-v1.0.0.0-标准版.zip
发布模式-版本号-版本名称-更新日志.docx指定版本的更新日志(建议)Test-v1.0.0.0-标准版-更新日志.docx
正式包
文件名文件描述文件举例
Demo-版本号.msi全新安装的安装包Demo1.0.0.0.msi
发布模式-版本号.zip升级更新的升级包Release-v1.0.0.0.zip

名称管理

压缩包名建议采用"发布模式-版本号-版本名称.zip"格式

例如:

  • Develop-v1.0.0.0-标准版.zip
  • Test-v1.0.0.0-标准版.zip
  • Preview-v1.0.0.0-标准版.zip
  • Release-v1.0.0.0-标准版.zip

更新日志建议采用"发布模式-版本号-版本名称-更新日志.docx"格式

例如:

  • Develop-v1.0.0.0-标准版-更新日志.docx
  • Test-v1.0.0.0-标准版-更新日志.docx
  • Preview-v1.0.0.0-标准版-更新日志.docx
  • Release-v1.0.0.0-标准版-更新日志.docx

依赖组件

内部组件

组件名描述推荐版本
Demo.Core内部代码框架1.0.0.0

外部组件

组件名描述推荐版本
Autofac自动注册框架4.8.1
AutoMapper自动映射框架8.0.0
MvvmLightMVVM绑定框架5.4.1.1
MvvmLightLibsMVVM绑定框架5.4.1.1
Newtonsoft.JsonJSON解析框架12.0.1
Google.ProtobufGoogle二进制协议3.7.0
log4net本地日志记录2.0.8
WPFLocalizeExtension多语言扩展3.3.1

解决方案结构

解决方案命名

标准版项目
Demo.Client

解决方案文件夹

描述标准版
基础层0.Demo.Client.Infrastructure
领域层1.Demo.Client.Domain
应用层2.Demo.Client.Application
测试集DemoTestProject
主要程序Demo
升级程序DemoAutoUpdater
打包项目Setup1

项目文件夹

0.Demo.Client.Infrastructure
项目名称项目描述
Demo.Client.DataBaseAccess操作本地数据库
Demo.Client.DataContract接口涉及的数据模型
Demo.Client.Domain.Query领域查询
Demo.Client.Infrastructure.IQuery基础框架之接口定义
Demo.Client.Infrastructure.Utility基础框架之全局帮助类
1.Demo.Client.Domain
项目名称项目描述
Demo.Client.DomainModel领域模型
2.Demo.Client.Application
项目名称项目描述
Demo.Client.Application.Imp接口实现层 - 应用服务(包括第三方)
Demo.Client.IApplication接口定义层 - 应用服务
Demo.Client.IRemotingService接口定义层 - 第三方
DemoTestProject
项目名称项目描述
Infrastructure.ConsoleTestN/A

命名规范

文件目录

目录描述
\Demo\Views\存放界面
\Demo\Views\UserControls\存放自定义控件
\Demo\ViewModels\存放绑定
\Demo\TemplateSettings\存放打印模板
\Demo\Styles\存放样式文件
\Demo\Models\存放主程序用的模型
\Demo\Languages\存放多语言字典
\Demo\Converter\存放界面转换器
\Demo\Controls\存放基础控件
\Demo\Common\存放主程序非业务帮助类
\Demo\BusinessCommon\存放主程序业务帮助类
\Demo\ClientEnum\存放主程序枚举
\Demo\Update\存放主程序升级检查

文件命名

文件描述举例
业务名称.cs领域模型(数据库用)LearnCore.cs
业务名称Item.cs领域模型(列表子项)LearnCoreItem.cs
业务名称Dto.cs数据模型(接口服务用)LearnCoreDto.cs
业务名称DtoFor分组名称.cs数据模型(分组拆分)LearnCoreDtoForPrice.cs
业务名称ItemDto.cs数据模型(列表子项)LearnCoreItemDto.cs
业务名称ViewDto.cs绑定模型(界面绑定)LearnCoreViewDto.cs
业务名称ViewDtoFor分组名称.cs绑定模型(分组拆分)LearnCoreViewDtoForPrice.cs
业务名称Page.xaml界面定义MainPage.xaml
业务名称Control.xaml控件定义MainControl.xaml
业务名称ViewModel.cs绑定定义(数据绑定)MainViewModel.cs
业务名称ViewModelFor分组名称.cs绑定定义(分组拆分)MainViewModelForLearnCore.cs

代码命名

业务描述举例
I 业务名 RemotingService接口定义 - 学习API服务ILearnCoreRemotingService
业务名 RemotingService接口实现 - 学习API服务LearnCoreRemotingService
I 业务名 Service接口定义 - 学习服务ILearnCoreService
业务名 Service接口实现 - 学习服务LearnCoreService
I 数据表名 QueryService接口定义 - 学习查询数据ILearnCoreQueryService
数据表名 QueryService接口实现 - 学习查询数据LearnCoreQueryService

辅助调试

附加自动策略

添加位置
\App_Data\LocalConfigs\PublishMode.json
配置说明
PublishMode
描述发布模式
枚举名含义数值
Release正式上线-正式环境1
Preview发布预览-正式环境2
Test测试使用-测试环境3
Develop开发自用-测试环境4
AutomaticType
描述自动操作
枚举名含义数值
AutoLogin自动登录1
MainFullScreen主界面全屏2
ViceSizeScreen自定义副屏尺寸3
配置举例
{
     
    "PublishMode": 4,
    "PublishName": "开发自用-测试环境",
    "AutomaticConfigs":[
        {
            "AutomaticType": 1,
            "AutomaticName": "自动登录,XXX家的账号",
            "AutomaticValues":[ "username","@userSuffix","password"]
        },
        {
            "AutomaticType": 2,
            "AutomaticName": "主界面全屏",
            "AutomaticValues":[ false ]
        },
        {
            "AutomaticType": 3,
            "AutomaticName": "缩小副屏",
            "AutomaticValues":[ 1024,600]
        }
    ]
}
{
     
    "PublishMode": 3,
    "PublishName": "测试使用-测试环境",
    "AutomaticConfigs":[
        {
            "AutomaticType": 1,
            "AutomaticName": "自动登录,XXX家的账号",
            "AutomaticValues":[ "username","@userSuffix","password"]
        },
        {
            "AutomaticType": 2,
            "AutomaticName": "主界面全屏",
            "AutomaticValues":[ false ]
        },
        {
            "AutomaticType": 3,
            "AutomaticName": "缩小副屏",
            "AutomaticValues":[ 1024,600]
        }
    ]
}

公共资源

.Net Core

转载于:https://www.cnblogs.com/craigtaylor/p/11329654.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值