我正在为我的邮件服务器的日志条目设计一个类。我已经解析了日志条目并创建了类层次结构。现在我需要将内存表示保存到磁盘。我需要将它保存到多个目标,如mysql和磁盘文件。我无法找到设计持久性机制的正确方法。面临的挑战是:OO设计:Ruby类的多重持久性设计
如何通过持续 初始化信息,如 文件名,传递给它们的数据库连接参数 。我想 的选项都是丑陋的,例如:
1.1构造函数:它变得很难看,因为我增加了更多的持久性。
1.2方法:Object.mysql_params(”“),再次 对接难看
“正确的” 方法名来调用每个 持久性机制:例如: Object.save_mysql,Object.save_file, 或对象.save(MySQL的)和 Object.save(文件)
我相信有一些模式来解决这方面的问题。我使用Ruby作为我的语言,没有任何轨道,即纯Ruby代码。任何线索都非常受欢迎。
拉吉
非常感谢您的回答。收到的所有3个答案都表明了相同的方法 – 2008-10-08 07:54:02