Todo sobre pseint

  INTRODUCCION

 - PSeInt ayuda a escribir algoritmos utilizando un pseudo-lenguaje simple, intuitivo y en español.

 - Puede interpretar (ejecutar) los algoritmos escritos. 

-Determina y marca claramente errores de sintaxis (mientras escribe) y en tiempo de ejecución.


 ¿QUE ES PSEINT?

PSeInt, es la abreviatura de Pseudocode Interpreter, Intérprete de Pseudocódigo. El programa utiliza pseudocódigo, una descripción de un algoritmo computacional, cuya principal misión es que el programador pueda centrarse en los aspectos lógicos de la programación, dejando el apartado técnico para cuando se vea la sintaxis de un lenguaje de programación real.

PSeInt incluye en su editor diversas herramientas para que podamos crear y almacenar programas en este peculiar lenguaje, ejecutarlos directamente desde su interfaz, o incluso corregir posibles defectos que encontremos en su desarrollo.


 HISTORIA

El software comenzó a desarrollarse en octubre del 2003 utilizando Borlan C++ Buider debido a que era esta herramienta que recomendaba la cátedra por la facilidad que brinda para el desarrollo de interfaces visuales y estar presente en los laboratorios de la facultad. comenzó con una prueba de concepto, ya que era el primer proyecto que iba a realizar con C++. Al ser u software para uso exclusivamente didáctico, no se presentan grandes problemas de rendimiento(no se tienen que interpretar algoritmos de miles de  líneas sumamente complejos) por los que pudo tomar cierta libertades en la implementación. 


Casi dos años mas tarde, gracias a la lista de correo del grupo de Usuarios de Linux del litoral(Lugli) llegó la invitación a participar en la recopilación de Software libre de la colección que se distribuiría gratuitamente entre los docentes que lo solicitaron por el ministerio de Educación de la Nación y llevado a cabo por los grupos gleducar, solar y educ.ar. Sugirió entonces a través de una lista de correo creada para la recopilación del PSEINT en dicho CD.    

   

¿QUIEN LO CREO? 

PSeInt es una herramienta desarrollada por Pablo Novara para aprender de la lógica de la programación, dirigida a estudiantes sin experiencia en esta área. Mediante la utilización de un simple y limitado pseudo-lenguaje intuitivo y en español, permite comenzar a comprender conceptos básicos y fundamentales de un algoritmo computacional.


VERSIONES SOBRE PSEINT



XX/10/2003


Comienza el desarrollo de pseint como proyecto final de la materia "Programación I", de la carrera "Ingeniería en Informática" de FICH-UNL.


29/12/2003


Primer presentación oficial del software (para Windows), en la mesa de exámen de "Programación I".


24/09/2004


Me entero del proyecto para armar un CD con software libre para la colección educ.ar, y ofrezco PSeInt.


28/11/2004


Se registra el proyecto en SourceForge.


26/01/2005


Primer versión para GNU/Linux disponible en sourceforge.


08/08/2005


Se presenta formalmente el CD de Actividades Educativas con Software Libre, y en la presentación conozco personalmente a los responsables de que el proyecto reviva.


02/07/2006


Se agrega el panel de ayuda rápida, que muestra descripciones detalladas de los errores de un algoritmo y sugerencias para corregirlos.


08/08/2006


Se agrega la posibilidad de generar diagramas de flujo.


09/08/2006


Presento el trabajo "Desarrollo e implementación de un Intérprete de Pseudocódigo para la Enseñanza de Algorítmica Computacional" en el congreso TE&ET 2006 en la UNLP.


25/10/2006


Expongo un poster titulado "Desarrollo de un Software Intérprete de Pseudocódigo para la Enseñanza de Algorítmica Computacional" en el 10mo Encuentro de Jóvenes Investigadores en la UNL.


01/03/2007


Comienza el período de trabajo de un proyecto de Cientibeca UNL con un plan de trabajo que tiene entre sus objetivos mejorar PSeInt.


20/02/2008


Se agrega un módulo para convertir el pseudocódigo en código C++.


26/04/2008


Nueva interfaz unificada, desarrollada con wxWidgets y basada en el código base de ZinjaI.


25/05/2008


Se remodela el sitio web, tomando una linea básica que se mantiene hasta el día de hoy.


11/07/2008


Se agrega la ejecución paso a paso.


31/08/2008


Finaliza el trabajo de Cientibeca con la evaluación (positiva) de la influencia de utilizar PSeInt y ZinjaI en un curso introductorio de programación.


2009-2010


Poca actividad, casi ninguna versión publicada, pero se reescribe el sistema de evaluación de expresiones.


25/03/2011


