我正在构建一个类似 Trivial 的应用程序。这只是问题和图片的集合。
我正在设计它,以便它将所有问题、答案和图像保存在数据库中。
这是可取的吗?
我什么时候应该使用数据库,什么时候只使用资源文件夹?
你将如何实现这一点?
谢谢。
如果您有 500 个问题,并且您计划为每个问题提供图像,我会考虑使用外部服务器为您提供数据。这样,您将拥有一个轻量级的应用程序,并且只会下载您需要的问题。您可以将下载的存储在本地数据库中。此外,您可以通过这种方式轻松地使您的应用程序保持最新状态。
话虽如此,如果您想在资源和 SQLite 之间进行选择,请选择 SQLite。它要快得多。您不应该将图像放入数据库中(我认为在 SQLite 中什至不可能),但在此处保留对它们的引用(文件名)并将实际图像保存在 SD 卡上。
资源文件夹也是一个数据库。为了缩小一点问题的范围,重点是将数据保存在结构化或非结构化数据存储中。从经验来看,结构化数据存储提供了一些索引、搜索数据分析等好处。现在您认为您只是收集数据,但后来您发现自己想要为其添加一些属性,增强数据模型等。从编程的角度来看,我没有看到作为文件夹的数据存储和数据存储之间有很多区别作为数据库。但是在可用性和后处理方面存在巨大差异。归根结底,它只是 API 调用。所以我的建议是使用数据库,我认为Android API带有sqlite,将问题存储在数据库中,文件可能在数据库或资源文件夹中,并在数据库中带有指针。
在我看来,如果应用程序应该是可扩展的(新问题/新功能/...稍后添加),数据库是最好的解决方案...
如果它只是一个小型/快速应用程序,您只会更新一次,那么您可以保持简单并使用简单的文本文件或其他东西......
编辑:因为我读到你想要大约 500 个问题,所以你真的应该去一个数据库,你以后总是可以添加属性和东西,对东西进行排序(比如难度),用数据库很容易......去数据库我会说!