?

Log in

No account? Create an account
Помощники - Valse oubliée [entries|archive|friends|userinfo]
aruslan

[ userinfo | livejournal userinfo ]
[ archive | journal archive ]
[ delicious | aruslan's delicious ]

Links
[Links:| Tags Profile Friends FG1 PP gamedev XNA FF Entries Comments Memories ]

Помощники [May. 30th, 2006|03:06 pm]
aruslan
[Tags|, , , , ]

Ненавижу
автоматически рождающиеся объекты типа блокирующего loading-on-demand. И синглтоны типа Майерса.
автоматически уничтожающиеся объекты под smart_ptr. И подсчёт ссылок.
автоматически регистрирующиеся получатели сообщений. И unbound рассылку сообщений.
автоматически создающиеся нетривиальные объекты со статическим storage duration. И вообще бурную деятельность до main().

мгновенность, нераспределенность, модель exception, lower-order programming.

Но научить правильно не всегда получается.
LinkReply

Comments:
[User Picture]From: sergey_shandar
2006-05-31 12:41 am (UTC)

Re: модель exception

А причем здесь HRESULT? Насколько я понимаю, НЕ СУЩЕСТВУЕТ другого способа, как передать ХОТЯ БЫ один байтик, дать удаленному клиенту знать что произошла ошибка. Вот этот ХОТЯ БЫ и есть HRESULT (не забываем что через него же COM Proxy сообщает что сервер сдох). А если нужно расширенные ошибки, то - IErrorInfo есть на то. COM нужно рассматривать как базу для общения между большими разными модулями, а сверху уже городить огород с обработкой.

Конечно система не идеальная, лучще что бы компилятор решал где могут быть ошибки (если ему известна логика поведения модулей), а где нет, нужна обработка или нет, но это уже в сторону Singularity. Оно нас всех вылечит...
(Reply) (Parent) (Thread)
[User Picture]From: aruslan
2006-05-31 09:02 pm (UTC)

Re: модель exception

Я про HRESULT в плане - одно из существующих средств.

Аналогичная проблема есть в классическом паттерне типа фильтры (пайплайн).
Скажем, alla UNIX система наборных мелких утилит, которые ты соединяешь output->input.

Если ты рассчитываешь, что всё хорошо -- всё хорошо.
Но если что-то поросло - удачи :)
(Reply) (Parent) (Thread)