MATLAB Compiler SDK включает расширенную версию MATLAB Production Server для тестирования и отладки разработанных модулей, а также расширений Excel перед их внедрением в web приложения или корпоративные системы.

Программы и модули созданные при помощи MATLAB Compiler SDK могут свободно распространяться и не требуют наличия установленного MATLAB. Разработанные модули и приложения включают в себя весь необходимый набор библиотек MATLAB Runtime и предназначены для полностью автономной работы.

Для генерации C/C++ кода из программ и алгоритмов MATLAB используйте MATLAB Coder.

Ключевые возможности

  • Представление ваших MATLAB приложений и алгоритмов в виде C/C++ библиотек, сборок Microsoft .NET, Java классов.
  • Бесплатное распространение и возможность работать с полученными модулями без MATLAB.
  • Фреймворк для разработки и тестирования MATLAB Production Server при реализации web приложений и корпоративных систем.
  • Возможность шифровать исходный MATLAB код для защиты вашей интеллектуальной собственности.

Выбор языка реализации C/C++, .NET, Java, Python

Для разработчиков, желающих интегрировать MATLAB алгоритмы и подпрограммы в свои собственные приложения, предоставляется полноценный набор инструментов для работы с C/C++, .NET, Java, Python приложениями. Разрабатывая приложения с использованием MATLAB Compiler SDK, вы можете следовать данному рабочему процессу:

1. Разработка приложения или алгоритма в MATLAB
2. Упаковка разработанного алгоритма в специализированный компонент в зависимости от языка программирования, который планируется использовать.
3. Интеграция полученного на предыдущем этапе компонента с целевой средой разработки, например, Visual Studio, Eclipse, Xcode, и др.
4. Завершение интеграции компонента, на локальную машину в случае разработки настольного приложения или на сервер в случае разработки корпоративной системы или web приложения.

MATLAB Compiler SDK предоставляет возможности интегрировать MATLAB алгоритмы в приложения, разработанные при помощи различных языков программирования, наиболее подходящих для каждой конкретной задачи.

С/C++ приложения

С/C++ приложения
С/C++ приложения

Для интеграции с приложениями, разработанными на языках C/C++, MATLAB Compiler SDK, предоставляет следующие возможности:

  • Создание потокобезопасных библиотек
  • Создание динамических библиотек для интеграции с Visual Studio и другими средами для Windows приложений
  • Создание заголовочного файла с сигнатурами разработанных функций, представление самих функций в виде зашифрованной библиотеки

Кроме того, вы можете конвертировать ваш MATLAB код в С/С++ код при помощи MATLAB Coder.

С/C++ приложения С/C++ приложения

.NET и COM приложения

 .NET и COM приложения
.NET и COM приложения
 .NET и COM приложения .NET и COM приложения

Для приложений использующих .NET или COM предоставляются следующие возможности:

  • Генерация .NET или COM оболочек для MATLAB приложений и алгоритмов, т.е. обращение к MATLAB компонентам будет осуществляться таким же образом как и к компонентам .NET/COM.
  • Предоставление доступа к MATLAB функциям и MEX файлам через публичные методы вашего компонента
  • Обращение к созданным .NET компонентам при помощи CLS языков, таких как C#, F#, ASP.NET, VB.NET
  • Вызов COM компонент при помощи VB и ASP
  • Использование type-safe интерфейсов для интеграции с вашим .NET приложением
  • Использование специализированных классов для преобразования типов данных
  • Применение WCF технологии и других, ориентированных на корпоративные системы, фреймворков (SOA)
  • Поддержки API .NET Remoting для запуска вашего класса как постоянного сервиса или выполнения вашего компонента в рамках нескольких процессов

Java приложения

 Java приложения
Java приложения

Для Java приложений MATLAB Compiler SDK предлагает следующие возможности:

  • Генерируйте Java обертку для MATLAB алгоритмов и программ, в результате чего их можно использовать как любой другой Java класс
  • Добавляйте MATLAB или MEX файлы как публичные методы вашего компонента
  • Проверяйте возможность работы созданного компонента на различных платформах (некоторые тулбоксы MATLAB и MEX файлы могут быть платформозависимыми)
  • Осуществляйте конвертацию типов данных между MATLAB функциями и Java окружением для более быстрой и удобной интеграции
  • Организуйте доступ к MATLAB web компонентам, представленным как Java компоненты со следующими сервисами: SOAs, SOAP, WSDL, RMI, HTTP, JSPs
  • Используйте интерфейс удаленного вызова методов (RMI)

 Java приложения Java приложения

Python приложения

Python приложения
Python приложения
Python приложения Python приложения

