基于三层架构的员工管理系统

前段时间在网上看了些三层架构的资料,按照自己的理解写了个粗糙的例子,提供给和我一样的初学者学习,不足的地方希望各路大侠指出。

Demo下载:https://github.com/wwb9523/Staffing-System-three-tier-architecture-.git

另推荐两篇关于业务逻辑层的博客
http://www.cnblogs.com/leoo2sk/archive/2009/10/29/1592568.html
http://www.cnblogs.com/leoo2sk/archive/2009/10/31/1593740.html

三层架构的概念

以下转自> http://blog.163.com/zjf_ha/blog/static/16179109320103751152782/

一. 面向对象C#.

在软件开发中,需要引入抽象的模型,使复杂的现实世界更易管理,我们把现实世界中的各种事物看作对象。每一个对象具体到C#中,就是C#中的类。比如说,学生是一个对象,我们在C#中对其进行操作时,实际上就是对Student类进行操作。学生有学号,姓名,性别,出生日期等信息,在Student类中就包含了ID,Name,Sex,Birthday等属性。这些属性在数据类型上是有限制的。比如说,Birthday属性必须是一定是时间格式才有意义,我们要通过这个类对数据进行验证。中学生、大学生也是学生,他们同属于学生类,但是他们各自又有各自的特点。他们与学生类是继承与被继承关系。类包含了常量,字段,方法,属性,事件,索引器,运算符,构造函数和析构函数等8中成员。类与类之间又有各种各样的关系。

对象、实体与类的关系图如下图
基于三层架构的员工管理系统_第1张图片示:

二.C#开发中的三层架构

1.架构关系图

基于三层架构的员工管理系统_第2张图片

2.各层之间的关系

用户层只能调用业务层,业务层只能调用数据层对数据库进行操作。公用函数供各层调用。

3.分层的好处

a.对于复杂的系统,分层让结构清晰,便于开发人员对系统进行整体的理解、把握。

b.便于维护。系统基本的架构可以通过工具自动生成代码。当数据库发生改变时,只用重新生成代码,改动业务层中的比分代码即可。

c.无论是作WinForm还是ASP.NET的开发,系统的基本架构能够通用。

d.开发人员可以节省更多的时间去注重业务的实现,而不必过多考虑数据库的连接等其它问题。

你可能感兴趣的:(C#,WinForm,三层架构,C#-winform)