Java API设计 - 内部设计

Kyl*_*oth 7 java api

我正在制作我的第一个API来获取数据并从网站解析它.因此,它有很多网络和解析.我读到有关API的内部包不应该是公开的; 就像在Javadocs.所以我的问题是应该和不应该放在内部包中.这是我的包装设计,我忽略了非重要的包装设计.

.networkstats
.networkstats.model
.networkstats.parser
Run Code Online (Sandbox Code Playgroud)

networkstats包内有一个叫做的类NetworkStats.这是处理和检索所有网络连接的主类.然后,它使用parser包内的类来处理数据.它返回一个Model类,该类保存model包内的数据.我想要包含内部包,因为会有一些不打算由用户使用的类和接口.

例如,我想让一个类处理所有网络连接,以便其他类NetworkStats可以访问它.我想这样做的原因是因为当它可以在一个地方时,我不想复制其他类中的代码.当然我不希望其他用户使用这个类,所以我会把它放在内部包中?我也会把我的parser包放在内部.所以我的主要问题是你是否在内部包中放置了不打算在公共场合使用的类和接口?我知道他们仍然可以访问它.

.networkStats.internal.DataManager // class that handles network connections
.networkStats.internal.parser
Run Code Online (Sandbox Code Playgroud)

小智 10

您可能会发现此Java API设计清单很有用.第一部分是关于包装设计.

http://theamiableapi.com/2012/01/16/java-api-design-checklist/

费伦茨