.net 项目分层及规范
1、解决方案命名:公司简称+产品名称。如ABCSOft.BBS
2、解决方案文件夹:以数字排序例如:01.Web表示页面层;02.IBusinessLogic表示业务逻辑接口;03.BussinessLogic 业务逻辑实现;04.IDataAccess 数据访问接口;05.DataAccess 数据访问实现;06.DataEntity 数据实体(可以包含ORM可持久化对象)
3、项目命名:
<a>UI逻辑层:ABCSOft.BBS.UILogicInterface接口层、ABCSOft.BBS.UILogic实现层
<b>服务层:ABCSOft.BBS.DataContracts数据契约、ABCSOft.BBS.ServiceContracts服务契约、ABCSOft.BBS.Hosting宿主层、ABCSOft.BBS.Services服务实现
<c>业务层:ABCSOft.BBS.BusinessLogic.Member
5、文件命名:
<a>UILogic层:
例如:MemberList.cs
<b>服务层:接口=I+模块名+功能名+Service、实现=模块名+功能名+Service
例如:MemberInfoService
<c>业务逻辑层:
例如:查询接口:ISearchInfo、增加、修改、删除接口:IBasicInfo
6、变量命名:
<a>全局变量,建议使用首字母大写。如,public string Name;帕斯卡命名
<b>局部变量,即方法内部变量,建议首字母小写,后面的单词首字母大写。有特殊用途的,可以前缀释义。骆驼命名
如,用于返回结果的变量可命名为rList,r为前缀,Return的首字母;用于方法参数的变量,可以声明以p开头的pName。
<c>接收的类型后缀,如果是声明list集合,则以类型后缀。规则为:前缀+业务+类型
如,var rNameList=new List<String>();
7、属性命名:Camel命名法
例如:
public String Name
{
get;set;
}
8、方法命名:Camel命名法;查询列表以Query或者Get开头,以List或者Detail结束;增加、修改、删除等方法以业务名开头,以Add、Update或Save等操作结束;
例如:
public void GetUserList()
{
...
}
public void GetUserList()
{
...
}
public void UserUpdate()
{
...
}
10、控件ID命名:规则(页面文件名+业务名+控件类型)
例如:MemberList-Name-TextBox
项目分层结构 可以参考
http://www.cnblogs.com/derryliang/articles/2997706.html
.net 项目分层及规范的更多相关文章
- Asp.Net Core 项目实战之权限管理系统(4) 依赖注入、仓储、服务的多项目分层实现
0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...
- iOS项目的命名规范
一.关于本文档1.本文档的书写目的 <iOS项目的命名规范>的书写目的,在于让后续参加到该项目的iOS开发人员通过阅读该文档,了解在当前iOS项目的代码中的命名要求并严格按照本文档执 ...
- SSH框架项目开发命名规范
SSH 框架项目开发命名规范 一.各层包及类命名规范 总体原则:包名所有字母小写,类名采用 "驼峰标识",具体如下: 1. Action 类 包命名规范:co ...
- 接口测试(二) 优化项目分层及cookies值带入
整个项目分层如图 然后上代码 #data_test.py from openpyxl import load_workbook import json import os class Date_tes ...
- 小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_2-4.后端项目分层分包及资源文件处理
笔记 4.后端项目分层分包及资源文件处理 简介:项目基本目录结构,包名称建立,配置文件建立 1.基本目录结构 controller se ...
- RobotFrameWork接口项目分层及通用控制方式
1. 前言 上一篇文章介绍了在设计接口用例之前应遵守的设计规范,详见<RobotFramework接口设计规范>,当然读者公司的内部规范也不一定非得完全遵循笔者所提到的,适合自己公司内部的 ...
- 【Java框架型项目从入门到装逼】第十二节 项目分层
这一节我们开始对项目进行分层,一般来说,一个web项目的层次结构如下图所示: controller层为我们的控制层,用来接收用户的请求,比如新增一个学生的信息,新增的请求最先就是走到这一层.contr ...
- Spring Boot学习笔记:项目开发中规范总结
Spring Boot在企业开发中使用的很广泛,不同的企业有不同的开发规范和标准.但是有些标准都是一致的. 项目包结构 以下是一个项目常见的包结构 以上是一个项目的基本目录结构,不同的项目结构会有差异 ...
- 用MVC5+EF6+WebApi 做一个小功能(四) 项目分层功能以及文件夹命名
在上一节,我们完成了一个项目搭建,我们看到的是一个项目的分层架子,那接下来每一层做什么以及需要引用哪些内容呢?在本节内容我们还逐步拆分每一层的功能,顺带添加package包 Trump.Domain ...
随机推荐
- ip iproute2的典型应用
net-tools和iproute2的命令做对比,做到简单明了,分别演示如何去获取.配置和操作系统网络信息. 以下是net-tools和iproute2的大致对比: 4.1 ip link set-- ...
- POJ 2175 Evacuation Plan
Evacuation Plan Time Limit: 1000ms Memory Limit: 65536KB This problem will be judged on PKU. Origina ...
- 我是怎么利用微信做兼职月入1W的
物价上涨.导致非常多人都感觉如今的收入入不敷出,有的是迫于生活压力.有的是为了提高生活质量,等等都想好好利用业余时间来做点兼职,当然我也不例外.正好笔者在微信刚推出一段时间的时候利用微信来做点兼职赚点 ...
- When you are old (当你老了)
- William Butler Yeats --威廉·巴特勒·叶芝 When you are old and grey and full of sleep: 当你老了,头发花白,睡意沉沉. And ...
- 手动配置三大框架整合:Spring+Struts2+mybatis
如今主流的项目框架中,数据库持久层有可能不是hibernate,而是mybatis或者ibatis,事实上它们都是一样的,以下我来把环境搭建一下: [导入相关jar包]新建web项目projectms ...
- QT跟VC++结合来进行插件的验证机制(遍历vtable,保证虚函数的个数一致,也可使用Q_INVOKABLE宏定义)
由于最近公司要开发一个以C++插件机制为主的,主要有一个问题就是C++的二进制兼容性的问题.一旦类使用虚函数,只要随便改动下增删查改下头文件的虚函数,就会导致程序在跑的时候进行乱跳,因为这个时候exe ...
- Java JNI 入门篇——传递数组与修改数组
这里不在重复JavaJNI 的开发过程了,不熟悉的同学请参考:Java JNI HelloWorld 直接上主要代码: ArrayJNI.Java package com.example.jni; p ...
- nyoj--218--Dinner(语法)
Dinner 时间限制:100 ms | 内存限制:65535 KB 难度:1 描述 Little A is one member of ACM team. He had just won the ...
- 1.CMD命令
CMD命令:开始->运行->键入cmd或command(在命令行里可以看到系统版本.文件系统版本)1. appwiz.cpl:程序和功能 2. calc:启动计算器 3. certmgr. ...
- linux中不同颜色的文件代表什么不同的类型
linux 文件颜色的含义,蓝色代表目录,绿色代表可执行文件,红色表示压缩文件,浅蓝色表示链接文件,灰色表示其他文件,红色闪烁表示链接的文件有问题了,黄色表示设备文件.蓝色文件----------目. ...