我是 Ruby 的新手,主要从事 PHP/SQL 的网络开发。我在考虑如何在我的应用程序中存储首选项。例如,如果我想将路径存储为 default_path
并在用户重新启动应用程序时也设置该路径。
在网络世界中,人们可能会将其存储在数据库或 XML 中。数据库对于独立应用程序来说似乎有点过分了。但我不确定 XML/YAML/Other-Write-Format 是否可行。如果是这样,我应该在哪里存储这些首选项?例如,在 Mac 上,它们应该在 ~/Library/MyAppName 中吗?
最佳答案
我喜欢使用 YAML,因为它很容易被多种语言读取/写入,这使得多个应用程序可以共享相同的配置信息。这是一个有据可查的标准,因此数据陷入漏洞的可能性应该很小。
此外,由于它易于人类理解,并且不需要任何特殊工具即可更改,因此它可以很好地处理应用程序中可能偶尔更改的任何数据,以进行微调或启用特殊行为。
您的部分创意代码可以定期检查 YAML 文件的最后修改时间,这样您的应用程序就可以在调整 prefs 文件时即时修改其行为。我有一个很大的应用程序,我不想因为更改而关闭并设置该行为。它连续运行了三个星期,我通过它的配置文件调整了它的运行参数。它会每分钟读取一次文件,并即时继承对其参数的任何更改。
如果是集中式服务器或基于网络的应用程序,数据库是存储参数/偏好的好方法。对于在单个机器上运行的分布式东西来说,这是没有意义的。
关于ruby - 如何存储应用程序的首选项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5384817/