Hola,
También estás invitado a hacer preguntas de Python acá, varios
programamos en Python...
Comenzaré a usar la invitación que me han hecho.
En un libro que imprimí -Introducción a la programación Python- leí lo
siguiente: ...Python es el lenguaje que "lo une todo"... Me gustó mucho
eso.
My problem:
Hace algunos meses comencé un proyecto con Python* -en SuSE Linux 10.0-,
mi tesis de maestría, la cual no he terminado. En lugar de trabajar con
otro lenguaje, y como un amigo mío me había hablado de este lenguaje -y
con el tiempo en mi contra**-, comencé a estudiar Python y me gustó y me
propuse trabajar con él. Qué locura!. Bueno, así soy yo. Se trata de un
software educativo.
En esencia, quise hacer una especie de entrenador para el lenguaje Python
y C en Linux. Desde su presentación el software tiene dos ventanas. En la
superior y de mayor área sucede lo siguiente:
- Inicialmente una presentación.
- Luego, te autentificas. Pensado para crear -en el futuro- sesiones
independientes para alumnos y profesores.
- Después, se presentan algunos menúes. En el principal, seleccionas el
lenguaje que seas estudiar. Posteriormente, según el lenguaje que
selecciones se te presenta un grupo de opciones más: los temarios de ese
lenguaje que seleccionaste.
- En cualquier momento -teniendo un tema de estudio para un lenguaje dado
en la ventana superior- puedes emplear el entrenador, es decir, se
habilita la ventana inferior -de menos área- y tienes a tu dispocisión el
shell prompt para trabajar y experimentar lo aprendido. Es decir, ejecutar
Python y correr las aplicaciones o compilar los códigos C.
Otras características:
- El software permite recibir/enviar e-mail para contestar las tareas del
profesor. Sin terminar.
- También permite administrar el software: crear/eliminar usuarios,
cambiar contraseñas, montar nuevos cursos. Lo último sin implementar.
Esta es más o menos la idea.
Particularidades:
- No fue pensado para ser ejecutado en entorno gráfico, más bien en modo
texto -consola-, AUNQUE quiero dibujar las ventanas yo mismo -sin hacer
uso de las librerías gráficas-, para una vez terminada la sesión quedar en
la consola y no estar montado encima de tanta basura informática. ESTO NO
LO HE HECHO NI TENGO IDEA DE COMO HACERLO. Hasta ahora he trabajado con la
librería ncurses.
Estado actual del software:
- No he logrado capturar el shell prompt para manejarlo en la ventana
inferior. No tengo ni idea de cómo hacerlo. Estuve estudiando un software
llamado PythonG para obtener alguna luz pero no logré ni J. Lo primero es
que no comencé a trabajar con clases y ahora tendría que rediseñar todo y
lo segundo es que PythonG tiene todo en clases y no pude entender casi
nada. Todo parece indicar que esto tiene bastante para como decimos acá en
Cuba. Traté de experimentar pero no logré NADA.
Dudas:
¿Alguien conoce alguna forma más sencilla de cómo lograr esto -capturar el
shell prompt y mostrar nuestras ejecusiones dentro de nuestra
aplicación-?. ¿Algún ejemplo sencillo para tomar idea?.
Bueno, posteriormente desearía lograr dibujar mi aplicación en pantalla
pues la librería ncurses permite algunas cosas pero muy limitada. Digamos
que quisiera poder mostrar una imagen en alguna parte de mi aplicación, la
cual se en consola. Hace tiempo yo dibujaba ventanas, cajas de texto y
botones de comandos al estilo M$ Windows en MS-DOS con Turbo C++,
empleando la librería Conio.h. En aquel momento no pude lograr que mi
aplicación trabajar con el ratón. Esta es la idea de lo quisiera lograr.
No para hacer las ventanas de M$ Windows pero si poder mostrar imágenes en
mis aplicaciones ejecutadas en modo texto.
¿Qué opinan?. ¿Se atreven con este loco?. No estoy pensando en terminar mi
tesis, sino más bien en entretenerme.
* El cual había abandonado por falta de información y por problemas
personales. Pero tengo en muy alta estima a este lenguaje. De verdad que
sí.
** Algunos colegas míos me tildaron de loco por hacer esto de comenzar a
estudiar un lenguaje nuevo en medio de una tesis de maestría. Ellos
también me critican a cada rato porque prefiero Linux. Je, je, je, je.
--
Saludos,
Ing. Luis Esteban de Dios Núñez
¡Que Dios te bendiga!.
_______________________________________________
Lista de correo Programacion.
[email protected]
http://listas.fi.uba.ar/mailman/listinfo/programacion