Design patterns 设计-在SQL中存储可执行代码的替代方案
我正在开发一款浏览器小游戏,我遇到了一个设计问题,我能想到的唯一解决方案都是糟糕的 它是一个典型的web应用程序——Angular2/HTML/JS前端,带有PostgreSQL DB的Java服务器,内容托管在nginx和Tomcat上 用户可以与各种具有自定义行为的NPC(非玩家角色)交互。我已经泛化了这个逻辑,NPC作为配置行存储在DB中Design patterns 设计-在SQL中存储可执行代码的替代方案,design-patterns,database-design,web-applications,api-design,architectural-patterns,Design Patterns,Database Design,Web Applications,Api Design,Architectural Patterns,我正在开发一款浏览器小游戏,我遇到了一个设计问题,我能想到的唯一解决方案都是糟糕的 它是一个典型的web应用程序——Angular2/HTML/JS前端,带有PostgreSQL DB的Java服务器,内容托管在nginx和Tomcat上 用户可以与各种具有自定义行为的NPC(非玩家角色)交互。我已经泛化了这个逻辑,NPC作为配置行存储在DB中 身份证号码:1 姓名:山姆全国人大代表 ImgURL:“www.mygame.com/img/npc/sam.png” 访问mygame.com/n
- 身份证号码:1
- 姓名:山姆全国人大代表
- ImgURL:“www.mygame.com/img/npc/sam.png”
interact()
方法,添加或更改NPC需要代码推送我目前正在使用选项2,但不太深入,我想知道是否有一种公认的方法可以更好地处理类似的事情。将源代码存储在数据库中与存储图像或文档没有多大区别。然而,我相信您正在寻找一些声明性语言()来描述NPC,而不是实现它的命令式程序。最简单的方法是创建基于XML或JSON的可扩展DSL。在这种情况下,XML文档可以作为角色配置文件数据的一部分存储在数据库中。您能精确说明什么是NPC吗?@serge编辑的帖子,但我也将其放在这里:NPC代表非玩家角色。在webapp中,这些屏幕的一般形式相同,但内容不同。NPC有助于推动游戏性——他们发布任务或与玩家交易,等等。我想问一下