Как я могу назвать DLL от языка сценариев?

Конечно, не совсем понятно, какой вариант выбрать - поэтому я понимаю, почему вы задаете вопрос

Я потратил около двух лет на работу с JavaScript, прежде чем познакомился с TypeScript через Angular. Мне нравится работать с TS сейчас, в частности, завершение кода, которое я получаю в VSCode, и возможность статически печатать модели и параметры с интерфейсами - очень полезно для больших команд

Сказав это, я рад, что у меня была солидная JS тональный крем, прежде чем поднять TS. Я бы посоветовал изучать React с помощью JavaScript, пока вы не освоитесь с ним. Кроме того, сообщество React преимущественно использует JS, поэтому это должно быть ключевым фактором

9
задан brian d foy 27 October 2008 в 16:33
поделиться

5 ответов

Один способ назвать библиотеки C из Python состоит в том, чтобы использовать ctypes:

>>> from ctypes import *
>>> windll.user32.MessageBoxA(None, "Hello world", "ctypes", 0);
15
ответ дан 4 December 2019 в 06:23
поделиться

В Perl, Win32:: API является простым способом к некоторому взаимодействию через интерфейс к DLLs. Там также Встроено:: C, если у Вас есть доступ к компилятору и заголовкам окон.

Perl XSUBs может также создать интерфейс между Perl и C.

12
ответ дан 4 December 2019 в 06:23
поделиться

В Perl P5NCI также сделает это по крайней мере в некоторых случаях. Но мне кажется, что что-нибудь, Вы используете это непосредственно, справляется, взаимодействие через интерфейс с dll будет недружелюбным пользователем, и если Вы собираетесь иметь пользователя (сценарист?) дружественная обертка, это мог бы также быть модуль XS.

Я предполагаю, что не вижу значимого различия между "компиляцией и отсылаю исполняемые файлы", и "компилируют и отсылают сценарии".

5
ответ дан 4 December 2019 в 06:23
поделиться

Для Python Вы могли скомпилировать расширение, которое связывается с DLL, так, чтобы в Python Вы могли просто импортировать его как нормальный модуль. Вы могли сделать это вручную, при помощи библиотеки как Повышение. Python, или при помощи инструмента, такого как БОЛЬШОЙ ГЛОТОК (который также поддерживает Perl и другие языки сценариев) генерировать обертку автоматически.

4
ответ дан 4 December 2019 в 06:23
поделиться

API-функция Python Py_InitModule позволяет Вам создавать модуль из c/c ++ функции, которые могут затем быть вызовом из Python.

Проводит приблизительно приблизительно дюжина строк c/c ++ код для достижения, но это - довольно легкий код для записи:

https://python.readthedocs.org/en/v2.7.2/extending/extending.html#the-module-s-method-table-and-initialization-function

Редактор Zeus, которого я записал, использует этот appoach, чтобы позволить макросам Zeus быть записанными в Python, и это работает очень хорошо.

3
ответ дан 4 December 2019 в 06:23
поделиться