PWCT (Programming Without Coding Technology) es un lenguaje de programación visual de código abierto y gratuito para el desarrollo de software . [1] [2] [3] [4] El proyecto se fundó en diciembre de 2005 como un proyecto de código abierto gratuito que apoya el diseño de aplicaciones a través de la programación visual y la posterior generación del código fuente. El software admite la generación de código en muchos lenguajes de programación textual . [5] [6] [7] [8]
Meta
PWCT está diseñado para ser un lenguaje de programación visual de propósito general que se puede utilizar para el desarrollo de aplicaciones y sistemas. [9] [10] [11] PWCT también se puede utilizar para introducir conceptos de programación.
El entorno admite una dimensión temporal en la que el programador puede reproducir programas como si fueran una película para aprender a crearlos paso a paso y comprender mejor la lógica del programa. El cambio de tiempo se realiza mediante un control deslizante de línea de tiempo que permite al programador seleccionar un punto específico en el tiempo para visualizarlo. [12]
Historia

- PWCT se registró en SourceForge en diciembre de 2005
- PWCT 1.0 se lanzó el 18 de octubre de 2008
- PWCT 1.1 se lanzó el 20 de febrero de 2009
- PWCT 1.2 se lanzó el 4 de mayo de 2009
- PWCT 1.3 se lanzó el 30 de mayo de 2009
- PWCT 1.4 se lanzó el 28 de agosto de 2009
- PWCT 1.5 se lanzó el 27 de marzo de 2010
- PWCT 1.6 se lanzó el 16 de mayo de 2010
- PWCT 1.7 se lanzó el 15 de septiembre de 2010
- PWCT 1.8 se lanzó el 18 de octubre de 2011 (Última actualización: 22 de abril de 2013)
- PWCT 1.9 se lanzó el 7 de mayo de 2013 (última actualización: 4 de febrero de 2024)
[13] [14]
Concepto


