Re: Функционал и интерфейс
Hello!
On Tuesday 17 March 2009 19:33:16 Yuri Kozlov wrote:
> > Ну так как, пробовать будем?
>
> Неа.
>
> Если посмотреть выше, то речь шла о демонах, а не парсерах текстовых
> файлов. Или Вы считаете их равнозначными задачами?
Есть у меня и демоны на тикле, например, собирают и обрабатывают данные с
цисок и других АТС. Написать то же самое на С большая работа (на тикле
используются события для прослушивания множества сокетов, а на С придется
создавать отдельные потоки), потому и не предлагаю как тестовую задачу (притом
демоны умеют держать в in-memory SQLite database те данные, которые не удалось
записать в persistent database), не говоря уж о реализации самой логики
обработки.
А в той задаче, что я предлагал выше, есть как минимум несколько неочевидных
вещей, без знания которых ваша реализация на С будет работать намного хуже
тиклевской. Например, реализовать "с нуля" эффективный хэш с текстовыми
ключами далеко не так просто, как кажется. И стоит в задаче с парсером лога
указать, к примеру, 100 параметров командной строки, как ваша реализация
станет весьма медленной (и уверен, вы бы и не подумали об этом, в то время как
создатели tcl подумали за вас). Есть и другие "подводные камни". В итоге
написать на С код приличного качества требует кучу времени даже в том случае,
когда вы знаете, как это сделать. Когда-то я встраивал в свои С++ приложения
несложный интерпретатор, но после перехода с perl на tcl все приложения делаю
на tcl, при необходимости реализуя некоторые модули на C (и смог забыть С++,
как страшный сон). В свое время мне довелось писать на С для
микроконтроллеров, так вот, написать код и обеспечить стабильную работу
прошивки на С, которая работает со встроенной флэшью, GPS и GSM-модулями,
потребовало несколько недель (в те времена используемый data-канал GSM был
очень неустойчив, но это отдельный разговор). На тикле можно написать
эквивалентную функциональность за пару дней.
Best regards.
Reply to: