POCO的优点和缺点

POCO有以下优点:
1、不从任何第三方继承,可以随心所欲地使用设计模式;
2、没有第三方框架的侵入,移植和重用都很方便;
3、利于单元测试;
4、我讨厌DTO、DO、VO,觉得它们是重复劳动,POCO让Domain Object贯穿到底;

POCO也有缺点:
1、需要一个强大的ORM框架来支持,这个框架不但自动无缝支持Domain Object <--> Persistant Object(不支持这个POCO模式就没什么价值),还需要可视化的工具来支持Domain Model <--> Data Table(我不想手写Mapping,无论是XML还Attribute都不想);
2、就像楼主说的那样:“由框架来完成的数据库设计通常是相当潦草,惨不忍睹”,所以除非你使用面向对象的数据库(例如DB4O),否则你还是不可避免地要手动设计数据表——在关系型数据库与OOP之间频繁切换是件很痛苦的事;
3、Domain Object容易被复杂的Presentation污染,最后变成View Object。
4、跨平台的时候DTO还是不能省略,但这本来就不在POCO的作用范围之内。

 

其实,我更喜欢Naked Object,POCO+ORM让我不用再操心数据的持久化,却在UI上原形毕露。

posted @ 2010-01-07 09:56  深圳大漠  阅读(1529)  评论(0)    收藏  举报