首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >OOP设计:父级、管理员型还是用户型?

OOP设计:父级、管理员型还是用户型?
EN

Stack Overflow用户
提问于 2014-11-05 18:52:24
回答 2查看 459关注 0票数 0

我有个关于OOP设计的问题。

假设我们有两个类:Admin具有查询、编辑和删除的权限;用户只具有咨询权限。

您将如何设计这两个类之间的继承?

Will Admin继承了用户,因为它通过添加编辑和删除权限来进一步扩展用户的功能。还是用户正在继承Admin,在右边有更多的限制?

在泛化方面,我们是否认为Admin比用户更“通用”,应该是超类。这是我公司的高层告诉我的。但从其他一些设计中我看到了相反的情况。例如http://www.codeproject.com/Articles/567768/Object-Oriented-Design-Principles

你能澄清哪种设计是正确的,也许他所说的“一般”是什么意思?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-11-05 18:58:02

这两种想法都不合适。用户可以成为管理员,管理员可以成为用户。继承排除了这种能力。

唯一可重复使用的比特是咨询部分。Put是一个单独的类,Admin和User都使用它。

票数 0
EN

Stack Overflow用户

发布于 2014-11-05 18:58:32

这取决于您的类有哪些行为;我很容易看到这些类没有任何共同的祖先。查看一下IPrincipal框架中的.Net接口;它跟踪用户所拥有的角色,而不管用户的角色和管理是否正确。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26764830

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档