Estamos trabajando con el equipo de kodevian en este primer curso de python en nuestra empresa.
Vamos a invertir para traer material para esta nueva academia.
El primer módulo esta siendo trabajando todo este mes de enero y lo lanzaremos en febrero.
Les copio un extracto de los temas:
Python es un
lenguaje de programación poderoso y fácil de aprender. Cuenta con estructuras
de datos eficientes y de alto nivel y un enfoque simple pero efectivo a la
programación orientada a objetos. Su sintaxis simple, clara y sencilla (que se
asemeja al pseudocódigo); el tipado dinámico, el gestor de memoria, la 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 en diversas áreas (script, programación con
GUI, programación web, videojuegos, programación profesional, etc.) y sobre la
mayoría de las plataformas. Algunos casos de éxito en el uso de Python son
Google, Yahoo, la NASA, Industrias Light & Magic, y todas las
distribuciones Linux, en las que Python cada vez representa un tanto por ciento
mayor de los programas disponibles.
Conocer las características
del lenguaje Python y su uso en el desarrollo de aplicaciones informáticas de
todo nivel usando los conceptos de la programación orientada a objetos.
Asimismo se estudiará las características de la programación gráfica, y una
introducción a la programación de videojuegos con la librería Pygame.
El curso contará de cuatro
módulos: Básico I, Básico II, Intermedio y Avanzado. Cada Módulo de 24 horas
repartidas entre 2 horas por cada sesión. El programa de todo el curso Básico I
o Módulo I sería el siguiente:
Python – Módulo I (Básico I):
- Sesión 1: Introducción a Python
-
Lenguajes compilados vs
interpretados
-
Características de Python
-
Instalación de Python
-
Formas de ejecución de
programas Python
-
Herramientas básicas (modo
interactivo – IDLE)
-
Entornos de trabajo (IDE)
-
Primer programa en Python
(comparado con C)
-
Usando Python como
calculadora
-
Módulo math
-
Una calculadora avanzada
- Sesión 2: Pensar como un programador con Python
-
Pseudocódigo vs Sintaxis de
Python
-
Tipos básicos
-
Expresiones: Variables,
sentencias y comentarios
-
Control del flujo:
estructura de control if , else y elif
-
Control del flujo:
estructura de control iterativa while
-
Break y continue
-
Colecciones: listas y
tuplas
-
Control del flujo:
estructura de control iterativa for-in
-
Ejercicios: usando
estructuras de control
- Sesión3: Programación estructurada y modular con Python
-
Python detrás de
bambalinas: apuntadores y referencias
-
Referencia y desreferencia
de variables
-
Funciones
-
Paso de argumentos:
argumentos con nombre y por omisión
-
Retorno de múltiples
valores
-
Número variable de
argumentos
-
Recursividad
-
Ejercicios con funciones
-
Ejercicios: fución
fibonacci y torres de Hanoi
- Sesión 4: Listas como arreglos
-
Comparación de una lista y
una tupla de python con un arreglo estático de C
-
Usando listas como arreglos
unidimensionales
-
Ordenamiento burbuja en una
lista
-
Ordenamiento burbuja
mejorado
-
Búsqueda secuencial en una
lista
-
Búsqueda binaria en una
lista
-
Usando las listas como
arreglos bidimensionales y multidimensionales
-
Ejercicios: suma, resya y
multiplicación de matrices
- Sesión 5: Un análisis más profundo de las colecciones
-
Listas
-
Métodos de la lista
-
Tuplas
-
Diccionarios
-
Métodos del diccionario
-
Simulación del switch de C
con un diccionario
-
Conjuntos (set y frozenset)
-
Métodos del conjunto
-
Ejercicios: usando las
colecciones
-
Creando nuestros propios
tipos de datos
-
Definición de una clase y
un objeto
-
Atributos
-
Métodos
-
Herencia y herencia
múltiple
-
Superclases y subclases
-
Encapsulamiento
-
Relaciones de asociación,
agregación y composición
-
Diagramas de clases
-
Ejercicio: Creando nuestra
clase Carta
- Sesión 7: POO con Python II
-
Métodos especiales
-
Atributos y métodos
estáticos
-
Sobrecarga de operadores
-
Por qué Python no
necesita sobrecarga de métodos
-
Propiedades en Python
-
Ejercicio: Comparación de
objetos carta y creación de un mazo de cartas
- Sesión 8: Inmersión en Python
-
Manejando excepciones
-
Levantando excepciones
-
Módulos
-
Paquetes
-
Ejercicio: Creando nuestros
propios módulos e importarlos
- Sesión 9: Entrada/Salida y Persistencia de datos
-
Flujos de entrada, salida y
error estándares
-
Parámetros de línea de
comandos
-
Trabajar con directorios
-
Lectura y escritura de
archivos
-
Serialización de objetos
con el módulo pickle
-
Ejercicio: Guardando
nuestra clase Mazo
- Sesión 10: Cadenas un análisis más detallado
-
Troceado de cadenas
-
Formateo antiguo y nuevo de
cadenas de texto
-
Métodos para la
manipulación de Springs
- Sesión 11: Un poco de Programación funcional en Python
-
Funciones map, filter y
reduce
-
Funciones lambda
-
Comprensión de listas
-
Decoradores
- Sesión 12: Estructuras de datos
-
Definición de nuestra
propia clase Lista Enlazada
-
TAD Pila
-
TAD Cola
-
TAD Árbol Binario
-
Recorridos de un árbol
binario
-
Ejercicios: usando pilas, colas y árboles
Por favor, si tienes algun comentario al respecto escribeme y gustosamente conversamos del tema.
José Díaz