La arquitectura PWCT contiene tres capas principales: [15] [16]
- La capa VPL que proporciona funcionalidad para realizar una tarea específica.
- La capa intermedia que proporciona interfaz entre la vista del usuario y la capa del sistema.
- La capa del sistema que genera código ejecutable en diferentes lenguajes.
La fuente visual dentro de PWCT está diseñada utilizando el Diseñador de objetivos, donde el programador puede generar el árbol de pasos a través de la interacción con los componentes del lenguaje visual.
Dentro de PWCT, la fuente visual es una colección de objetivos, cada objetivo contiene un árbol de pasos y cada paso/nodo dentro del árbol de pasos puede contener uno o más formularios de ingreso de datos. El árbol de pasos utiliza colores que le indican al programador el tipo de paso. Algunos pasos permiten incluir subpasos, otros no lo permiten y algunos pasos no son más que comentarios para el programador. El árbol de pasos le da al programador dos dimensiones donde la relación entre el nodo y otro nodo puede ser "junto a" o "contiene", donde el programador puede ir primero en profundidad o primero en amplitud cuando interactúa con el árbol de pasos.
El programador puede utilizar la dimensión "contiene" para realizar una operación en un grupo de pasos/nodos al mismo tiempo (mover hacia arriba/mover hacia abajo/cortar/copiar/eliminar).
El programador puede utilizar el diseñador de formularios para diseñar la interfaz de usuario.
El programador puede utilizar la dimensión de tiempo donde puede saber cuándo se crea cada paso (Fecha y Hora) y puede moverse a lo largo de la dimensión de tiempo para ver solo los pasos en cualquier punto durante el proceso de desarrollo.
Dentro del Goal Designer, el usuario puede utilizar el ratón o el teclado para seleccionar los componentes visuales y generar nuevos pasos en el árbol de pasos. Utilizando el ratón podemos explorar el entorno para ver los componentes que están listos para su uso. Utilizando el teclado, escribiendo el nombre del componente, el programador puede obtener rápidamente cualquier componente y comenzar a utilizarlo.
[17]
Características
- De uso general .
- Programación Visual (Más de una dimensión, Sin errores de sintaxis, Dimensión de tiempo y colores).
- Editor visual (atajos de teclado, personalización, cortar, copiar, pegar, buscar y reemplazar)
- Editor dirigido por sintaxis (evitar errores).
- Editor gratuito y compilador VPL.
- El programador puede ver y editar el código fuente generado.
- El programador puede cambiar el nombre del paso y los colores de los pasos.
- Admite la generación de código en los lenguajes de programación C , Python , C# , Harbour y Supernova.
- El programador puede reproducir programas como una película para aprender a crear el programa paso a paso.
- No fuerza un paradigma de programación .
- Extensión (Crear nuevos componentes).
- Ejecutar programas en cualquier momento del pasado durante el proceso de desarrollo.
[18] [19]
Lenguajes visuales
Los componentes del lenguaje de programación visual PWCT se clasifican en las siguientes categorías [20]
- CPWCT: Componentes visuales que generan código fuente en el lenguaje de programación C.
- PythonPWCT: Componentes visuales que generan código fuente en el lenguaje de programación Python .
- HarbourPWCT: Componentes visuales que generan código fuente en el lenguaje de programación Harbour .
- SupernovaPWCT: Componentes visuales que generan código fuente en el lenguaje de programación Supernova.
- C#PWCT: Componentes visuales que generan código fuente en el lenguaje de programación C# .
Uso
Dado que el código fuente textual se puede generar en diferentes lenguajes de programación textual como C y Python, PWCT se puede utilizar para desarrollar proyectos que tienen diferentes requisitos como proyectos de Internet de las cosas (IoT) , [21] aplicaciones de inteligencia artificial y aprendizaje automático , [22] proyectos de GUI [23] y aplicaciones de procesamiento de texto . [24]
Crítica
- El software PWCT aún requiere que el usuario esté familiarizado con estructuras de programación como While-Loop y If-Then. Los errores de sintaxis se reducen, pero la lógica y el análisis de la solución del programa aún son creados, desarrollados y evaluados por el usuario. [11]
- PWCT intenta innovar y ofrecer una nueva forma de ver el diseño de software; sin embargo, esta innovación tiene un costo. PWCT se centra en la visualización de bloques de código en una estructura que ellos describen como un "árbol de pasos", que refleja la estructura anidada que se ve en los lenguajes de programación textuales regulares. Además, PWCT no tiene un fuerte soporte inherente para visualizar código como diagramas y no tiene un fuerte soporte para aplicaciones de Arquitectura en Capas de Abstracción (ALA). [25]
Véase también
- Alicia (software)
- LabVIEW
- Prólogo
- Scratch (lenguaje de programación)
- Lenguaje de programación visual
Referencias
- ^ Fercalo, Andrei (11 de marzo de 2014). "Revisión de la tecnología de programación sin codificación". Softpedia .
- ^ Al-Khalifa, Hend (29 de febrero de 2008). "Lenguaje de programación visual gratuito y de código abierto". Al Riyadh .
- ^ Hawas, Mones (23 de noviembre de 2016). "Desarrollo de programación sin codificación Tecnología 2.0". youm7.com . youm7 .
- ^ Mutha, Abhishek A. (septiembre de 2015). "Contenido del DVD de este mes". Revista Electronics For You . Grupo EFY .
- ^ Almesahuge, Khaled (17 de junio de 2010). "Proyectos útiles de código abierto: programación sin tecnología de codificación". Al Riyadh .
- ^ Elsayed, Naglaa (2009). "Programación sin codificación tecnológica: proyecto innovador (fuente sin conexión)" (PDF) . Al Gomhuria . Archivado desde el original (PDF) el 18 de junio de 2019.
- ^ Hawas, Mones (29 de mayo de 2018). "Avances en el desarrollo de PWCT 2.0". youm7.com . youm7 .
- ^ "Los 5 mejores programas educativos de la semana". SourceForge . 27 de abril de 2018.
- ^ "Software libre: el mejor freeware de octubre de 2018 - Incluye (Puedes hacer casi cualquier cosa con PWCT)". Revista Computer Total . Computer!Totaal . 7 de octubre de 2018.
- ^ "Revisión de la tecnología de programación sin codificación" (PDF) . Revista AL-AALEM . Revista AL-AALEM de los científicos, número 116, páginas 26-27. Número de depósito 18/0157. Noviembre de 2008. ISSN 1319-6545.
- ^ ab Chin, Jerry M.; et al. (2013). "Una aplicación de marketing de búsqueda de cadenas mediante programación visual" (PDF) . Revista electrónica de educación empresarial y becas de enseñanza.
- ^ Frandsen, AB, Jensen, R. y Lisby, M. Ø. (2013). Depuración auditiva y visual.
- ^ Equipo PWCT (26 de diciembre de 2005). «Página de inicio de PWCT (Sourceforge)». SourceForge .
- ^ Equipo PWCT (4 de febrero de 2024). "Noticias de PWCT (nuevos lanzamientos)". pwct.org.
- ^ Phalake, VS y Joshi, SD Plataforma de desarrollo de código bajo para la transformación digital. En Tecnologías de la información y la comunicación para estrategias competitivas (ICTCS 2020) (pp. 689-697). Springer, Singapur.
- ^ da Silva, AMOP, Orquestación para la descentralización automática en IoT definida visualmente, 2020.
- ^ Equipo PWCT (2 de enero de 2021). "Referencia ambiental de PWCT". pwct.org.
- ^ Equipo PWCT. "Programación visual en PWCT". pwct.org.
- ^ Equipo PWCT. "Características de PWCT - Editor práctico". pwct.org.
- ^ SRINIVAS NC A (enero de 2013). "Herramientas de software educativo - Tecnología de programación sin codificación - Revista Electronics For You" (PDF) . Grupo EFY .
- ^ Patel, S. y Jena, SR, 2022. Internet de las cosas (IoT): teoría y aplicaciones. Scholars' Press.
- ^ Dhanaraj, RK, Jena, SR, Yadav, AK y Rajasekar, V., 2021. Dominio de tecnologías disruptivas: aplicaciones de computación en la nube, IoT, blockchain, inteligencia artificial y técnicas de aprendizaje automático. HP Hamilton Limited, Reino Unido.
- ^ Alohali, YA et al, Un modelo de aprendizaje automático para predecir el número de citas de artículos científicos en el campo de la otología. BioMed Research International, 2022.
- ^ Alohali, YA et al, 2023. Aprendizaje automático e implantación coclear: predicción de las impedancias de los electrodos posoperatorios. Electrónica, 12(12), p.2720.
- ^ Sen, Arnab. GALADE: una herramienta de modelado gráfico de ida y vuelta para aplicaciones de arquitectura en capas de abstracción. Tesis doctoral, Universidad Tecnológica de Auckland, 2021.
Lectura adicional
- Fayed, Al-Qurishi, Alamri, et al. (2020) PWCT: un nuevo lenguaje de programación visual de propósito general en apoyo del desarrollo de aplicaciones generalizadas , Springer
- Fayed, Al-Qurishi, Alamri, Aldariseh (2017) PWCT: lenguaje visual para aplicaciones y sistemas de IoT y computación en la nube , ACM
- Fayed (2017) Lenguaje visual de propósito general y sistema de información con estudios de casos en el desarrollo de aplicaciones comerciales , Universidad Rey Saud
- Fayed (2013) Uso de C#.NET mediante programación sin tecnología de codificación , Proyecto de código
- Fayed (2013) Uso de Python en la programación sin tecnología de codificación , Proyecto Code
- Fayed (2013) La máquina del tiempo y el lenguaje de programación visual PWCT , Code Project
Enlaces externos
- Sitio web oficial