-
Introducción al curso
¡Bienvenido! En este curso nos adentraremos en lo que implica programar y cómo hacerlo mejor. Con diversas herramientas mejoraremos nuestro pensamiento lógico y más importante usaremos el cómputo a nuestro favor mediante diversas estrategias varias de ellas muy prácticas y didácticas
-
Información del curso
¡Bienvenido! En este curso nos adentraremos en lo que implica programar y cómo hacerlo mejor. Con diversas herramientas mejoraremos nuestro pensamiento lógico y más importante usaremos el cómputo a nuestro favor mediante diversas estrategias.
-
Semana 1 - Conceptos iniciales
Analizaremos una de las palabras más interesantes que usaremos al programar: algoritmo.
-
Semana 2 - Propiedades de los algoritmos, identiifcadores y datos
El material de esta semana servirá para comprender identificadores, tipos de datos y propiedades de los algoritmos
-
Semana 3: Constantes, variables y expresiones
El material de esta semana servirá para reflexionar y entender el material elaborando un reporte de lectura [opcional] sobre constantes, variables y expresiones.
-
Semana 4: Introducción a la diagramación (y al lenguaje Python)
El material de esta semana sirve como introducción a lo que implica diagramar en su conjunto... también nos introduce a los diagramas de flujo y a Python
-
Semana 5: Conceptos iniciales de diagramación
Analizaremos la teoría inicial detrás de los diagramass de flujo para poder comenzar a hacer los nuestros
-
Semana 6: Conceptos complementarios de diagramación básica
En esta sección profundizamos en los elementos adicionales que nos permiten construír diagramas eficientemente
-
Semana 7: Estructuras de selección simple
En esta sección nos enfocamos en el uso de las estructuras de selección básicas
-
Semana X: Material adicional (y avanzado) para los curiosos
Material adicional para los curiosos que ya revisaron el material de las unidades 1 a 5 y se quedaron con ganas de más... Este material no forma parte del contenido del curso por lo tanto no forma parte de la estructura original del curso pero es un punto de partida para temas más avanzados de programación
-
Semana 8: Estructuras de selección múltiple y anidadas
Avanzamos un poco más en esta sección y nos enfocamos en el uso de las estructuras de selección que van hacia múltiples opciones y que además comienzan a anidarse, tal como ocurre en el día a día en la industria del software
Temas avanzados, Notación Asintótica (ideal para los ratos libres)
IMPORTANTE: CUALQUIER ESTUDIO SOBRE ESTE MATERIAL ES RESPONSABILIDAD DEL ESTUDIANTE. SE ALIENTA A QUE REVISEN EL MATERIAL Y SI QUIEREN SABER MAS SE LES INVITA A PREGUNTAR POR CORREO. LOS TEMAS DE ANALISIS DE ALGORITMOS SON TEMAS MUY AVANZADOS PARA UN PRIMER CURSO DE PYTHON. DICHO DE OTRA FORMA, PODRIA CONFUNDIR AUNQUE ES MATERIAL MUY VALIOSO DE INTRODUCCION AL ANALISIS DE ALGORITMOS
El artículo explora cuál es la justificación detrás de dicha notación y nos explica cómo la complejidad en funciones y métodos puede empeorar por mucho la ejecución de un algoritmo con el tiempo.
Una vez tengan un entendimiento base sobre cómo funciona la notación Big-O (o incluso si no lo tienen) les recomiendo pasen a revisar el segundo artículo que se comparte, (liga en la parte inferior), donde se comparan funciones en Python e identifica su complejidad. Lo cual apoya mucho a entender la teoría.
Agrego a continuación algunos recursos que son valiosos para revisar con detenimiento pues aportan serias lecciones sobre lo conveniente que resulta programar en favor del menor uso de memoria y menor tiempo de ejecución también:
- Notación asíntotica en Khan Academy (https://es.khanacademy.org/computing/computer-science/algorithms/asymptotic-notation/a/asymptotic-notation)
- Complejidad algorítmica explicada en español sin adornos y con código en Python (y PHP) (http://micaminomaster.com.co/grafo-algoritmo/complejidad-algoritmica-ejemplos-python-php/)