XML vs рукописный формат для конфигов
От: ArtemGorikov Австралия жж
Дата: 05.09.05 07:17
Оценка: 6 (1)
Здравствуйте, Ka3a4oK, Вы писали:

KK>ИМХО неудачный пример. Если мне придется парсить что-либо, для чего можно составить регулярное вражение или КС-грамматику, я обязательно буду использовать средства автоматизации. Раньше это были bison/lex, сейчас еще хочу попробовать boost::spirit. Даже если мне нужно будет написать парсер для ini-файла, я также буду использовать средства автоматизации. Потому-что:

KK> — это просто (Сравните объем кода парсера и объем грамматики.)
KK> — это надежно (Во-первых, средства автоматизации обнаруживают все ошибки несоответствия формата. Во-вторых
KK>генерируемый код достаточно надежен. Это конечно справедливо для известных инструментов.)
KK> — это расширяемо (Расширился формат — добавили несколько прaвил в грамматику.)

KK> Я считаю, кодирование парсеров вручную как раз и есть "ламерство". Данный подход не дает никаких преимуществ.



И что, для того, чтобы распарсить строки с значениями, разделенными запятыми, Вы пойдете изучать boost::spirit с его кучей шаблонов? Неделю ковыряться с ним вместо того, чтобы черкнуть пару вложенных циклов — IMHO верх идиотизма. Можно, конечно, и регулярные выражения использовать, только они будут все же медленнее работать,чем банальная пара циклов. Все эти решения — "из пушки по воробьям стрелять".


KK>И вообще, я не вижу ничего плохого в осмысленном использовании чужого опыта.

Чужой опыт подсказывает, что можно написать sscanf.

В случае с custom INI-форматом — аналогично, зачем изобретать велосипед (кривой скорее всего), если есть:
1) стандартный виндозный формат и API для работы с ним
2) XML и куча парсеров к нему, на любой вкус.



KK> Я считаю, что главное для инженера(кем, по моему мнению, является программист)- это нахождение решения поставленой задачи. Чем лучше инженер, тем найденое решение оптимальней (по разным критериям — качество, стоимость, сроки).


Хороший программист, т.е. тот, который делает работу качественно и в срок, стоит дорого.





08.09.05 12:12: Ветка выделена из темы Программирование стало более высокоуровневым?
Автор: sch
Дата: 02.09.05
— AndrewVK
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.