Каковы недостатки объявления классов case Scala?

Если вы пишете код, использующий множество красивых, неизменяемых структур данных, классы case кажутся находкой, предоставляя вам все следующее бесплатно с всего одно ключевое слово: весь движок игры написан на C #, и я хотел бы знать, могу ли я вызывать функции этой существующей сборки (.dll) из решения, созданного с использованием Node.JS, Socket.IO, Express и т. д.?

Сам игровой движок довольно полный; проверено и надежно. Я надеюсь, что есть какой-нибудь изящный способ раскрыть его функциональность без особых накладных расходов.

ОБНОВЛЕНИЕ :

Чтобы немного ответить на мой собственный вопрос .. Я закончил создание собственного сервера веб-сокетов (на основе самого последнего документа протокола веб-сокетов). Он написан на C # и скомпилирован с использованием Mono, поэтому его можно разместить на Linux, работающем в моно, и поэтому (с некоторыми настройками) я могу использовать свой существующий игровой движок.

ОБНОВЛЕНИЕ 2 Сейчас существует проект, который делает именно то, что я искал изначально - http://tjanczuk.github.io/edge/#/

ОБНОВЛЕНИЕ 3 Edge.js поддерживает последние версии узла и ядро ​​.net с помощью нового пакета edge-js .

Поддержка Node.Js 6.x, 7.x, 8.x, 9.x, 10.x, 11.x Поддержка .NET Core 1.0.1 - 2.x в Windows / Linux / macOS. Поддержка среды выполнения Mono 4.8.x - 5.x.

Можно установить с https://www.npmjs.com/package/edge-js

58
задан Hamit YILDIRIM 20 May 2019 в 20:47
поделиться