Primer versión para Mac OS, y se agregan los perfiles de lenguaje.


12/02/2012


Se crea el repositorio git.


13/02/2012


Se crea el blog Cucarachas Racing que tiene por objetivo difundir información relaciona a PSeInt, otros dos proyectos, y la programación en general.


25/03/2012


Primer versión con edición de diagramas de flujo.


06/04/2012


Comienzo a utilizar el sistema de foros de sourceforge para mejorar la comunicación con los usuarios.


07/05/2012


PSeInt aparece en la portada de SourceForge entre los "featured projects".


13/07/2012


Primer versión con diagramas de Nassi-Schneiderman y panel de lista de variables.


08/10/2012


PSeInt aparece por segunda vez en poco tiempo en la portada de SourceForge entre los "featured projects".


10/10/2012


Primer versión con la posibilidad de crear SubProcesos/Funciones.


10/11/2012


Primer versión con ejecución paso a paso explicada, que detalla el proceso de interpretación de un algoritmo.


10/11/2012


Primer versión con funcionalidades simil Live-Coding (la ventana de ejecución se actualiza automáticamente al modificar el pseudocódigo), para lo cual fue necesario implementar una terminal de ejecución propia.


2013-2015


Falta actualizar...


      CARACTERISTICAS

-Lenguaje Autocompletado.


-Ayudas Emergentes.


-Plantillas de Comandos.


-Soporta procedimientos y funciones.


-Indentado Inteligente.


