Я розглядаю, як реалізувати гру на основі компонентів, оскільки це здається гарячою справою, і мені подобається ідея такого гнучкого дизайну. Однією з особливостей такого дизайну є те, що додавання нових речей в гру може здійснюватися за допомогою даних, часто представлених як завантаження вмісту за допомогою текстових файлів, таких як XML. Це має перевагу в тому, що людина читається і легко редагується в будь-якому текстовому редакторі. З іншого боку, з текстом можна працювати повільніше, і вам доведеться керувати великою колекцією файлів даних. Подібні текстові формати, такі як JSON або конфігураційні файли, мали б подібні переваги.
З іншого боку, є невеликі портативні бази даних, такі як SQLite або Tokyo Cabinet. Хоча ці файли не читаються безпосередньо людиною, з цими файлами легко поєднуватись, і я думаю, якийсь інструмент редагування в будь-якому випадку буде кращим для дизайну контенту ігор. Використання БД дозволяє послідовно зберігати інформацію конфігурації та легко отримувати. Ви можете серіалізувати дані в БД для збереження ігор.
Я думаю, що ефективність XML, як правило, швидша для невеликих файлів, але база даних краще масштабує великі обсяги даних. Я думаю, у будь-якій реальній грі буде багато ігрових об'єктів.
Отже, питання: який є кращим підхід? Я схиляюся до БД, але хочу знати, чи є приховані підводні камені чи справжні сильні переваги текстових файлів. Або якщо є інші альтернативи, крім них (я думаю, серіалізувати у двійковий формат?)