bloqueley | |
---|---|
Tipo de | programación visual , lenguaje de programación y biblioteca de funciones |
Autor | Google [1] |
Desarrolladores |
Neil Fraser Ellen Spertus Mark Friedman |
Escrito en | JavaScript |
Primera edición | 2012 |
plataforma de hardware | web |
ultima versión |
|
Licencia | licencia apache |
Sitio web | desarrolladores.google.com/bl… |
Archivos multimedia en Wikimedia Commons |
Blockly es una biblioteca para crear un entorno de programación visual que se puede incrustar en una aplicación web arbitraria . Blockly incluye un editor gráfico que le permite crear programas a partir de bloques y generadores de código para preparar la ejecución del programa en un entorno de aplicación web [3] [4] .
Desarrollado y respaldado por Google desde 2012. Distribuido gratuitamente con código fuente bajo la licencia Apache 2.0 .
El público objetivo del proyecto son los programadores que desarrollan aplicaciones web que incluyen Blockley, principalmente con fines educativos.
Para crear programas, el usuario debe mover bloques gráficos sin tener que escribir, excepto para ingresar valores constantes. La programación visual en Blockley libera al usuario del control sobre la corrección de la sintaxis del programa, lo que es de gran ayuda en la etapa de formación inicial del usuario en programación.
Al alojar una aplicación web con Blockly en Google App Engine , el usuario puede guardar el programa creado en la nube de Google con posible acceso al programa por parte de otros usuarios.
El código fuente abierto y gratuito, la documentación de las interfaces de Blockley, la internacionalización del proyecto atrae a los programadores que desarrollan aplicaciones que incluyen Blockley to Blockley. Como resultado, la cantidad de usuarios finales de Blockley es de decenas de millones [5] .
Blockley se centró inicialmente en la internacionalización, el núcleo de Blockley se ha traducido a docenas de idiomas, incluido el ruso [6] . Para facilitar la traducción a otros idiomas de los proyectos Blockly y Blockly Games, los desarrolladores del proyecto han abierto la sección correspondiente en la plataforma wiki Translatewiki.net [7] [8] .
Los autores llaman al sistema App Inventor el predecesor inmediato de Blockley . App Inventor, por su parte, como muchos otros sistemas de esta clase, debe su aparición al éxito del conocido sistema Scratch . Neil Fraser escribió Blockley para reemplazar la biblioteca OpenBlocks utilizada en AppInventor [ 9] , en cuya capacidad, entre otras cosas, se utiliza actualmente.
Blockley fue lanzado en 2012.
Autores: Neil Fraser , con contribuciones de Ellen Spertus y Mark Friedman .
Versiones: Blockley no se enfoca en lanzamientos a largo plazo: a fines de 2014, el producto se actualiza continuamente y la última versión está disponible en GitHub .
Blockley se implementa como una biblioteca de archivos JavaScript . Blockly se puede integrar en una aplicación web [10] . Es posible ampliar el lenguaje visual de Blockly definiendo nuevos bloques, incluida la configuración de la forma de este bloque (y las formas de cambiarlo dinámicamente) y el código de programa generado por este bloque [11] .
Blockly se ejecuta del lado del cliente, es decir, se puede utilizar sin un servidor web.
El editor de gráficos Blockly opera con dos tipos de objetos: bloques e inserciones.
Los bloques representan declaraciones, estructuras de control, procedimientos, funciones, llamadas a procedimientos en el lenguaje. Las inserciones se utilizan para decorar constantes, expresiones y llamadas a funciones. Compilar un programa con un editor gráfico es como armar un rompecabezas que ha sido cortado en pedazos. Después de compilar el programa, puede llamar al generador de código y ejecutar el código generado en un entorno de aplicación web que incluye Blockly.
El editor gráfico ejerce un control parcial sobre los tipos, evitando el uso de inserciones del tipo incorrecto en situaciones elementales.
El conjunto de estructuras de control en el núcleo de Blockley es tradicional para los lenguajes de programación de procedimientos: estos son varios tipos de bucles y declaraciones condicionales.
Blockly te permite crear procedimientos y funciones con parámetros.
Un conjunto bastante desarrollado de funciones algebraicas y trigonométricas está integrado en el lenguaje, se admite un conjunto completo de expresiones lógicas.
El lenguaje contiene un conjunto de procedimientos para trabajar con texto y listas.
Todas las variables de Blockley son globales.
Blockly funciona con los siguientes tipos de datos: números, cadenas, booleanos, colores. El control de tipos se lleva a cabo parcialmente: el editor no permite el uso de inserciones donde no se ajustan al tipo, pero en construcciones más complejas, es posible que no coincidan los tipos.
Blockly de E/S incorporado solo proporciona entrada y salida de teclado rudimentarias de expresiones individuales en una ventana emergente.
A finales de 2014, el código de Blockley incluye un conjunto de generadores de código para los siguientes lenguajes: JavaScript , Python , Dart . El resultado de los generadores puede estar disponible para el usuario a través de una interfaz gráfica. Esta característica permite que Blockley se utilice en la enseñanza de lenguajes de programación industrial .
Un ejemplo del uso de Blockly son aplicaciones educativas como Blockly Games, en la versión rusa: "Juegos para futuros programadores". [12] [13] .
La organización code.org [14] ha desarrollado una serie de cursos basados en Blockley para la educación inicial en programación. Estos cursos son muy populares en todo el mundo, especialmente durante la campaña "La Hora del Código" [15] . A finales de 2014, los campos se rusificaron parcialmente.
Otra escuela de programación en línea, Made with Code [16] está dirigida a niñas [17] . Google ha invertido 50 millones de dólares en este proyecto [13] .
Las versiones modernas de App Inventor usan Blockly como un editor visual de programas. La página del proyecto Blockly en Google proporciona enlaces a una serie de otros juegos educativos y aplicaciones web [18] .
BlocklyDuino [19] es un editor gráfico para programar controladores Arduino , popular en robótica educativa y amateur.
LearnToMod [20] es una extensión comercial de Minecraft que permite a los usuarios crear sus propias modificaciones del juego utilizando Blockly o JavaScript puro [21] .
Verge3D es un motor 3D basado en navegador que exporta escenas directamente desde editores estándar ( Autodesk 3ds Max , Blender ), con la capacidad de agregar escenarios interactivos usando la extensión Blockley's Puzzles [22] .
En la clase de software para educación elemental en programación en ruso, conviene comparar Blokli con el también rusificado sistema Scratch . Según los educadores, las aplicaciones de Blockley encajan mejor en el proceso de aprendizaje que Scratch [23] .
Los educadores han utilizado con éxito las aplicaciones de Blockley para actividades para popularizar la programación entre los escolares [24] .
En el mundo de habla inglesa, la cantidad de lenguajes de programación visual para la educación es notablemente mayor, pero el éxito de los cursos de capacitación basados en Blockley creados por la organización estadounidense sin fines de lucro code.org [25] también distingue a Blockley allí.