-Exportación a otros lenguajes (C, C++, C#, Java, PHP, JavaScript, Visual Basic .NET, Python, Matlab).


-Graficado, creación y edición de diagramas de flujo.


-Editor con coloreado de sintaxis.


-Foro oficial de PSeInt.


-Software multiplataforma2 sobre Microsoft Windows, GNU/Linux y Mac OS X, en diciembre de 2016 empezó un desarrollo independiente para Android3.


FUNCIONALIDAD

Este software pretende facilitarle al principiante la tarea de escribir algoritmos en este pseudolenguaje presentando un conjunto de ayudas y asistencias, y brindarle además algunas herramientas adicionales que le ayuden a encontrar errores y comprender la lógica de los algoritmos.


-Puede ejecutar los algoritmos escritos.

-Permite ejecutar el algoritmo paso a paso controlando la velocidad e inspeccionado expresiones.

-Puede confeccionar automáticamente la tabla de prueba de escritorio.

-Determina y marca los errores de sintaxis y en tiempo de ejecución.

-Genera diagramas de flujo a partir de algoritmo escrito.



PSeInt ayuda a escribir algoritmos utilizando un pseudo-lenguaje simple, intuitivo y en español. El objetivo es permitir al estudiante centrar la atención en los conceptos fundamentales que debe aprender, sin perder tiempo en los detalles de un lenguaje o del uso de un intérprete o compilador


PSeInt ayuda a escribir algoritmos utilizando un pseudo-lenguaje simple, intuitivo y en español. El objetivo es permitir al estudiante centrar la atención en los conceptos fundamentales que debe aprender, sin perder tiempo en los detalles de un lenguaje o del uso de un intérprete o compilador



COMANDOS DE PSEINT

¿QUE ES UN COMANDO?

Un comando es una orden que se le da a un programa de computadora que actúa como intérprete del mismo, para así realizar una tarea específica.


TIPOS DE COMANDOS


- COMANDO LEER

Es el que se utiliza para poder ingresar o el que nos guarda los datos los a la hora de ejecutar el ejercicio de prueba.


Botón en Pseint




- COMANDO ESCRIBIR 

Este comando se utiliza para que nos muestre el resultado al final de la ejecución del ejercicio de prueba.


Botón en Pseint





- COMANDO ASIGNAR

La instrucción de asignación permite almacenar una valor en una variable.


<Variable> <- <expresión>; 


Botón en Pseint


- CONDICIONAL  SI-ENTONCES

La secuencia de instrucciones ejecutadas por la instrucción Si-Entonces-Sino depende del valor de una condición lógica.


Si <condición>

Entonces

<instrucciones>

Sino

<instrucciones>

FinSi 


si la condición es verdadera, o las instrucciones que le siguen al Sino si la condición es falsa. La condición debe ser una expresión lógica, que al ser evaluada retorna Verdadero o Falso. 


Botón en Pseint


- CICLO MIENTRAS (WHILE)

La instrucción Mientras ejecuta una secuencia de instrucciones mientras una condición sea verdadera.


Mientras <condición> Hacer

<instrucciones>

FinMientras 


Si la condición resulta verdadera, se ejecuta una vez la secuencia de instrucciones que forman el cuerpo del ciclo. Al finalizar la ejecución del cuerpo del ciclo se vuelve a evaluar la condición y, si es verdadera, la ejecución se repite. Estos pasos se repiten mientras la condición sea verdadera.


Botón en Pseint




- CICLO REPETIR  (DO WHILE)

La instrucción Repetir-Hasta Que ejecuta una secuencia de instrucciones hasta que la condición sea verdadera.


Repetir

<instrucciones>

Hasta Que <condición> 


Si la condición es falsa, el cuerpo del ciclo se ejecuta nuevamente y se vuelve a evaluar la condición. Esto se repite hasta que la condición sea verdadera. 


Botón en Pseint



   Usaremos hacer hasta cuando la estructura mientras no pueda utilizarse por qué un bloque de programa que quizás se repita, deba ejecutarse almeno una vez.


- CICLO PARA

La instrucción Para ejecuta una secuencia de instrucciones un número determinado de veces.


Para <variable> <- <inicial> Hasta <final> ( Con Paso <paso> ) Hacer

<instrucciones>

FinPara 


consta de la variable donde se coloca la variable ya declarada recibe el valor inicial y se ejecuta la secuencia de instrucciones que forma el cuerpo del ciclo. Luego se incrementa la variable en paso que es donde colocamos en qué tipo de paso vaya aumentado o disminuido si es aumentado seria con paso de 1 o 2 como nosotros queramos y si es disminuido con paso de -1 o -2 etc. final en este colocamos hasta donde queremos que termine el ciclo. 


Botón en Pseint






VENTANA DE PSEINT



- Panel de Comandos: Permite introducir acciones o estructuras de control en su algoritmo mediante un clic. Se ubica por defecto en la parte izquierda de la ventana y al seleccionar una de sus primitivas introduce en el código del proceso actual la plantilla de la misma.


- Área de Ejecución: Se actualiza cada vez que se ejecuta el algoritmo. En ella aparecen los errores encontrados, ya sean de sintaxis (antes de ejecutarse) o errores en tiempo de ejecución. Al hacer clic sobre los mismos, automáticamente se seleccionará la línea que contiene dicho error en el área de trabajo.


             los botones:




          MENU ARCHIVO




-Nuevo: Crea un nuevo algoritmo y escribe el prototipo básico en el área de trabajo.


-Abrir: Abre un algoritmo desde un archivo.


-Guardar: Guarda todos los cambios realizados en el algoritmo (pseudocódigo) actual.


-Guardar Como: Guarda el algoritmo actual con un nuevo nombre.


-Cerrar: Cierra la aplicación.


-Exportar a Cpp: Genera un archivo con código C++ a partir del pseudocódigo.



      MENU  EDITAR







-Deshacer: Deshace el último cambio realizado al pseudocódigo.

-Rehacer: Deshace el último cambio realizado al pseudocódigo

-Cortar, Copiar y Pegar: Interactúan entre el texto del área de trabajo y el portapapeles de Windows para cortar, copiar o pegar texto seleccionado.

-Mover Hacia Arriba:Mueve el ó los elementos seleccionados a la línea de arriba.

-Mover Hacia Abajo: Mueve el ó los elementos seleccionados a la línea de abajo.

-Buscar: Localiza una cadena dentro del algoritmo. No distingue entre mayúsculas y minúsculas.

-Buscar Siguiente: Repite la última búsqueda realizada comenzando desde la ubicación del cursor.

-Buscar Anterior: Repite la última búsqueda realizada comenzando desde la ubicación del cursor hasta encontrar la coincidencia anterior.

-Seleccionar Todo: Selecciona todo el pseudocódigo.


-Duplicar Líneas: Permite duplicar las líneas seleccionadas.


-Eliminar Líneas: Permite eliminar las líneas seleccionadas.


-Comentar Líneas: Permite comentar las líneas seleccionadas.


-Descomentar Líneas: Permite descomentar las líneas seleccionadas.


       MENU CONFIGURAR






-Utilizar Autocompletado: El autocompletado muestra sugerencias de palabras claves mientras escribe y permite seleccionarlas para completarlas sin tener que escribirlas por completo.


-Utilizar Ayudas emergentes: Estas ayudas le indican que debe escribir luego de cada palabra clave. Se muestran como globos emergentes sobre el código e indican el tipo de acción, expresión, etc. que debe introducir a continuación.


-Utilizar Indentado Inteligente: Agrega o quita tabulaciones a las líneas para indentar correctamente el código según su estructura y anidamiento (por ejemplo, luego de una línea que abre un bucle PARA, la siguiente tendrá un indentado mayor.


-Mostrar Barra de Herramientas: Permite mostrar u ocultar la Barra de Herramientas de Acceso Rápido.


-Mostrar Panel de Comandos: Permite mostrar u ocultar el Panel de Comandos.


-Mostrar Panel de Ejecución Paso a Paso: Permite mostrar u ocultar el Panel de Ejecución Paso a Paso por debajo del Panel de Comandos. 


No permitir utilizar variables sin inicializar: Evita que se utilicen variables que no han sido inicializadas, En caso de estar desactivado, las variables no inicializadas tendrán por defecto los valores 0.


Controlar el uso del punto y coma: Se puede forzar esta práctica también en este pseudolenguaje mediante la opción Controlar el uso del punto y coma del menú Configurar. En caso de estar desactivado, los puntos y comas colocados serán ignorados.


Permitir palabras clave como operadores (relacionales): Los operadores relacionales por defecto son &, | y ~ (estos símbolos guardan cierta semejanza con el lenguaje C/C++). Para facilitar la escritura o lectura de algoritmos, puede querer utilizar las palabras Y, O y NO en lugar de dichos símbolos. Puede activar o desactivar el uso de estas palabras mediante la opción Permitir palabras clave como operadores del menú Configurar.



       MENU EJECUTAR




-Ejecutar:  Ejecuta el algoritmo en una nueva ventana de consola. Si el algoritmo contiene errores de sintaxis, no será ejecutado.


-Ejecutar Paso a Paso: La ejecución paso a paso permite realizar un seguimiento más detallado de la ejecución del algoritmo. Es decir, permite observar en tiempo real qué instrucciones y en qué orden se ejecutan, así como también observar el contenido de variables o expresiones durante el proceso.


-Verificar Sintaxis: La verificación de sintaxis permite realizar un seguimiento más detallado de la sintaxis del algoritmo y en caso de encontrar un error mostrará una descripción de la instrucción inválida y sugerencias de cómo solucionar dicho error sintáctico.





-Índice: Muestra un índice de contenidos con los temas de ayuda del interprete.

-Ayuda Rápida: Muestra una ventana en donde se puede introducir la palabra que hace referencia al tema de búsqueda y en caso de encontrar información muestra la ayuda correspondiente.

-Ejemplos…:PSeInt incluye un conjunto de algoritmos de diferentes niveles de dificultad para ejemplificar la sintaxis y el uso del pseudocódigo.

-Acerca de...:Muestra información de la aplicación


VENTAJAS

-Presenta herramientas de edición para escribir algoritmos en pseudocodigo en español


-Autocompletado


-Ayudas Emergentes


-Plantillas de Comandos


-Coloreado de Sintaxis


-Indentado Inteligente


-Permite generar y editar el diagrama de flujo del algoritmo


-Permite la edición simultánea de múltiple algoritmos


-El lenguaje pseudocódigo utilizado es configurable


-Ofrece perfiles de configuración predefinidos para numerosas instituciones


-Puede interpretar (ejecutar) los algoritmos escritos


-Permite ejecutar el algoritmo paso a paso controlando la velocidad e inspeccionando variables y expresiones


-Puede confeccionar automáticamente una tabla de prueba de escritorio


-Determina y marca claramente errores de sintaxis (mientras escribe) y en tiempo de ejecución


-Permite convertir el algoritmo de pseudocodigo a código C++


-Ofrece un sistema de ayuda integrado acerca del pseudocódigo y el uso del programa


-Incluye un conjunto de ejemplos de diferentes niveles de dificultad


-Es multiplataforma (probado en Microsoft Windows, GNU/Linux y Mac OS X)


-Es totalmente libre y gratuito (licencia GPL) 


 DESVENTAJAS


-Esta aplicado solo para estudiantes que se inician en la construcción  de programas o algoritmos computacionales.

-En caso de un accidente que corrompa la Base de datos, el proceso de recuperación  y de devolver a  la Base de Datos su estado anterior al problema, es mucho mas complejo de ejecutar que en sistemas tradicionales.

-Si un componente de la Base de Datos sufre un desperfecto, se detiene las operaciones del producto por completo.  En el caso de un ambiente no centralizo en Cobol, el impacto casi siempre afecta al departamento en donde ocurrió el problema únicamente.


-Soporte para programación orientada a objetos, aunque la implementación original de C++ fue un preprocesador que traducía código fuente de C++ a C.

-Soporte nativo para programación multihilo y redes de computadores.

-No avisa de ciertos errores o advertencias (se puede configurar el compilador para generar  ejecutables  sin los controladores de desbordamiento de enteros o las comprobaciones  de límites en matrices entre otros, dejando así más de la mano  del programador la tarea de controlar  dichos errores)





Comentarios

Entradas populares