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

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

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

Date: May. 31st, 2006 08:13 (UTC)
From: [identity profile] justy-tylor.livejournal.com
Ресурсы, которые не могут быть заранее упакованы - это очень специфичный проблемный случай
Не специфичный. Достаточно общий для тулсета.
Ты еще скажи, что у вас геймдизайн консольными командами настраивается.
Да, разумеется. Множество возможностей отладки, а также нахождение оптимальных коэффицентов (например, специфичные настройки AI) - всё это через консоль.
- не всегда эффективны.
Могут быть очень неэффективны (давать оверхед) в C++, особенно на консолях. Это и есть проблема. Что же касается реализации, то возможностей pattern matching, а также "исключений вверх" - действительно хотелось бы, но не в сказке живём, однако.

Date: May. 31st, 2006 16:12 (UTC)
From: [identity profile] aruslan.livejournal.com
Если необработанные ресурсы - общий случай для runtime - то это тотальный пездец и про него я не говорю. Если ты про toolchain - то там я предпочитаю пейсать всё больше на C# - потею меньше ;)

И не нужно, пожалуйста, путать геймдизайн и то, что я назвал "отладочно-подстроечными функциями".
Обычно после прикидочной настройки оно выносится либо в конфигурацию, либо в скрипт. Либо прибивается нахер.

Либо остаётся как подстроечная фишка - на уровне "цвет экрана смерти".

Про исключения - ты спросил, что мне нравится и не то согласился, не то хрен знает :))

Date: May. 31st, 2006 17:04 (UTC)
From: [identity profile] justy-tylor.livejournal.com
И опять всё сводится к тому, что "это мне не нравится, потому что хорошо не для всех случаев, и обычно делается через жопу". Ага. И C++, опять же, располагает к наиболее неестественным вариантам имплементаций. Не повод хаять концепции. Действительно, рассказал бы, как по твоему правильно. :)

Date: May. 31st, 2006 17:12 (UTC)
From: [identity profile] aruslan.livejournal.com
> Не повод хаять концепции.
Ну, если концепции не помогают в 90% случаев, а в оставшихся 10% - можно сделать иначе -- почему бы их не похаять-то? :)

А про "как по-моему правильно" - я не очень понял.
Ты имеешь ввиду - что бы я предложил использовать вместо каждого из пунктов "ненавижу-списка"?

Date: May. 31st, 2006 17:29 (UTC)
From: [identity profile] justy-tylor.livejournal.com
Ну, если концепции не помогают в 90% случаев, а в оставшихся 10% - можно сделать иначе -- почему бы их не похаять-то? :)

Потому что я могу сделать "автоматически регистрирующиеся получатели сообщений" красиво, удобно и эффективно. Повесить на них даже input, например. Или подцепить какие-либо динамические сущности на автоматический refcount, управляющий не временем жизни, а временем активности, с последующим реюзом. Так что, данные концепции могут быть мне полезны.

Интересно описание вида "данную концепцию коряво использовали ТАК, хотя вместо этого надо было использовать совсем другие идеи ВОТ ТАК". Напишешь? :)

Date: May. 31st, 2006 20:59 (UTC)
From: [identity profile] aruslan.livejournal.com
Могу попробовать.

Profile

aruslan: (Default)
aruslan

January 2014

S M T W T F S
   1234
56789 1011
12131415161718
19202122232425
262728293031 

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jan. 10th, 2026 05:37
Powered by Dreamwidth Studios