LiveCode (anteriormente Revolution y MetaCard [2] ) es un sistema de ejecución de desarrollo rápido de aplicaciones multiplataforma [3] inspirado en HyperCard . Cuenta con el LiveCode script lenguaje de programación (antes MetaTalk) que pertenece a la familia de xTalk lenguajes de scripting como HyperCard 's HyperTalk . [4] [5]
Desarrollador (es) | LiveCode Ltd. |
---|---|
Versión inicial | 11 de julio de 2001 |
Lanzamiento estable | 9.6.1 / 19 de agosto de 2020 [1] |
Versión de vista previa | 9.6.2RC2 / 12 de enero de 2021 [1] |
Repositorio | |
Sistema operativo | macOS , Windows , Linux , Unix , Android , iOS , HTML5 |
Tipo | Programación |
Licencia | GPL , propietario |
Sitio web | livecode |
Paradigma | Orientado a objetos |
---|---|
Familia | Lenguaje de escritura |
Desarrollador | LiveCode , Ltd |
Apareció por primera vez | 1993 |
Plataforma | i386, AMD64, BRAZO |
SO | Windows , macOS , Linux , Unix , Raspberry Pi |
Licencia | Propietario , GPL |
Sitio web | livecode |
Influenciado por | |
HyperTalk |
El entorno se introdujo en 2001. [6] El sistema de desarrollo "Revolution" se basó en la tecnología del motor MetaCard que Runtime Revolution adquirió posteriormente de MetaCard Corporation en 2003. [7] [8] La plataforma ganó el premio Macworld Annual Editor's Choice Award por "Mejor software de desarrollo" en 2004. [9] "Revolution" pasó a llamarse "LiveCode" en el otoño de 2010. "LiveCode" es desarrollado y vendido por Runtime Revolution Ltd., con sede en Edimburgo, Escocia. En marzo de 2015, la empresa pasó a llamarse "LiveCode Ltd.", para unificar el nombre de la empresa con el producto. En abril de 2013 una versión de código libre / abierto 'LiveCode Community Edition 6.0' fue publicado después de una exitosa crowdfunding campaña en Kickstarter . [10] El código base se volvió a licenciar y se puso a disposición como software gratuito y de código abierto con una versión en abril de 2013.
LiveCode se ejecuta en iOS , Android , OS X , Windows 95 a Windows 10 , Raspberry Pi y varias variaciones de Unix, incluidos Linux, Solaris y BSD. Se puede utilizar para aplicaciones móviles, de escritorio y de servidor / CGI. La versión para iOS (iPhone y iPad) se lanzó en diciembre de 2010. [11] [12] La primera versión para implementar en la Web se lanzó en 2009. [13] Es el clon de HyperCard / HyperTalk más utilizado, [ cita requerida ] y el único que se ejecuta en todos los principales sistemas operativos.
El 12 de marzo de 2015 se anunció en Nueva York una versión para desarrolladores de la versión 8. Esta importante mejora del producto incluye un nuevo lenguaje de desarrollo independiente, conocido como "LiveCode Builder", que es capaz de crear nuevas clases de objetos llamadas "widgets ". En versiones anteriores, el conjunto de clases de objetos era fijo y solo podía mejorarse mediante el uso de lenguajes procedimentales ordinarios como C. El nuevo lenguaje, que se ejecuta en su propio IDE , es una desviación del paradigma transicional x-talk en que permite escribir variables. Pero los dos entornos están completamente integrados y, además de la capacidad de crear nuevos objetos, el desarrollo en LiveCode procede de la manera normal, dentro del IDE establecido.
Una segunda campaña de crowdfunding para llevar HTML5 a LiveCode alcanzó objetivos de financiación de casi $ 400.000 USD el 31 de julio de 2014. LiveCode Developer Release 8.0 DP4 (31 de agosto de 2015) fue el primero en incluir una opción de implementación independiente para HTML5 .
Descripción
El software LiveCode crea aplicaciones que se ejecutan en muchos entornos compatibles, utilizando un flujo de trabajo sin compilación. El mismo código de computadora en LiveCode puede reproducirse en múltiples dispositivos y plataformas. LiveCode utiliza un lenguaje de programación similar al inglés de alto nivel llamado Transcript que se escribe dinámicamente. El flujo de trabajo libre de transcripción y compilación genera código que se autodocumenta y fácil de comprender para los programadores ocasionales. Por ejemplo, si la siguiente secuencia de comandos se ejecutó cuando el reloj del sistema estaba a las 9:00:00 a. M.:
repetir diez veces poner "Hola mundo en" && el largo tiempo y volver después del campo 1 espera 1 segundo fin de repetir
Se cargarán diez líneas en el primer campo de texto. (denotado como "campo 1") y visto como:
Hola mundo a las 9:00:00 AMHola mundo a las 9:00:01 a. M.Hola mundo a las 9:00:02 AM...
Notas:
repeat
(y el asociadoend repeat
) es una estructura de control, ilustrada aquí en solo una de sus diversas formas.put
es un comando"Hello World at"
es un literalthe long time
es una función que llama a la hora del sistemareturn
es una constante igual al carácter ASCII 10 (salto de línea)after
es una palabra clave que está relacionada con un sistema extremadamente poderoso e intuitivo conocido como "fragmentación", un sello distintivo de los lenguajes xTalk.field 1
es una referencia de objeto, aquí denotado por el número de capa de un campo de texto. Casi todas las clases de objetos estándar son compatibles y se puede hacer referencia a ellas de varias formas muy intuitivas.
La sintaxis natural similar al inglés de LiveCode es fácil de aprender para los principiantes. Las variables no tienen tipo y se escriben en tiempo de compilación basándose puramente en el contexto. Esto hace que el idioma sea fácil de leer y mantener, con una pérdida de velocidad relativamente mínima. El lenguaje contiene características avanzadas que incluyen matrices asociativas , [14] expresiones regulares , multimedia, soporte para una variedad de bases de datos SQL y bibliotecas TCP / IP . El motor LiveCode admite varios formatos de imagen comunes (incluidos BMP, PNG, GIF y JPEG), gráficos vectoriales suavizados, hipervínculos de texto estilo HTML, comportamientos encadenados y navegadores web integrados. El acceso a estas funciones de nivel superior está diseñado para ser sencillo.
Ejemplos de
- Para cargar el código fuente de una página web en una variable se necesita una línea de código:
poner la URL "http://www.wikipedia.com" en MyVariable
- La carga de un archivo a un servidor FTP utiliza una sintaxis similar:
poner url "binfile: picture.jpg" en url "ftp: // john: [email protected]: 2121 / picture.jpg"
Profundidad
LiveCode tiene alrededor de 2.950 términos y palabras clave de lenguaje incorporados, que pueden ampliarse mediante bibliotecas externas escritas en C y otros lenguajes de nivel inferior. [15] [16]
Resultados
Los archivos de proyecto de LiveCode son compatibles con archivos binarios en todas las plataformas. Heredan la apariencia y el comportamiento de cada plataforma. Los botones, barras de desplazamiento, barras de progreso y menús se comportan como se espera en la plataforma de destino sin ninguna intervención por parte del autor de la aplicación LiveCode.
La compilación de un LiveCode "independiente" produce un único archivo ejecutable (tamaño mínimo ~ 1,5 MB) para cada plataforma de destino. No es necesario un tiempo de ejecución independiente.
El artículo de Wikipedia sobre HyperCard contiene una discusión más detallada sobre los conceptos básicos de un entorno de desarrollo y un lenguaje de secuencias de comandos similares. Modern LiveCode es un vasto superconjunto de la antigua HyperCard pero conserva su simplicidad. LiveCode incluye una serie de características que faltan en el programa HyperCard original, incluida la implementación de múltiples plataformas, la comunicación con dispositivos externos y muchas extensiones de idioma fundamentales. El kit de herramientas LiveCode, en comparación con HyperCard, tiene la capacidad de acceder a recursos multimedia y de texto basados en Internet, lo que permite la creación de aplicaciones de escritorio habilitadas para Internet. [17]
Compatibilidad
Versión | Macintosh | Ventanas | Linux |
---|---|---|---|
9.x [18] | 10.9.x - 10.13.x Intel | 7, 2008, Windows 8.x, Windows 10.x (escritorio) | 32 o 64 bits, ARMv6 de 32 bits (Raspberry Pi) glibc glib gtk / gdk lcms pango / xft gksu esd mplayer |
8.x [19] | 10.6.x - 10.12.x Intel | XP SP2 +, 2003, Vista SP1 +, 7, 2008, Windows 8.x, Windows 10.x (escritorio) | ARMv6 de 32 o 64 bits (Raspberry Pi) glibc gtk lcms pango / xft gksu esd mplayer |
7.x [20] | 10.6.x - 10.9.x Intel | XP SP2 +, 2003, Vista SP1 +, 7, 2008, Windows 8.x, Windows 10.x (escritorio) | ARMv6 de 32 o 64 bits (Raspberry Pi) glibc gtk lcms pango / xft gksu esd mplayer |
6.7.x [21] | 10.6.x - 10.9.x Intel | XP SP2 +, 2003, Vista SP1 +, 7, 2008, Windows 8.x, Windows 10.x (escritorio) | 2.4.x + 32 bits X11R5 glibc 2.3.2 gtk lcms pango / xft gksu |
6.6.x [22] | 10.5.8 - 10.9.x Intel / PPC | XP SP2 +, 2003, Vista SP1 +, 7, 2008, Windows 8.x, Windows 10.x (escritorio) | 2.4.x + 32 bits X11R5 glibc 2.3.2 gtk lcms pango / xft gksu |
6.0.x - 6.5.x [23] | 10.4.11 - 10.9.x Intel / PPC | XP SP2 +, 2003, Vista SP1 +, 7, 2008, Windows 8.x, Windows 10.x (escritorio) | 2.4.x + 32 bits X11R5 glibc 2.3.2 gtk lcms pango / xft gksu |
5.x [24] | 10.4.11 - 10.8.x Intel / PPC | 2000 SP4, XP SP2 +, 2003, Vista SP1 +, 7, 2008 | 2.4.x + 32 bits X11R5 glibc 2.3.2 gtk lcms |
4.6.x [25] | 10.4.11 - 10.8.x Intel / PPC | 2000 SP4, XP SP2 +, 2003, Vista SP1 +, 7, 2008 | 2.4.x + 32 bits X11R5 glibc 2.3.2 gtk lcms |
4.5.x [26] | 10.3.9 - 10.8.x Intel / PPC | 2000 SP4, XP SP2 +, 2003, Vista SP1 +, 7, 2008 | 2.4.x + 32 bits X11R5 glibc 2.3.2 gtk lcms |
4.0.x | ? | ? | ? |
3.x | ? | ? | ? |
2.6.x [27] | 10.2.7 - 10.6.x Intel / PPC, 9.2.2 PPC | 98, yo, NT, 2000, XP, Vista | 2.4+ 32 bits X11R5 glibc 2.2.4 gtk lcms |
Los destinos iOS y Android están disponibles en algunas versiones.
Nota: Los requisitos completos de Linux para 4.5.x-6.x son los siguientes:
- Instalación de 32 bits o una distribución de Linux de 64 bits que tiene una capa de compatibilidad de 32 bits
- Kernel 2.4.xo posterior
- Xserver compatible con X11R5 que se ejecuta localmente en una pantalla de 24 bits
- glibc 2.3.2 o posterior
- gtk / gdk / glib (opcional, requerido para compatibilidad con temas nativos)
- pango / xft (opcional, necesario para la impresión de pdf, texto suavizado y compatibilidad con fuentes Unicode)
- lcms (opcional - requerido para el soporte de perfil de color en JPEG y PNG)
- gksu (opcional - requerido para elevar el soporte del proceso)
Ver también
- MetaCard , Runtime Revolution adquirió la tecnología MetaCard, en la que se basa su sistema de desarrollo, en 2003.
- HyperCard , progenitor de todos los lenguajes xTalk.
Referencias
- ^ a b "Todas las descargas de LiveCode" . livecode.com . LiveCode Ltd . Consultado el 10 de marzo de 2021 .
- ^ MacNN: RunRev reemplaza Revolution con "LiveCode"
- ^ PCWorld: Herramienta de desarrollo para Mac OS X y Vista. Archivado el 25 de diciembre de 2011 en Wayback Machine.
- ^ Shafer, Dan (2004). "Revisión: Revolución en tiempo de ejecución, programación para simples mortales" . MacTech . 20 (5).
Revolution ... surge de HyperCard, un producto Apple Computer muy querido y ampliamente utilizado que la compañía abandonó hace unos años ...
- ^ Manchester, Phil (27 de diciembre de 2007). "HyperCard con esteroides: un código para vincularlos a todos" . El registro.
- ^ Macworld: Runtime lanza Revolution 1.1 para OS X
- ^ Macworld: Runtime Revolution adquiere la tecnología MetaCard
- ^ "Runtime Revolution adquiere la tecnología MetaCard" . 8 de julio de 2003. Archivado desde el original el 3 de febrero de 2004.
- ^ "Los 19 premios anuales de elección del editor" . Macworld . 2004.
HyperCard, con su metáfora de pilas, tiene un nuevo heredero en Revolution Studio 2.1 de Runtime Revolution.
- ^ "LiveCode de próxima generación (código abierto)" .
- ^ Tiempos de desarrollo de software : Runtime Revolution lanza el paquete de implementación de iOS
- ^ Ranscombe, Peter (7 de diciembre de 2010). "RunRev apunta a un aumento de las ventas de 1 millón de libras esterlinas con el lanzamiento de LiveCode" . El escocés.
- ^ Miller, Kevin (22 de abril de 2009). "¿Un lenguaje fácil de usar atraerá a expertos en contenido?" . Documento de conferencia WWW2009.
- ^ Tutorial: Uso de matrices en LiveCode
- ^ Monroe, Tim (2003). "Hijos de la revolución: edición de películas QuickTime en Revolution" . MacTech . 19 (10).
Afortunadamente, Runtime Revolution proporciona un kit de desarrollo de software (SDK) para escribir complementos de Revolution, y esto hace que escribir nuestro complemento sea muy fácil.
- ^ Waddingham, Mark (4 de octubre de 2007). "Escritura de externos para Linux con 2.9" . Boletín de Runtime Revolution . Runtime Revolution, Ltd.
- ^ Gaskin, Richard (20 de septiembre de 2001). "Más allá del navegador, redescubriendo el papel del escritorio en un mundo centrado en la red" . Artículos de la Embajada del Cuarto Mundo . Consulte la Sección 5. Herramientas para crear aplicaciones de red.
- ^ https://livecodestatic.com/downloads/livecode/9_5_0/LiveCodeNotes-9_5_0.pdf
- ^ http://downloads.livecode.com/livecode/8_0_0/LiveCodeNotes-8_0_0_dp_4.pdf
- ^ http://downloads.livecode.com/livecode/7_0_0/LiveCodeNotes-7_0_0.pdf
- ^ http://downloads.livecode.com/livecode/6_7_0/LiveCodeNotes-6_7_0.pdf
- ^ http://downloads.livecode.com/livecode/6_6_5/LiveCodeNotes-6_6_5.pdf
- ^ http://downloads.livecode.com/livecode/6_5_2/LiveCodeNotes-6_5_2.pdf
- ^ http://www.runrev.com/downloads/livecode/5_5_0/LiveCodeNotes-5_5_0.pdf
- ^ http://www.runrev.com/downloads/livecode/4_6_0/LiveCodeNotes-4_6_0.pdf
- ^ http://www.runrev.com/downloads/livecode/4_5_0/LiveCodeNotes-4_5_0.pdf
- ^ "Copia archivada" (PDF) . Archivado desde el original (PDF) el 21 de diciembre de 2012 . Consultado el 1 de mayo de 2013 .CS1 maint: copia archivada como título ( enlace )
Bibliografía
- Lavieri, Edward. HotSHOT de desarrollo móvil de LiveCode
- Holgate, Colin. Guía para principiantes de desarrollo móvil de LiveCode
- Schonewille, Mark. Programación de LiveCode para principiantes
- Shafer, Dan . Revolution: Software a la velocidad del pensamiento, Volumen 1 (Runtime Revolution Ltd, 2003)
- Wang, Wallace. Programación inicial para principiantes, cuarta edición
enlaces externos
- Página web oficial