Artículos

PYTHON NIVEL II

OBJETIVOS
A lo largo del curso buscaremos desarrollar una de las habilidades más importantes del profesional informático, su capacidad para resolver problemas, partiendo por una formulación correcta, pensando la solución de manera creativa, y expresando la misma con claridad y precisión.
En este sentido Python proporciona un equilibrio muy bueno entre lo practico y lo conceptual, los principiantes pueden tomar el lenguaje y empezar a hacer cosas interesantes casi de inmediato, sin perderse el los problemas de compilación y enlazado.
Este enfoque práctico es una buena manera de captar la atención de los estudiantes y permite que completen proyectos significativos. Sin embargo, Python también puede sirve como una base excelente para aprender conceptos importantes de informática. Los estudiantes pueden introducirse gradualmente en temas como estructuras de datos, programación orientada objetos o desarrollo de interfaces.

INTERÉS DETECTADO
Python es un lenguaje que todo el mundo debería conocer. Su sintaxis simple, clara y sencilla; su gran cantidad de librerías disponibles y la potencia del lenguaje, entre otros, hacen que desarrollar una aplicación en Python sea sencillo, muy rápido y, lo que es más importante, divertido. Otra característica importante es que el intérprete de Python está disponible en multitud de plataformas (UNIX, Solaris, Linux, DOS, Windows, OS/2, Mac OS, etc.).
Algunos casos de éxito en el uso de Python son Youtube, Google, Yahoo, la NASA, y todas las distribuciones Linux, en las que Python cada vez representa un tanto por ciento mayor de los programas disponibles.

TITULO QUE DEBEN POSEER LOS INSCRIPTOS
Secundario Completo.

PROGRAMA
Clase 1- “Clases y objetos I”

Características de la orientación a objetos
Tipos compuestos definidos por el usuario
Atributos
Instancias como parámetro
Instancias como valores de retorno

Clase 2 - “Clases y objetos II”

Los objetos son mudables
Copiado
Generalización
Argumentos opcionales
El método de inicialización

Clase 3 - “Clases y objetos III”

Sobrecarga de operadores
Herencia
Polimorfismo

Clase 4 - “Listas enlazadas”

Referencias incrustadas
 Listas como colecciones
Listas y recursividad
Listas infinitas
Modificar listas

Clase 5 - “Pilas y Colas”

Tipos abstractos de datos
El TAD Pila
Como implementar pilas con listas de Python
Uso de push y pop
Usar una pila para evaluar postfijo
El TAD Cola
Cola Enlazada

Clase 6 - “Bases de datos I”

Conceptos básicos SQL
Instalación MySQL
Instalación SQLite

Clase 7 - “Bases de datos II”

DB API
Crear una conexión
Crear un cursor
Interactuar con la base de datos

Clase 8 - “Threads”

¿Qué son los procesos y los threads?
Threads en Python
Sincronización
Datos globales independientes
Compartir información
Serialización de objetos

Clase 9 - “Diseñar una interfaz de usuario con Glade 3”

Descripción GTK
Introducción a Glade3
Familiarizarse con la interfaz de Glade
La manipulación de las propiedades Widget
Especificar funciones de devolución de llamada para las señales
Agregar widgets en el GtkWindow
Edición del menú (o barra de herramientas)

Clase 10- “GTK + Phyton”

Configuración del entorno de desarrollo
GtkBuilder y LibGlade
La aplicación mínima
Ejecutar la aplicación
Paso a paso por el Código
Agregar funcionalidad al proyecto

Clase 11- “Módulos”

NumPy
Mathplotlib
Open Street Map
OS
Sys
urllib

Clase 12 - “Proyecto Integrador I”

Planteo del Problema
Desarrollo de la aplicación

Clase 13 - “Proyecto Integrador II”

Desarrollo de la aplicación

Clase 14 - “Documentar, Probar y Distribuir”

Docstrings
Pydoc
Epydoc y reStructuredTex
Doctest
Unittest / PyUnit
Distutils
Setuptools 
Generar ejecutables

DOCENTE A CARGO DEL CURSO
Marcos Pablo Russo
Mauricio Roberto Dávila

 

Secretaría de Cultura y Extensión Universitaria // Av. Mitre 750 - Avellaneda. Contacto: 4201-4133 (int. 116) / 4222-6465 / Esta dirección de correo electrónico está protegida contra spambots. Usted necesita tener Javascript activado para poder verla.