Please enable JavaScript.
Coggle requires JavaScript to display documents.
CONCEPTOS DE PROGRAMACION - Coggle Diagram
CONCEPTOS DE PROGRAMACION
Algoritmo:Secuencia lógica, finita y ordenada de pasos para resolver un problema.
Lenguaje de Programación:Lenguaje formal que define instrucciones para crear un programa Tipos:Alto Nivel (Python, Java, C#): Cercano al humano.
Bajo Nivel (Ensamblador, C): Cercano a la máquina.
Compilado vs Interpretado:Compilado: Traducción completa antes de ejecutar (C++, Go). Interpretado: Traducción línea por línea durante la ejecución (Python, JavaScript)
Syntax vs Semántica:Sintaxis: Reglas gramaticales. Semántica: Significado lógico (lo que el código hace).
Programa / Código Fuente: Conjunto de instrucciones que sigue la computadora. Escrito en un lenguaje de programación.
Estructuras de Control:(Cómo se dirige el flujo de un programa)
Secuencia: Ejecución de instrucciones una después de otra, en orden.
Condicionales (Selección):Ejecuta bloques de código SI se cumple una condición. Sub-ramas: if, else if (elif), else
switch o case
Bucles (Iteración): Repite un bloque de código mientras se cumpla una condición. Sub-ramas: for (iteraciones conocidas) while (mientras condición sea verdadera) do...while (ejecuta al menos una vez)
Estructuras de Datos:(Cómo se organiza y almacena la información)
Variable:Espacio en memoria que almacena un valor. Tiene un nombre (identificador) y un tipo de dato.
Constante:Como una variable, pero su valor no puede cambiar después de definirse.
Tipos de Datos:Primitivos: Enteros (int), Decimales (float), Caracteres (char), Booleanos (bool).
Compuestos: Cadenas de texto (String), Arrays, Listas, Tuplas, Diccionarios (Objetos), Sets
Estructuras de Datos Comunes:
Arrays/Listas: Colección ordenada y indexada.
Pilas (Stack): LIFO (Last In, First Out).
Colas (Queue): FIFO (First In, First Out).
Diccionarios/Mapas: Pares clave-valor.
Sets/Conjuntos: Colección de elementos únicos, sin orden.
Programación Modular: (Cómo dividir el código en partes lógicas y reutilizables)
Función / Método / Procedimiento: Bloque de código reutilizable que realiza una tarea específica.
Partes de una Función: Nombre, Parámetros (Input), Retorno (Output), Cuerpo
Clase y Objeto (POO):Clase: Molde o plantilla (ej: "Receta de pastel"). Objeto: Instancia de una clase (ej: "El pastel horneado
Conceptos de POO (Pilar fundamental)
Abstracción: Modelar lo esencial.
Encapsulación: Ocultar los datos internos.
Herencia: Una clase hereda de otra.
Polimorfismo: Mismo método, comportamientos diferentes.
Conceptos Avanzados / Técnicos:
Manejo de Errores (Excepciones)
Texto: Mecanismo para manejar errores en tiempo de ejecución sin detener el programa. (try / catch / finally).
Estructuras de Datos Complejas
Texto: Árboles, Grafos, Tablas Hash.
Algoritmos Fundamentales
Texto: Recursividad, Algoritmos de Ordenamiento (QuickSort, MergeSort), Algoritmos de Búsqueda (Binaria).
Memoria
Texto: Stack (Pila): Memoria rápida para variables locales. Heap (Montón): Memoria dinámica para objetos.
API (Interfaz de Programación de Aplicaciones)
Texto: Conjunto de reglas que permite a programas comunicarse entre sí.
Paradigmas de Programación: (Diferentes estilos y filosofías para escribir código)
Programación Imperativa: Cómo" hacerlo. Secuencia de comandos que cambian el estado del programa.
Sub-rama: Procedural: Organizada alrededor de procedimientos/funciones.
Programación Declarativa: "Qué" se quiere, sin especificar el "cómo"
Sub-ramas:
Funcional: Usa funciones matemáticas, evita estado mutable y datos mutables.
Lógica: Basada en lógica formal y reglas.
Programación Orientada a Objetos (POO): Organiza el software alrededor de objetos y datos, no de lógica y funciones.