`

浅谈实体类设计

 
阅读更多

百度百科说:实体类表示系统中的信息存储,它们一般用于表示系统所管理的核心概念。实体对象经常是被动和永久性的。它们的主要职责是存储和管理系统中的信息。

从概念我们可以看出,实体是比较稳定的。由于实体对象的相对稳定性,我们可以利用各种实体类生成器来生它。

所以,我在最开始学习它的时候,我给它的定义是,灵活性小,没有太大变化。甚至认为实体类就是实现属性的get与set方法。这两个访问器实现属性的读与写。

代码一:

随着学习的深入,我们越来越认识到:实体类这个“老实人”,有时候并不像他名字起的一样那么老实。时不时来点花样,也会让你眼前一亮。

实体类合适的设计,能够很好的实现信息的隐蔽,使代码更加简洁。

后来,慢慢知道,实体类中加上构造方法,能够使得代码看起来很整齐。

我们给实体中属赋值的时候,只用这样:

代码二:

开始时,我们难免在U层写这样的代码:

代码三:

我想只要你学过三层架构,写出这样的代码,你一定是怀着内疚的心情写出来的。在U层调用方法的时候,还需要知道数据库中的字段名。

这是,我们只需对实体类稍动手脚,写一个类似下面的构造方法,就可以解决这个问题。对外面暴露的是实体中字段,而不是数据库中字段。

代码四:

以上代码均出自同一段代码。其实,实体类的使用是非常灵活的。各层之间传递实体,能够很好的实现信息隐藏,实现代码的复用(怎样复用这里不做具体介绍)。

另外,在项目开发中,往往设计出好的实体类,会对项目的开发以及后期的维护工作,起到非常的好的作用;相反,相对较差的实体类设计,会让你的工程越来越像一堆垃圾。

此外,实体类中还可以设置彼此之间的继承。将代码一和代码二合在一起组成代码五,下面代码继承代码五:

代码六:

在代码六中,我们还可以添加自己想添加的别的属性和相应的访问期,以及新的构造方法等。

在关于实体类,目前我知道的大概就这些,还有哪些我不知道,欢迎指教。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics