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

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



Покотиленко Костик -> debian-russian@lists.debian.org  @ Fri, 20 Mar 2009 11:54:08 +0200:

 >>  >>  >> >> Как только ты на C выбираешь достаточно высокий уровень, ты немедленно
 >>  >>  >> >> получаешь высокоуровневый подъязык с неудобным синтаксисом и
 >>  >>  >> >> ... правильно, все равно заботой о распределении памяти (почистить за
 >>  >>  >> >> тобой все равно никто не сможет).
 >>  >>  >> >
 >>  >>  >> > В GTK+, создаёшь виджет "окно", напихиваешь туда кучу других виджетов,
 >>  >>  >> > потом делаешь gtk_widget_destroy() на "окно", и освобождаешь его и всех
 >>  >>  >> > потомков одной командой.
 >>  >>  >> 
 >>  >>  >> После чего в памяти навечно остаётся висеть какой-нибудь pixbuf,
 >>  >>  >> используемый в каком-нибудь image. Поскольку понадеялись на
 >>  >>  >> gtk_widget_destroy и документацию к gtk_image_new_from_pixbuf на
 >>  >>  >> предмет освобождения памяти перечитывать не стали.
 >>  >> 
 >>  >>  ПК> Баги есть везде. Э про это не знаю, pixbuf'ом практически не
 >>  >>  ПК> пользовался.
 >>  >> 
 >>  >> "Этот баг у них фичей зовется."  В смысле - документирован, а не
 >>  >> исправлен...
 >>  >> 
 >>  >> Баги, конечно, есть везде.  Но вот их количество в разных местах
 >>  >> различно.  В больших проектах, написанных на C, помимо неизбежных для
 >>  >> всех языков ошибок в логике программы есть еще туча ошибок в глупостях
 >>  >> типа управления памятью.
 >> 
 >>  ПК> И это понятно, сначала научитесь управлять памятью, потом управляйте.
 >> 
 >>  ПК> На самом деле в приличных проектах от эффективности управления памятью
 >>  ПК> зависит всё. Если это управление от тебя не зависит, от тебя уже мало
 >>  ПК> что зависит.
 >> 
 >> Посмешил.  Вот приличные проекты, где от эффективности управления
 >> памятью (в разумных пределах) ничего не зависит, мне попадались.  А
 >> чтобы всё - ни одного.  Как минимум, потому что если проект таков, что
 >> там что-то зависит от управления памятью, то от алгоритмов обработки
 >> данных, в этой памяти лежащих, и логики принятия решений по распихиванию
 >> в память зависит куда больше.
 >> 
 >> Кстати, хинт: если твоя сишная программа работает в линуксе из-под
 >> непривелигированного юзера, управление памятью от тебя уже не зависит...

 ПК> Мы что про разные управления памятью говорим?

Нет.  Я просто смотрю на шаг дальше.  Когда "зависит от управления
памятью" - речь идет об управлении _физической_ памятью.
Непривелигированный процесс к управлению физической памятью в линуксе
никто не допустит.  Так что от его автора в управлении _интересной_
памятью ничего не зависит.  Ну, почти ничего...

-- 
Artem Chuprina
RFC2822: <ran{}ran.pp.ru> Jabber: ran@jabber.ran.pp.ru

Пришел в гости математик, почитать новую рукопись. Вычитал из нее трех
героев напрочь, и ушел.
	Gimli on #arda


Reply to: