【问题标题】:Guidance on structuring my NetBeans Java project构建我的 NetBeans Java 项目的指南
【发布时间】:2012-09-27 13:25:03
【问题描述】:

迄今为止,我一直使用文本编辑器进行编码,并使用 CLI(Windows 和 Mac)进行编译。这是我第一次使用 IDE,我选择了 NetBeans。这也是我第一次遇到包。

不胜感激有关如何设置我的项目的指导/方向。

我的项目包括: - 服务器应用程序 - 客户端应用程序 - 普通对象

这就是我所做的:

  1. 创建项目
  2. 在这个项目下,我创建了三个包:
    • 服务器 - 仅适用于我的服务器应用程序的源文件
    • 客户端 - 仅针对我的客户端应用程序的源文件
    • Common - 服务器和客户端应用程序共享的公共文件,例如 RMISSLClientSocketFactory、远程接口和实现、密钥库文件等

这是正确的方法吗?

另外,我需要做什么才能使 Server all 和 Client 应用程序可以调用/访问 Common 包中的类?

非常感谢。

【问题讨论】:

    标签: java netbeans package project structure


    【解决方案1】:

    一般约定建议您的顶级软件包名称应与您的公司网址相反(即com.stackoverflow)。

    现在不是每个人都有公司(或网址),在这些情况下,您希望选择能够(尽可能)唯一标识您的包的东西(包的目的是提供名称空间,因此您可以更多的是具有相同名称的一个类,并且能够区分它们等等)。

    例如,我可能会选择使用mad.programmer...

    下一个级别应该识别应用程序或库(我个人使用 .core.core.ui 之类的东西作为我的核心库,但您可以自己选择)

    此时,您基本上可以随意分组了。

    现在,到手头的问题。

    在您的情况下,我将创建三个项目。一个用于服务器代码,一个用于客户端代码,一个用于您的公共类(将在服务器和客户端之间共享)。

    我会将公共项目链接到您的服务器和客户端项目(右键单击项目(客户端和/或服务器)的Libraries 节点并选择Add Project)。

    就我个人而言,我会使用 .client.server.common 后缀给你的包名来分隔代码,但唯一真正的要求是为你的公共库提供它自己的名称空间,与服务器和客户端。

    只要您没有更改服务器和客户端通信所依赖的任何代码(运行时可能在它们之间传递的对象),您就可以重建其中一个项目而不会影响另一个项目。

    这是我的看法。

    【讨论】:

    • 您好 MadProgrammer,非常感谢您的提示。有一个问题。根据您的建议,看起来我的每个项目都只有两个包:一个 NetBeans 建议用户不要放入任何东西的默认包,另一个是我将创建的包,作为 .client、.server 的容器。分别适用于每个客户端、服务器和通用项目。这个对吗?谢谢。
    • 是的,如果可以的话,你应该避免使用默认包,因为它会使命名空间功能失效
    猜你喜欢
    • 2013-07-31
    • 2018-04-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多