Я пишу многопользовательскую браузерную игру в режиме реального времени в JavaScript. Поэтому я запускаю JS на сервере (Node.js) и в браузере. Из-за этого я хотел бы поделиться кодом между этими двумя контекстами.Обмен кодами между браузером и сервером (наследование)
Я решил разделить код на три части: ядро, клиент и сервер. Как вы, возможно, подозревали, что я использую Core для кода, который нам нужен с обеих сторон, Клиент и Сервер.
До сих пор я только что расширил соответствующий класс ядра, например. Клиент/проигрыватель расширяет Core/Player, который работает отлично.
Теперь я вижу, что, например, клиент/Игрок должен расширить базовый/плеер, чтобы получить имя атрибута и в то же время необходимо расширить Client/GameObject получить метод визуализации() и физику атрибут.
Если бы это было написано на C++, я мог бы попытаться использовать множественное наследование со всеми его недостатками. Но поскольку он написан на JavaScript, я не уверен, как это решить. Есть идеи?