2011-12-20 54 views
3

我目前正在做一个简单的经理游戏/模拟来学习如何处理更大的项目。 现在,我已将所有类放在由Eclipse创建的/ src文件夹中。编码练习,项目文件夹结构

我觉得构建我的项目是个好主意。 我有以下类别:

  • 比赛
  • TeamMatch
  • 球员
  • PlayerFactory
  • TeamFactory
  • TeamSchedule
  • 赛季

现在,有一个想法(也许是正确的做法!)将创建接口的匹配,并有Match和TeamMatch实现它。我认为逻辑后续将有一个以接口命名的文件夹,并在其中有相关的类。

但是Player和PlayerFactory类呢?玩家拥有玩家的基本信息,如年龄,名字等。PlayerFactory根据请求创建玩家。但是找到这些类的通用接口似乎不太可能!与TeamFactory相同。也许所有的工厂类都组合在一起?

让我们来看看团队类。一个团队由玩家组成。这两个应该组合在一起吗?一个赛季有TeamSchedule,里面有TeamMatches,后者又有两支球队。

这是一个选项,我在想:

  • SRC
    • 比赛
      • 比赛
      • TeamMatch
    • 工厂
      • PlayerFactory
      • TeamFactory
    • 联赛
      • 赛季
      • 球员
      • TeamSchedule

任何建议,我已经做出了明显的错误,或者对这个主题有了完全不同的看法?

+3

把你的包名小写的,指的是'Math'和'Factories''folders' – 2011-12-20 10:54:34

+0

固定的包名的建议 – Zavior 2011-12-20 11:02:36

回答

4

我建议:

创建其中应该有一个名称,如org.managergame基础包。

在名为team,match,player的基础包下创建三个包。

MatchTeamMatch转到包match

PlayerPlayerFactory转到包player

TeamTeamFactoryTeamSchedule去包team

一切都可以在基础包下。

+0

+1:由问题域pacakges组类,而不是由他们执行或其他技术什么花样相似 – 2011-12-20 11:03:02

+0

http://www.javapractices.com/topic/TopicAction.do?Id=205可能有助于理解-Package By Feature-和-Package By Layer-之间的区别。 – mickthompson 2011-12-20 11:08:19

+0

它看起来像_package的feature_就是我想要的。谢谢! – Zavior 2011-12-20 11:12:52

2

我通常有层层包装:model,service,persistence,util