Программа тестирования: как продумать ее логику и где и в каком виде хранить файлы вопросов - C#

Узнай цену своей работы

Формулировка задачи:

есть такая дилемма: хочу написать приложение. в нем будет набор вопросов и варианты ответов на них. Пользователи будут заходить и отвечать на вопросы. ответы должны где-то сохраняться, чтобы позже можно было просмотреть и распечатать. Программа должна быть как можно более проще. думал, где хранить ответы: вариантов 3, в базе данных, в текстовом файле или в xml-файле. От варианта базы данных вначале полностью отказался, потому что необходимо будет ставить сервер БД, вести администрирование, создавать пользователей и т.д. Вариант текстового файла тоже пришелся не очень, потому что уже мне кажется мало кто хранит данные, которые потом используются приложением, в текстовых файлах. Остается xml - все бы ничего, но я подумал, что когда уже довольно много пользователей зарегистрируются и ответят на вопросы, понадобится больше времени для обращения к атрибутам и элементам xml-файла, программа будет "тормозить". дальше-хуже, через год или два производительность вообще может сильно упасть, потому что файл разрастется. здесь варианта придумал два: один делать чистку файла и удалять старые записи. но он совсем не очень хороший (что же это за программа, которая не хранит старые записи, они вполне могут понадобиться). И получше, делать для каждой попытки ответа на вопросы отдельный xml-файл, сделать уникальным имя по дате и времени, и вот так. Вопрос: целесообразно ли хранить такие данные в таких небольших xml-файлах, делать потом поиск по имени файла и потом по атрибутам внутри файлов. Или же все таки не обойтись без базы данных? Выскажитесь, пожалуйста. У кого какое мнение на этот счет. еще раз повторюсь, приложение должно быть как можно более проще.

Решение задачи: «Программа тестирования: как продумать ее логику и где и в каком виде хранить файлы вопросов»

textual
Листинг программы
XmlSerializer ser = new XmlSerializer(typeof(List<ResultClass>));
    using (StreamWriter sw = new StreamWriter("result.xml"))
        {
            ser.Serialize(sw, list);
         }

Оцени полезность:

14   голосов , оценка 4.214 из 5
Похожие ответы