FUNDAMENTOS DE PROGRAMACIÓN
by josé angel silva
1. Definición de programación: Donde se crea el software mediante escritura de instrucciones de lenguaje de programación, se escriben, se diseña y se mantiene un código (fuente). Estas órdenes son llamadas códigos, para que una computadora ejecute dichos algoritmos donde se logra que realice tareas específicas.
2. Historia: Nace gracias a los primeros conceptos matemáticos, como: la máquina analítica de Ada Lovelace en el siglo XIX. Hasta los lenguajes modernos, mediante el paso del tiempo la programación ha pasado por varias etapas. El desarrollo de lenguaje de alto nivel que estuvo presente en los años 50 al 70 (Fortran C, Pascal). La programación orientada por objetos en los años 80 al 90 (Cxx y Java). Hoy en día nos encontramos en el auge de la inteligencia artificial y el desarrollo web en el siglo XXI (Python, JavaScript y Swift).
3. Para que sirve: La programación es de gran utilidad ya que automatiza las tareas, tanto como resuelve problemas y crea software; Donde también nos ayuda a mejorar la eficiencia y como así mismo en el ámbito de la innovación.
4. Ejemplos de aplicaciones: Móviles: WhatsApp, Instagram y Spotify. Desarrollo Web: Facebook, Amazon y Netflix. Inteligencia artificial y ciencia de datos: Google Assitant, Siri, Alexa, Tesla Autopilot y ChatGPT. Software de productividad: Microsoft, Google Drive entre otras.
5. LENGUAJES DE PROGRAMACION
5.1. Tipos de bajo nivel: Lenguaje de máquina; Son códigos binarios (representados por o y 1) que la computadora ejecuta directamente. Lenguaje de ensamblador; usa abreviaciones (mnemonics) en lugar de un código binario, pero sigue siendo específico para cada procesador.
5.1.1. Tipos de alto nivel: PYTHON fácil de aprender y muy usado en IA y desarrollo web. JAVA popular en aplicaciones empresariales y móviles. C++ potente y rápido, utilizado en videos juegos y sistemas operativos.
5.2. CARACTERÍSTICAS DE PYTHON: Simplicidad, su sintaxis es clara y fácil de leer. interpretado, no se necesita de compilación y se ejecuta por línea por línea. Multiplataformas, funciona en windows, macOS y linux. Aplicaciones versátiles, se usan en el desarrollo web, inteligencia artificial, automatización,ciencia de datos entre otras más.
5.3. CARACTERÍSTICAS DE JAVA: Orientación a objetos, se basa en clases y objetos que facilitan la reutilización de código. Multiplataforma (WORA), write once, run anyywhere, el códiigo se ejecuta en cualquier sistema con Java virtual machine. Tipado estático, las variables deben declarase con tipos de datos específicos. Alto rendimiento, Son más rápidos que los lenguajes intrepetados gracias a la compilación en bytecode.
5.4. CARACTERÍSTICAS DE C++: Es un lenguaje de alto y de bajo nivel, que puede usarse para programación en alto nivel en mmanipulación de hadqare. Eficiente y rápido, es ideal para softqare de allto rendimiento como videojuegos y sistemas operativos. Manipulación directa de memoria, donde se usan como puntero y gestor manual de memoria para optimización. Soporta programación genérica, usa plantillas, para escribir código reutilizable.
6. CARACTERÍSTICAS DE PROGRAMACIÓN ESTRUCTRADA
6.1. SECUENCIA: Ejecuión lineal, instrucciones que se ejcunta en orden una tras otas. Sin saltos, no tienee interrupciones en el flujo del programa. Claridad y simplicida, fácil de entender y depurar (eliminar). Uso de operaciones básicas, que se basan en asignaciones, cálculos y llamadas a funciones.
6.2. SELECCIÓN: Toma de decisiones, donde nos permite ejecutar diferentes instrucciones según una condición. Uso de condicionales, se empplean estructuraas como if, else y switch para evaluar condiciones. Evalúa expresiones booleanas, se basa en comparaciones como (==,!=,<,> entre otras más). Mayor flexibilidad, nos permite responder a distintas situaciones dentro del código.
6.3. REPETICÓN: Ejecuión cíclica, permite repetir un bloque de código varias veces. Uso de bucles, donde se utilizan estructuras como for, while y do-whilw. Optimización del código, nos permite evitar la repetiición manual de instrucciones. Mayor eficiencia, ayuda a reducir el tiempo y el esfuerzo en la programación. Posibilidad de bucles infinitos , ocurre si la conndición nunca se vuelve false.
6.4. VENTAJAS: Código más legible, nos facilita la compresión y mantenimineto del programa. Menos errores, se reduce la probabilidad de fallos debido a su estructura clara. Facilita la depuración, es más facil identificar y correguir errores. Reutilizacion del código fuente, ya que nos permite crear funcioness y módulos reutilizables. Mejor gestión de recursos, debido a que optimiza el uso de la memoria y procesamiento.
7. VARIABLES, TIPOS DE DATOS Y CONSTANTES
7.1. CONCEPTO DE VARIABLE: Se conoce como espacio de memoria donde se almacena un valor que puede cambiar durante la ejecución del programa.
7.2. TIPOS DE DATOS: Enteros, (int) números sin decimales. Flotantes, (float, double) números con decimales. Cadenas, (string, char) texto o caracteres. Booleanos, (bool) valores true o false.
7.3. CONSTANTES: Se entiende por constantes que es un valor almacenado en la memoria que no puede cambiar durante le ejecución del programa. Tipos de constante, númericas: const int MAX_EDAD = 100; . De testo, ( cadenas) const string MENSAJE = "hola" ; . Booleanas, const bool ES_ACTIVO = true ; . Sus ventajas son la seguridad, legibilidad y eficiencia.
7.4. DECLARACIÓN: Sereconoce que es el proceso de crear una variable o constante dentro del programa, donde nos especifica su tipo de dato. Ejemplo en C++: int edad ; (se declara la variable edad pero aún no tiene valor). Para PYTHON: edad = none (se declara sin un valor inicial).
7.5. ASIGNACIÓN: Es el proceso de dar un valor a una variable o constante después de declararla. Ejemplo en C++: edad = 25 ; . Para PYTHON: edad = 25 .