LiveCode (ранее Revolution и MetaCard [3] ) — это кроссплатформенная [4] система выполнения быстрой разработки приложений , вдохновленная HyperCard . Он оснащен языком программирования LiveCode Script (ранее MetaTalk), который принадлежит к семейству языков сценариев xTalk , например HyperTalk от HyperCard . [5] [6]
Среда была представлена в 2001 году. [7] Система разработки «Revolution» была основана на технологии движка MetaCard , которую Runtime Revolution позже приобрела у MetaCard Corporation в 2003 году. [8] [9] Платформа получила награду Macworld Annual Editor's Choice Award за «Лучшее программное обеспечение для разработки» в 2004 году. [10] Осенью 2010 года «Revolution» было переименовано в «LiveCode». «LiveCode» разрабатывается и продается компанией Runtime Revolution Ltd., базирующейся в Эдинбурге, Шотландия. В марте 2015 года компания была переименована в «LiveCode Ltd.», чтобы унифицировать название компании с продуктом. В апреле 2013 года после успешной краудфандинговой кампании на Kickstarter была опубликована бесплатная версия с открытым исходным кодом LiveCode Community Edition 6.0 . [11] База кода была повторно лицензирована и стала доступна как бесплатное программное обеспечение с открытым исходным кодом , версия которого выпущена в апреле 2013 года.
LiveCode работает на iOS , Android , OS X , Windows 95 – Windows 10 , Raspberry Pi и нескольких вариантах Unix, включая Linux, Solaris и BSD. Его можно использовать для мобильных, настольных и серверных/CGI-приложений. Версия для iOS (iPhone и iPad) была выпущена в декабре 2010 года. [12] [13] Первая версия для развертывания в Интернете была выпущена в 2009 году . [14] Это наиболее широко используемый клон HyperCard/HyperTalk, [ нужна ссылка] ] и единственный, который работает на всех основных операционных системах.
О выпуске версии 8 для разработчиков было объявлено в Нью-Йорке 12 марта 2015 года. Это существенное усовершенствование продукта включает в себя новый отдельный язык разработки, известный как «LiveCode Builder», который способен создавать новые классы объектов, называемые «виджетами». ". В более ранних версиях набор объектных классов был фиксированным и мог быть расширен только за счет использования обычных процедурных языков, таких как C. Новый язык, работающий в собственной IDE , представляет собой отход от переходной парадигмы x-talk в что он позволяет типизировать переменные. Но две среды полностью интегрированы, и помимо возможности создания новых объектов, разработка в LiveCode протекает обычным образом, в рамках установленной IDE.
Вторая краудфандинговая кампания по внедрению HTML5 в LiveCode 31 июля 2014 года достигла цели в размере почти 400 000 долларов США. Версия 8.0 DP4 для разработчиков LiveCode (31 августа 2015 года) была первой, включившей опцию автономного развертывания в HTML5 .
31 августа 2021 года, начиная с версии 9.6.4, выпуск LiveCode Community под лицензией GPL был прекращен. [2]
Программное обеспечение LiveCode создает приложения, которые работают во многих поддерживаемых средах, используя рабочий процесс, не требующий компиляции. Один и тот же компьютерный код в LiveCode может воспроизводиться на нескольких устройствах и платформах. LiveCode использует высокоуровневый английский язык программирования под названием Transcript, который является динамически типизированным. Рабочий процесс, не требующий расшифровки и компиляции, создает самодокументируемый код, который легко понять обычным программистам. Например, если следующий сценарий был выполнен, когда системные часы были в 9:00:00:
повторить десять раз поместите «Hello world at » && долгое время и вернитесь после поля 1 подожди 1 секунду конец повтора
В первое текстовое поле будут загружены десять строк. (обозначается как «поле 1») и рассматривается как:
Привет, мир, в 9:00:00.Привет, мир, в 9:00:01.Привет, мир, в 9:00:02....
Примечания:
repeat
(и связанный с ней end repeat
) — это структура управления, показанная здесь лишь в одной из ее различных форм.put
это команда"Hello World at"
это буквальныйthe long time
это функция, которая вызывает системное времяreturn
— константа, равная 10-му символу ASCII (перевод строки)after
— это ключевое слово, связанное с чрезвычайно мощной и интуитивно понятной системой, известной как «фрагментирование», отличительной чертой языков xTalk.field 1
— это ссылка на объект, обозначаемая здесь номером слоя текстового поля. Поддерживаются почти все стандартные классы объектов, и к ним можно обращаться несколькими интуитивно понятными способами.Естественный английский синтаксис LiveCode легко освоить новичкам. Переменные не имеют типов и типизируются во время компиляции исключительно на основе контекста. Это делает язык простым для чтения и поддержки с относительно минимальной потерей скорости. Язык содержит расширенные функции, включая ассоциативные массивы , [15] регулярные выражения , мультимедиа, поддержку различных баз данных SQL и библиотек TCP/IP . Движок LiveCode поддерживает несколько распространенных форматов изображений (включая BMP, PNG, GIF и JPEG), векторную графику со сглаживанием, текстовые гиперссылки в стиле HTML, цепочки действий и встроенные веб-браузеры. Доступ к этим функциям более высокого уровня спроектирован так, чтобы быть простым.
поместите URL-адрес «http://www.wikipedia.com» в MyVariable
поместите URL-адрес "binfile:picture.jpg" в URL-адрес "ftp://john:[email protected]:2121/picture.jpg"
LiveCode имеет около 2950 встроенных языковых терминов и ключевых слов, которые могут быть расширены внешними библиотеками, написанными на C и других языках более низкого уровня. [16] [17]
Файлы проекта LiveCode бинарно совместимы на разных платформах. Они наследуют внешний вид и поведение каждой платформы. Кнопки, полосы прокрутки, индикаторы выполнения и меню ведут себя на целевой платформе ожидаемым образом без какого-либо вмешательства со стороны автора приложения LiveCode.
При компиляции «автономного» LiveCode создается один исполняемый файл (минимальный размер ~ 1,5 МБ) для каждой целевой платформы. Нет необходимости в отдельной среде выполнения.
Статья в Википедии о HyperCard содержит более подробное обсуждение основ подобной среды разработки и языка сценариев. Современный LiveCode представляет собой обширную расширенную версию прежней HyperCard , сохраняя при этом свою простоту. LiveCode включает в себя ряд функций, отсутствующих в исходной программе HyperCard, включая развертывание на нескольких платформах, связь с внешними устройствами и множество фундаментальных языковых расширений. Набор инструментов LiveCode, по сравнению с HyperCard, имеет возможность доступа к текстовым и мультимедийным ресурсам в Интернете, что позволяет создавать настольные приложения с поддержкой Интернета. [18]
Целевые устройства iOS и Android доступны в некоторых версиях.
Примечание. Полные требования Linux для версий 4.5.x-6.x следующие:
Поэтому на данный момент мы приняли решение прекратить поддержку версий LiveCode с открытым исходным кодом.
Конечно, вы можете продолжать использовать существующие версии с открытым исходным кодом, и код останется видимым на github для просмотра.
Проект больше не будет принимать пожертвования, и мы не будем поддерживать его или предлагать загрузки с открытым исходным кодом на нашем сайте.
Революция... выросла из HyperCard, любимого и широко используемого продукта Apple Computer, от которого компания отказалась несколько лет назад...
У HyperCard, с ее метафорой стеков, появился новый наследник — Revolution Studio 2.1 от Runtime Revolution.
К счастью, Runtime Revolution предоставляет комплект разработки программного обеспечения (SDK) для написания плагинов Revolution, и это упрощает написание нашего плагина.
{{cite web}}
: CS1 maint: архивная копия в заголовке ( ссылка )