首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Tac Tac Toe设计模式

Tac Tac Toe设计模式
EN

Stack Overflow用户
提问于 2009-11-05 01:00:14
回答 5查看 5.1K关注 0票数 5

我想知道你对网络Tic Tac Toe游戏的最好/最有利的设计模式有什么想法和建议?

我一直在研究以下设计模式:工厂、抽象工厂、单例、原型和构建器。

根据你的经验,哪一个是最好的,为什么?

现在,我的Tic Tac Toe游戏是一个线程化的客户端/服务器游戏,可以通过套接字在互联网上玩。但是,我将以某种方式重构游戏,以利用设计模式。

我在考虑建立一个客户端/服务器架构,可以用来玩许多不同类型的游戏,比如tic tac toe,connect 5,等等。

我该往哪个方向走呢?我正在寻找一个能给我一些设计模式经验的方向……

谢谢!

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2009-11-05 01:24:54

警告:我讨厌人们把“设计模式”作为目标。设计好的代码,如果你正在做的事情看起来像DP,那么使用DP来帮助你改进代码。但不要一开始就说“我想用惊人的Crane模式来编写我的程序”。那是本末倒置。DPs应该出现在你的设计中。他们不应该驱动设计。

EndCaveat

你已经在使用设计模式了。DP只是编程中常见的“模式”的行话。您首先应该问自己的是:“我如何识别我编写的网络游戏中的设计模式?”

在那之后,你就可以担心下一步了。要拥有多个游戏,您可能希望使用抽象工厂模式来处理您的游戏。服务器调用工厂以获取知道如何玩所选游戏的游戏对象。

票数 17
EN

Stack Overflow用户

发布于 2009-11-05 01:24:39

设计模式只是一种设计方式的名称。tic-tac-toe游戏可以使用所有的设计模式,也可以不使用它们。它们只是如何做一件特定事情的一种模式。

你想重构你的代码,这是公平的,但不要这样做,因为你想在其中加入更多的设计模式。这样做是因为你想要清理你的代码,使它更通用,并可能将其扩展到其他游戏中。

要获得关于使用哪种设计模式的好答案,请给出一个具体的示例:

问:如何将network_handler限制为一个实例?-答:使用单例

否则,您可以找到一个理由来包含几乎所有的设计模式。

票数 3
EN

Stack Overflow用户

发布于 2009-11-05 01:06:57

使用不同的模式有不同的原因。你经常会看到在一个应用程序中使用了不止一个设计模式,这就是在正确的工作中使用正确的模式。

例如,在一个web应用程序中,我可能对设置类使用单例模式,对数据库连接使用工厂类。单例确保我只有一个设置对象,而工厂类负责为我提供一个适合我环境的数据库适配器。

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

https://stackoverflow.com/questions/1675204

复制
相关文章

相似问题

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