Python中文
首页
教程
问答
标签
搜索
登录
注册
围绕第三方库设计我的域模型
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我正在开发一个扑克分析工具,使用以下用例:</p> <ol> <li>用户用一个方法创建策略类:输入GameState,输出PokerAction</li> <li>用户运行分析脚本,在不同的策略子类(即各种策略)之间启动扑克游戏</li> <li>扑克游戏生成随机牌组</li> <li>扑克游戏将游戏状态发送到策略</li> <li>策略使扑克游戏变为扑克游戏</li> <li>扑克游戏更新游戏状态</li> <li>当游戏完成后(由扑克游戏管理),将游戏结果发送到分析脚本</li> <li>用户检查分析脚本的输出</li> </ol> <p>有一个第三方库来执行所有的扑克游戏功能。它与我自己在某些领域对域的建模完全不匹配(例如,卡值等),但它执行了我需要的“难以编码”功能(即非常重要的步骤4-7)。在</p> <p><strong>一般设计问题</strong> 当面对这样的库时(消除了大量硬编码,但可能会限制相关项目中未来的设计选择),您是否倾向于将项目的其余部分塑造为库?您是否重构密钥库以符合您的域模型?还是别的什么?在</p> <p>谢谢</p> <p>迈克</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>我不会将我的项目与库紧密耦合,而是尝试抽象功能,并在两者之间使用一个或多个对象。这里我想到了中介和/或立面模式。在</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
当用户用PYTHON设置一个或一个不带值的URL时,他们怎么能输入一个/a的代码呢?
7 回答
当用户登录到站点时,如何显示不同的导航栏
10 回答
当用户登录时,在Flask中向用户显示处理结果
9 回答
当用户的Flask会话结束时,我如何从Redis后端中移除所有Celery结果?
8 回答
当用户的Okta配置文件字段当前为blan时,更新该字段
5 回答
当用户的付款逾期2天时,从Django模型检索数据
7 回答
当用户的消息以问号结尾时,如何让机器人说些什么?
3 回答
当用户的系统上可能也安装了Python 2.7时,如何在用户的系统上运行Python 3脚本?
3 回答
当用户确定打印数量时,使用Matplotlib打印动画
10 回答
当用户离开时是否可以删除整个网页?
4 回答
当用户给出一个单词时如何打印?
9 回答
当用户继续更改TKin中的值(使用trace方法)时,使用Entry并更新输入的条目
1 回答
当用户编辑表单字段时,从Django时间字段中删除秒数
4 回答
当用户被更改时,消息不会来自web套接字
3 回答
当用户访问表单时,如何使表单为只读,而不具有更改权限
5 回答
当用户试图更改对象的值时,使用描述符类引发RuntimeError
1 回答
当用户调整GUI的大小时,是否有方法更改GUI内容的大小?
3 回答
当用户调整风的大小时,pythontkinter小部件的大小会不均匀
8 回答
当用户购买某个类别时,是否查找其他类别的销售?
5 回答
当用户转到上一页时,Django和芹菜插入操作
2 回答