Tiendil
#1
[НБ] Магистр
могущество: 14658
разработчик
дварф Халлр
105 уровня
Поскольку я потихоньку переделываю Сказку на микросервисы, то появилась возможность писать её на разных языках.

При этом микросервисы должны предоставлять только фиксированный API (с использованием https://developers.google.com/protocol-buffers/), сам сайт всё ещё будет на Python.

ЯП, которые готов рассматривать: JavaScript, Go, C, C++.
ЯП, которые точно не рассматриваются: Java и всё производное, C#, Ruby, PHP, Perl, Pascal.

Кому-нибудь было бы интересно влиться в разработку в таких условиях?

Есть, правда, ряд требований, которые придётся выполнить самостоятельно:

- Реализовать поддержку протокола, основанного на Protocol Buffers.
- Обеспечить поддержку миграций базы, если таковая потребуется для сервиса.
- При интеграции сервиса в игру потребуется всё равно писать на Python (не думаю, что много).
- Реализовать поддержку автоматического тестирования и написать много-много тестов.
- Интегрироваться в деплой.

Чего можно реализовать:

- Можно взять любую часть из текущего монолитного проекта и вынести в сервис (самые очевидные примеры: форум (без gui), сервис рассылки почты, сервис генерации информеров для форума, etc.);
- Можно придумать какую-нибудь новую функциональность, не сильно зависимую от основной игры.
- Ещё хочу сделать отдельную точку входа для внешнего api Сказки, чтобы оно не пересекалось с сайтом. Практика показыват, что удобно их объединять не получается.



Сообщение изменено
val
#2
без гильдии
могущество: 6

дварф Тихонатор
44 уровня
Почему Java не рассматривается?
Tiendil
#3
[НБ] Магистр
могущество: 14658
разработчик
дварф Халлр
105 уровня
По идеологическим причинам: громоздкий язык с медленным процессом разработки.
tihon
#4
без гильдии
могущество: 0

дварф Фили
43 уровня
Отчего тогда С/С++ рассматриваются? У них процесс разработки ещё более медленный. Один поиск утечек памяти чего стоит.
Tiendil
#5
[НБ] Магистр
могущество: 14658
разработчик
дварф Халлр
105 уровня
С/С++ рассматривается как средство хардкорной оптимизации кода. Если потребуется что-нибудь радикально ускорить (например, обновление карты), то это на них можно сделать.

Ну а проблемы с памятью зависят больше от человека, чем от языка. Жизненный цикл сущностей надо на любом языке прорабатывать. У меня 5 лет опыта на плюсах и ни одной утечки не помню.
CrazyNiger
#6
[DRAGO] Магистр
могущество: 9737
длань судьбы
мужчина Злобный Дракон
261 уровня
Tiendil
ни одной утечки не помню.
Ты просто про них не знал
//Шютка юмора =)