Войти
ПрограммированиеФорумОбщее

Простая система событий на С++11 (комментарии) (2 стр)

Страницы: 1 2 3 48 Следующая »
#15
22:23, 7 дек. 2015

0r@ngE
> у, поэтому я и хотел обратить внимание на то, как в наши дни это можно красиво
> сократить используя последнии версии стандарта С++.
> Но лично я не сторонник Observer'а изза множественного наследования

Лично я не сторонник новых стандартов - пусть уж лучше множественного наследования :)

#16
22:44, 7 дек. 2015

u960
> ну как то  кода Дума по проще выглядит

Если вы про 3-й Дум, то ему 11 лет ему уж как, естессно он проще выглядит ;)
К тому же Кармак сам не раз заявлял что он не сторонник С++, а пишет в стиле "Си с классами".
Хотя с эстетической точки зрения - мне код Дума 3 тоже нравится, но те игнорировать же теперь все новое?


innuendo
> Лично я не сторонник новых стандартов - пусть уж лучше множественного наследования :)

На ум приходит что-то про вкусы и фломастеры ;)


PS.  Давайте не будем сваливаться в каментах в холивар на тему С++ vs C with classes.  Хотя если наберется достаточное количество противников - я обещаю попросить модераторов удалить статью ;)

#17
23:37, 7 дек. 2015

Кармак, говорите?

https://mobile.twitter.com/id_aa_carmack/status/26560399301
https://mobile.twitter.com/id_aa_carmack/status/172340532419375104
https://mobile.twitter.com/id_aa_carmack/status/330381704634179584
https://mobile.twitter.com/id_aa_carmack/status/452586892282695680
https://mobile.twitter.com/id_aa_carmack/status/452582113955426305

http://fabiensanglard.net/doom3/interviews.php :

Today, I do firmly believe that C++ is the right language for large, multi-developer projects with critical performance requirements, and Tech 5 is a lot better off for the Doom 3 experience.

#18
23:47, 7 дек. 2015

0r@ngE
> К тому же Кармак сам не раз заявлял что он не сторонник С++, а пишет в стиле
> "Си с классами".
А чем аргументировал?

> Хотя с эстетической точки зрения - мне код Дума 3 тоже нравится, но те
> игнорировать же теперь все новое?
Да просто это все новое, обычно означает, напихать всего из других языков, да так, что потом фиг прочитаешь что написано.

Как пример, новость недавняя.
"Несколько часов назад Anatol Belski, релиз менеджер PHP, тегнул стабильный релиз PHP 7.0.0. Это значит, что сегодня-завтра мы увидим официальный анонс на php.net. Наконец, можно будет пользоваться новыми прекрасными возможностями: строгой типизацией, оператором ??, анонимными классами, безопасным рандомом и многим другим."... так же замыкания, группировки use, и еще куча всего до чего они смогли дотянутся.

Как все эти годы писались простые сайты и порталы без строгой типизации - непонятно, и без анонимных классов, и с опасным рандомом.

#19
0:05, 8 дек. 2015

FordPerfect
И что?
Сомневаюсь что она там лепит ад и израиль и использует все возможности и все новые фишки языка.

Типа алиби такое, Кармак признался в любви к C++, и поэтому мы будет так наворачивать, что сами не будем понимать что написали спустя пару недель.

#20
0:16, 8 дек. 2015

Я вынужден настойчиво просить перестать флудить.
Я никого не призываю к использованию новых фишек языка С++ у себя, равно как и моего кода.
Данная статья дает пример как можно сделать. Не более.

Будут конструктивные коментарии по теме?

#21
1:09, 8 дек. 2015

0r@ngE
> Будут конструктивные коментарии по теме?
Да. Переписать всё это на Си99...

#22
1:55, 8 дек. 2015

На мой взгляд статья хорошая, лаконично сделана возможность подписываться на события с произвольным числом параметров.
Что добавил для себя в исходном коде - это возможность подписываться на события-функции

+ Показать

#23
3:06, 8 дек. 2015

0r@ngE
> изза множественного наследования
попрошу, тут нету множественного наследования)
а в целом я соглашусь, не "сишное" это дело обсерверы
я бы сказал это у меня было академическое вдохновение.

завтра задам вопрос на форуме как решить одну проблему не прибегая к ним :)

#24
6:08, 8 дек. 2015

IROV..
> попрошу, тут нету множественного наследования)

Но оно будет, ведь от этих обсерверов / визиторов придется наследоваться, не так ли? А игровые классы чаще всего от чего-то уже отнаследованы.

#25
6:37, 8 дек. 2015

Ну и раз уже пошла такая пьянка, и сравнение моего кода с кодом самого Кармака (спасибо, я польщен таким сравнением ))
То давайте заглянем в исходники Doom 3 BFG Edition, а именно в папочку neo/d3xp/gamesys/
Внимательно изучим их вариант Event System в файлах Event.h / Event.cpp, а затем заглянем в Callbacks.cpp.
Сомневаюсь что это намного изящнее моего варианта, особенно если вам надо это отлаживать.

#26
7:31, 8 дек. 2015

Огромное спасибо за статью!

Прочитав её, я понял, что нифига не понял C++ ушёл далеко вперёд с тех пор, когда я подзабил на кодинг :) Читал я про возможности boost, встроенные в C++, конечно, но все эти новые словечки зубрить и зубрить :D

Как все эти годы писались простые сайты и порталы без строгой типизации - непонятно, и без анонимных классов, и с опасным рандомом.

Так и Интернет сильно изменился за последние годы :)

#27
11:13, 8 дек. 2015

LifeKILLED
> Так и Интернет сильно изменился за последние годы :)
Да нет, координально ничего не изменилось, все так же гоняются тексты по протоколу http.
Не произошли в интернете такие изменения,которые бы требовали типизации, классов и так далее.

#28
14:02, 8 дек. 2015

0r@ngE
> Но оно будет, ведь от этих обсерверов / визиторов придется наследоваться, не
> так ли?
нет не нужно :) ты указываешь метод который вызовется когда придет сообщение.

вот как обещал создал тему, ну и там можно посмотреть как работает обсервер

http://www.gamedev.ru/code/forum/?id=208530

#29
16:37, 8 дек. 2015

IROV..
Посмотрел...  Хммм.... Получается на каждый ивент нужно добавлять в класс новый член-обсервер, который будет реагировать на событие?

Страницы: 1 2 3 48 Следующая »
ПрограммированиеФорумОбщее

Тема в архиве.