2015-11-08 2 views
3

У меня есть JavaScript/машинопись программы, которые необходимо использовать существующие библиотеки, написанные на Java, C и C++, Python и т.д.программа JavaScript использует программы на других языках

Что является лучшим способом, чтобы облегчить связи?

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

+0

Посмотрите на Edgejs (https://github.com/tjanczuk/edge), который позволяет вам звонить на Python, C# и другие языки из JavaScript (среда node.js). Однако он не поддерживает Java, C и C++. – Don

+0

C/C++ поддерживаются непосредственно при разработке плагинов для v8/nodejs. См. Официальную документацию. – skypjack

ответ

1

Если ваш скрипт TypeScript работает в NodeJs, вы можете запустить внешний процесс, используя Node Child Process.

Если ваш скрипт TypeScript работает в браузере, то HTTP-запрос является самым простым способом.

2

Есть несколько вариантов, чтобы склеить различные библиотеки вместе:

  1. Мостовые модули, которые позволяют назвать библиотеки непосредственно из узла:

  2. очереди

    сообщений, которые будут служить в качестве шины между различными приложениями, как 0MQ или RabbitMQ

  3. Wrap каждая программа/библиотека как веб-службы (как вы предложили)

Смежные вопросы