我想到了软件设计中的有趣情况。如何从不应看到的包中隐藏包(以及此包中的公共类)?

例如,三个软件设计层(UI,BL,DAL)。 UI层应该只知道BL层,而BL层应该只知道DAL层。
因此BL包使用DAL包。但是,如何避免从UI层使用DAL层而不使用BL层,或者如何利用BL已经知道DAL的事实。

这只是我的意思的示例,可以防止包装看到没有连接器-包装的其他包装。

最佳答案

单独使用Java并不能实现这种分离。一门课需要公开后,便立即向全世界公开。

我对您有感觉,因为我不喜欢包含数百个类的包,因此我喜欢将它们分成子包。不幸的是,这会干扰使用包私有类的类的唯一隐藏机制。

在实践中,解决此问题的方法通常是将代码分成单独的构建单元(本质上是项目)。您可以为每个层创建一个单独的项目,并且仅将要访问的层作为依赖项添加。

关于java - 包装之间的强烈分离,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20250032/

10-11 18:41