.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 ...
随机推荐
- 【codeforces 335A】Banana
[题目链接]:http://codeforces.com/contest/335/problem/A [题意] 让你构造一个长度为n的字符串; 每次你可以从这个字符串中任意取走字符; 让你求出取的次数 ...
- OO问题
设计一个在线的酒店预订系统,并且可以通过城市搜索出来 解决办法: Main Class: User Room Hotel Booking Adress Enums : 房间的状态和类型 public ...
- 9种常见的Android开发错误及解决方案
整理总结了9个Android开发中的错误以及解决方案,共同探讨进步! 1. 如果你的项目的R文件不见的话,可以试下改版本号在保存,R文件不见一般都是布局文本出错导致. 2. 布局文件不可以有大写字母 ...
- 足球大数据:致足球怀疑论者-The Counter(s)-Reformation反教条改革
足球大数据:致足球怀疑论者-The Counter(s)-Reformation反教条改革 注:本序列文章都是本人对<The Numbers Game>书(豆瓣链接http://book. ...
- 黑马程序猿-----Java之你不得不知道的排序
------<a href="http://www.itheima.com" target="blank">Java培训.Android培训.iOS ...
- 《Effective Modern C++》翻译--条款4:了解怎样查看推导出的类型
条款4:了解怎样查看推导出的类型 那些想要了解编译器怎样推导出的类型的人通常分为两个阵营. 第一种阵营是实用主义者.他们的动力通常来自于编敲代码过程中(比如他们还在调试解决中),他们利用编译器进行寻找 ...
- Oracle单实例情况下的library cache pin的问题模拟与问题分析
Oracle单实例情况下的library cache pin的问题模拟与问题分析 參考自: WAITEVENT: "library cache pin" Reference Not ...
- BAPC2014 K&&HUNNU11591:Key to Knowledge(中途相遇法)
题意: 有N个学生.有M题目 然后相应N行分别有一个二进制和一个整数 二进制代表该同学给出的每道题的答案.整数代表该同学的答案与标准答案相符的个数 要求推断标准答案有几个,假设标准答案仅仅有一种.则输 ...
- UITextField限制输入长度
首先,汉字的输入时的联想词在输入到TextFiled时,并不会走 - (BOOL)textField:(UITextField *)textField shouldChangeCharactersIn ...
- Mysql优化理论知识
参考文章 http://blog.51cto.com/lizhenliang/2095526 ()硬件优化 如果有条件一定要SSD固态硬盘代替SAS机械硬盘,将RAID级别调整为RAID1+,相对于R ...