首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >足球/足球软件设计模式

足球/足球软件设计模式
EN

Stack Overflow用户
提问于 2017-08-15 13:55:07
回答 2查看 138关注 0票数 1

一个基本的问题。

想想足球/足球。我想为它做一个设计模式,但想知道是否已经有了。

它是这样的:

我想创造一个足球运动员。

我们有性别。(男性和女性)。

A性别有系列类别(例如,19岁以下的青年、18岁以下的青年等)。

该系列类别放置在一个区域(或声明任何)。

该区域有其系列名称(例如系列1、系列2、除法1等)。

例如,我想让女的,资深的,她在伯明翰打球,并且在第一组。

我想把它映射到数据库中,但是我想遵循一个软件设计模式,但是我不知道是否有这样的软件设计模式。

我的尝试是这样的:

代码语言:javascript
运行
复制
Gender
{
   int GenderID 
   GenderType 
}

SeriesCategory
{
   int SeriesCategoryID
   string SeriesCategoryName
   int GenderID
}

Region
{
   int RegionID
   string RegionName
   int SeriesCategoryID
}

Series
{
   int SeriesID
   string SeriesName
   int RegionID
   int SeriesCategoryID
}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-08-16 10:09:31

我认为您应该使用规范化原则来设计您的数据库(请参阅这里的更多内容- http://www.studytonight.com/dbms/database-normalization.php )

关于软件模式-对于您的情况,没有确切的模式。但是要使用最好的实践和原则,比如坚实的。将代码实体映射到数据库实体(反之亦然)是ORMs的责任,ORMs针对不同的语言和需求(SQL/NOSQL、代码优先/数据库优先等)存在大量的变化。

因此,对于你与足球运动员和球队的具体情况,我认为DB规范化是你目前所需要的。

票数 0
EN

Stack Overflow用户

发布于 2017-08-16 09:54:07

为什么你需要所有的属性“系列”分开。如果这不是必要的话,我只会创造一个“足球运动员”和一个“联赛”对象。也许一个足球运动员可以在一个联赛中踢球,但在一个联赛中可以有很多足球运动员。因此,“足球运动员”和“联赛”之间会有一个多对一的关系。

代码语言:javascript
运行
复制
Footballer
{
    int FootballerID
    int age 
    GenderType
    League 
}

League
{
    int LeagueID
    String leagueName
    String regionName
    String categoryName
    GenderType
}

因此,FootballerID和LeagueID之间有一种多对一的关系.首先,您可以在it.Then中创建一个没有任何足球运动员的联盟,您可以创建一个具有其年龄和性别的足球运动员,然后通过检查他们在联赛类别中的年龄和性别限制,您可以将他们添加到一个联赛中。不过,team对象也可能是很好的。

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

https://stackoverflow.com/questions/45694369

复制
相关文章

相似问题

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