首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >我们能否将REP、CRP、CCP等原则应用于Java包以及JAR?

我们能否将REP、CRP、CCP等原则应用于Java包以及JAR?
EN

Stack Overflow用户
提问于 2014-09-19 11:26:59
回答 1查看 896关注 0票数 2

鲍勃叔叔的面向对象原则(http://butunclebob.com/ArticleS.UncleBob.PrinciplesOfOod)描述了:

  • 班级设计的五大原则
  • 封装设计的六大原则(释放重用等效原则、通用闭包原则等)

该条规定:

在这种情况下,包是一个可以交付的二进制文件,比如.jar文件,或者是一个dll,而不是像Java或C++名称空间这样的名称空间。

这是否意味着6“包原则”根本不适用于包(这些包是用关键字包定义的)?这是否意味着以这种方式应用这些规则是错误的?如果是的话,你能指出在哪里可以找到这样的命名空间包原则吗?

EN

回答 1

Stack Overflow用户

发布于 2016-02-16 05:51:59

是的,包原则可以应用于其他语言中的单个Java包或类的等效分组(或其他单个软件单元)。

Martin系列文章中关于包原则的第一篇文章,关于版本重用等效原则的文章。解释说,这些原则是关于类的分组。它任意选择"package“作为这些分组的名称,然后提到在Ada和Java中使用了这个词,用于这些语言中特定类型的分组。我的结论是,这些原则适用于任何类的分组,包括Java包。

其他人已经成功地将包原则应用于Java包。JDepend根据Java的包原则计算度量。我仍然怀念出色的工具最优顾问,它将这些指标显示在包依赖图上,作为重构的辅助工具。我发现这两种方法在识别违反包原则的包以及通过重构修复这些违规行为时都很有用,比如将类移到适当的包中。

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

https://stackoverflow.com/questions/25932857

复制
相关文章

相似问题

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