arctic-engineers-club

Open full view…

fresh-code: библиотека edge-slot

agrianius
Thu, 05 Apr 2018 23:37:54 GMT

Для своего собственного проекта я сделал альтернативную реализацию парадигмы Signal&Slot из QT. В библиотеке edge-slot edge - является аналогом signal в QT. Я сделал это переименование для концептуальной корректности названий. Код вот здесь https://github.com/agrianius/edge-slot. Сейчас всё на стадии альфа. Я активно дорабатываю и исправляю ошибки, чтобы библиотека полноценно работала в моем собственном проекте. Есть поддержка многопоточности и таймеров, используются шаблоны, там где возможно используются lock-free алгоритмы. Функционал и примеры использования можно увидеть в юниттестах. Библиотека работает пока только под linux. В ближайших планах написать документацию с блоксхемами, портировать на другиех платформы, добавить поллер для работы с сокетами, добавить поддержку тред-пулов. Мне кажется edge-slot будет полезна в играх, как базовая парадигма многопоточной работы и создания GUI. Мне кажется стоит включить библиотеку в движок. Может быть, вы поможете портировать библиотеку под windows?

Huldra
Fri, 06 Apr 2018 02:10:11 GMT

В целом это интересная идея, я подумаю

bladez-fate
Fri, 06 Apr 2018 08:20:43 GMT

Неплохо, и компилятор не нужен свой как в Qt. Я бы, наверное, заиспользовал в pilecode, а то моё текущее поделье с лямбдами не особо легко поддерживать. Да и в AE своего пока ничего нет на эту тему, хотя, действительно, каждый кто захочет сделать меню достаточно сложное, чтобы отличаться от Старт/Авторы/Выход, столкнётся с необходимостью подобной библиотеки.

bladez-fate
Fri, 06 Apr 2018 08:21:34 GMT

Кстати, почему edge? У меня разрыв шаблона. Это ведь signal? Или нет?

Huldra
Fri, 06 Apr 2018 09:54:36 GMT

А как вы смотрите на приведение кода к google style guide?

agrianius
Fri, 06 Apr 2018 13:52:28 GMT

Я не против хорошего style guide, но кажется у гугла есть странности. Гугл очень большой, поэтому стайлгайд у них слишком фашисткий. Правила именования классов, методов и полей вполне можно применить.

Huldra
Fri, 06 Apr 2018 13:55:32 GMT

Ок, это уже хорошо

agrianius
Fri, 06 Apr 2018 14:07:32 GMT

Кстати, у гугла есть открытый style guide чекер?

Huldra
Fri, 06 Apr 2018 17:01:42 GMT

В arctic engine tools лежит их lint

bladez-fate
Thu, 02 Aug 2018 09:00:05 GMT

Кстати, тут все заглохло? Меню в играх по-прежнему надо делать. Может в АЕ что-то своё предвидится?

Huldra
Thu, 02 Aug 2018 16:43:15 GMT

Как раз сейчас делаю все для ГУИ: окошки, кнопочки, прокрутку, поля ввода

bladez-fate
Thu, 02 Aug 2018 17:51:54 GMT

Das ist fantastish! Без edge-slot?

Huldra
Thu, 02 Aug 2018 18:03:27 GMT

Пока без