Для Python приложений MATLAB Compiler SDK предлагает следующие возможности:

  • Генерируйте Python обертки для MATLAB алгоритмов и подпрограмм, включая MEX файлы для того, чтобы сделать их доступными из Python приложений, включая интерактивные сессии
  • MATLAB Compiler SDK осуществляет автоматическую конверсию данных между Python и MATLAB
  • Конвертируйте многомерные массивы данных в развертываемые архивы, которые взаимодействуют со стандартными Python классами
  • Интегрируйте разработанный в MATLAB алгоритм c Python приложением при помощи MATLAB Engine API. В дальнейшем вы можете осуществить развертывание вашей системы при помощи MATLAB Production server или же как самостоятельного Python приложения

Выбирайте любую платформу: desktop, web, enterprise

MATLAB Compiler SDK позволяет вам осуществить развертывание вашей разработки в для различных платформ, начиная от самостоятельного приложения для персонального компьютера и заканчивая корпоративной web системой для десятков тысяч машин. Вы можете выбрать целевую платформу в зависимости от ваших задач, а также от таких факторов как язык разработки или необходимость обеспечения поддержки пользователей.

Все приложения, построенные при помощи MATLAB Complier SDK и использующие компоненты MATLAB, не требуют никаких связей с MATLAB или сервисами MATWORKS и являются полностью самостоятельными. Для индивидуальных приложений все необходимые для работы компоненты устанавливаются на ПК пользователя вместе с приложением, для web систем MATLAB Runtime устанавливается вместе с компонентом на целевой сервер.

Выбирайте инфраструктуру вашей системы

Применение MATLAB Production Server
Применение MATLAB Production Server
Применение MATLAB Production Server Применение MATLAB Production Server

При реализации web системы или корпоративной системы вы можете разработать собственную инфраструктуру или же воспользоваться преимуществами MATLAB Production Server, который позволяет реализовывать расширяемые и защищенные web системы и корпоративные приложения.

В любом случае рабочий процесс реализации системы с применением MATLAB Compiler SDK одинаков, как показано на изображении.

Разработка собственной инфраструктуры

Для разработчиков, которые предпочитают использование собственной инфраструктуры, использование компонентов, разработанных при помощи MATLAB не принесет никаких сложностей, т.к. MATLAB Compiler SDK поддерживает большой набор стандартных технологий: ASP.NET, SOAs, WSDL, SOAP, XML, JavaScript®, HTML, HTTP services, Java servlets, and JSPs, as well as Java RMI and .NET remoting for scalability. Для решений, которые должны обрабатывать огромное количество конкурирующих запросов присутствует возможность создания RMI сервера между приложением и скомпилированным модулем.

MATLAB Compiler SDK поддерживает широкий набор языков программирования и технологий для интеграции с технологическим стеком, используемом в вашей организации.

Применение MATLAB Production Server

Для разработчиков, которые предпочитают использовать наиболее оптимальный путь для построения масшитабируемой и полностью защищенной web системы, MATLAB Compiler SDK предоставляет полный набор инструментов для развертывания разработанного приложения при помощи MATLAB Production Server.
Инструментарий, предоставляемый MATLAB Compiler SDK, включает в себя:

  • Интерактивную среду для отладки алгоритмов, перед их оберткой и конвертацией для интеграции с целевой платформой.
  • Компактные клиентские библиотеки на C/C++, .NET, Java, and Python.
  • Средства для разработки Microsoft Exсel расширений.

После прохождения процедуры разработки и отладки ваших приложений вы можете развернуть их на базе инфраструктуры MATLAB Production Server без временных затрат на ее разработку и обслуживание. Приложения, развернутые на данной инфраструктуре, обладают изначальной масштабируемостью и количество обслуживаемых запросов и разработчиков может быть легко увеличено или уменьшено.

Подготовка и развертывание компонентов

MATLAB Compiler SDK позволяет вам производить подготовку разработанных в MATLAB алгоритмов для интеграции с приложениями, реализованными на других языках программирования и использующих широко распространённые фреймворки. MATLAB Compiler SDK автоматически определяет зависимости и все необходимые файлы и библиотеки для независимой работы разработанных в MATLAB компонентов.
Для разработки наиболее простого и комфортного в использовании приложения MATLAB Compiler SDK предлагает следующие опции:

  • Автоматическую интеграцию MATLAB Runtime для независимой работы вашего приложения или же его скачивание при установке.
  • Проверка зависимостей и интеграция всех необходимых файлов в ваш компонент и включение их в установщик.
  • Захват и интеграцию метаданных среды разработки и ее расширений.