Download PYTHON NIVEL II
Document related concepts
no text concepts found
Transcript
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. TÍTULO 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