[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Функционал и интерфейс



В Вто, 17/03/2009 в 20:37 +0300, Alexey Pechnikov пишет:
> Hello!
> 
> On Tuesday 17 March 2009 19:33:16 Yuri Kozlov wrote:
> > > Ну так как, пробовать будем?
> >
> > Неа.
> >
> > Если посмотреть выше, то речь шла о демонах, а не парсерах текстовых
> > файлов. Или Вы считаете их равнозначными задачами?
> 
> Есть у меня и демоны на тикле, например, собирают и обрабатывают данные с 
> цисок и других АТС. Написать то же самое на С большая работа (на тикле 
> используются события для прослушивания множества сокетов, а на С придется 
> создавать отдельные потоки),

Кто тебе такое сказал? Если за последнюю пару лет ничего не изменилось
то в Линуксе осталось несколько ситуаций блокирующих программу, это
работа с диском и штатный DNS резолвинг, может ещё чего.

А работа с пайпами и сокетами в любом количестве сто лет может
производиться без блокировок одним процессом.

>  потому и не предлагаю как тестовую задачу (притом 
> демоны умеют держать в in-memory SQLite database те данные, которые не удалось 
> записать в persistent database), не говоря уж о реализации самой логики 
> обработки.
> 
> А в той задаче, что я предлагал выше, есть как минимум несколько неочевидных 
> вещей, без знания которых ваша реализация на С будет работать намного хуже 
> тиклевской. Например, реализовать "с нуля" эффективный хэш с текстовыми 
> ключами далеко не так просто, как кажется. И стоит в задаче с парсером лога 
> указать, к примеру, 100 параметров командной строки, как ваша реализация 
> станет весьма медленной (и уверен, вы бы и не подумали об этом, в то время как 
> создатели tcl подумали за вас). Есть и другие "подводные камни". В итоге 
> написать на С код приличного качества требует кучу времени даже в том случае, 
> когда вы знаете, как это сделать.

Приличное качество на любом языке требует кучу времени.

>  Когда-то я встраивал в свои С++ приложения 
> несложный интерпретатор, но после перехода с perl на tcl все приложения делаю 
> на tcl, при необходимости реализуя некоторые модули на C (и смог забыть С++, 
> как страшный сон). В свое время мне довелось писать на С для 
> микроконтроллеров, так вот, написать код  и обеспечить стабильную работу 
> прошивки на С, которая работает со встроенной флэшью, GPS и GSM-модулями, 
> потребовало несколько недель (в те времена используемый data-канал GSM был 
> очень неустойчив, но это отдельный разговор). На тикле можно написать 
> эквивалентную функциональность за пару дней.
> 
> Best regards.
-- 
Покотиленко Костик <casper@meteor.dp.ua>


Reply to: