Please enable JavaScript.
Coggle requires JavaScript to display documents.
PROGRAMACIÓN, EJEMPLOS, EJEMPLOS, Ventajas y. desventajas, ), INT 0x80 en…
PROGRAMACIÓN
FASES EN EL DESAROLLO DE LOS PROGRAMAS
2. Prueba del Programa
Después de compilar, el siguiente paso es la prueba del programa. La prueba tiene como objetivo asegurar que el programa funcione según los requisitos especificados y se comporte correctamente en diferentes condiciones.
Consiste en ejecutar el programa con distintos datos de entrada y comparar los resultados obtenidos con los resultados esperados. Puede realizarse manualmente o mediante programas de prueba automatizados. Existen técnicas como la prueba de caja negra (solo entradas y salidas) y la prueba de caja blanca (examina también el código).
3. Depuración del Programa
La depuración es el proceso de identificar y corregir errores o bugs en el programa. Los errores pueden ser sintácticos, lógicos o de tiempo de ejecución.
Este proceso requiere conocimiento del código y razonamiento lógico para seguir el flujo de ejecución. Las herramientas de depuración permiten ejecutar el programa paso a paso, examinar variables y rastrear la causa de los errores hasta corregirlos.
1. Ensamblaje o Compilación
En la etapa de ensamblaje o compilación, el código fuente escrito por el programador se traduce a un formato que puede ser ejecutado por la máquina. Este proceso es esencial en el desarrollo de programas, ya que convierte las instrucciones en código de máquina comprensible para la computadora.
Los ensambladores convierten el código de ensamblaje en código de máquina, y los compiladores realizan la misma tarea para el código de alto nivel.
La compilación tiene dos pasos: primero, el compilador lee y analiza el código fuente, comprobando la sintaxis y coherencia de las instrucciones. Segundo, traduce el código analizado a lenguaje de máquina, generando instrucciones binarias que la computadora puede ejecutar. Además, este proceso también implica la optimización del código para aumentar la eficiencia y velocidad.
Conclusión del Proceso
La prueba y depuración son etapas cruciales en el desarrollo de programas. No son procesos lineales, ya que pueden requerir volver a etapas anteriores para solucionar problemas. En el desarrollo moderno se utiliza un enfoque iterativo y ágil, donde codificación, prueba y depuración se realizan en ciclos repetidos hasta que el programa cumpla con los requisitos especificados.
LENGUAJES Y TIPOS DE PROGRAMACIÓN
TIPOS DE LENGUAJES DE PROGRAMACION
Un lenguaje de programación es una serie de instrucciones que le permite a un programador escribir programas, los cuales son básicamente instrucciones que una computadora puede seguir para realizar una tarea específica.
TIPOS
ALTO
NIVEL
Los lenguajes de programación de alto nivel son una evolución necesaria para hacer la
programación más accesible y eficiente. Mientras que los lenguajes de bajo nivel interactúandirectamente con el hardware y tienen una representación más cercana al código binario, los
lenguajes de alto nivel están diseñados para ser más fáciles de leer y escribir por los seres humanos, acercándose más a los lenguajes naturales.
BAJO
NIVEL
tipo de lenguaje que proporciona un control muy
directo sobre la memoria de la computadora y los procesos internos.
Lenguaje de máquina
1 more item...
Lenguaje ensamblador
1 more item...
Tipos de programación
Son paradigmas de programación que indican cómo se estructuran y organizan las instrucciones para resolver un problema.
TIPOS
Programación declarativa: Se centra en qué hacer, no en cómo hacerlo.
Programación imperativa: Describe la computación con instrucciones paso a paso que cambian el estado del programa.
Programación estructurada: Organiza el programa en módulos, bloques y estructuras de control.
Programación modular: Divide el programa en módulos independientes para resolver problemas grandes.
Programación orientada a objetos: Usa objetos y clases con abstracción, encapsulación, herencia y polimorfismo.
Programación orientada a eventos: Basada en eventos y en responder a la interacción del usuario o sistema.
PROGRAMACIÓN
ENTORNOS DE PROGRAMACIÓN
TIPOS DE ALGORITMOS
Algoritmos estáticos
Algoritmos probabilísticos
Algoritmos adaptativos
Un algoritmo es un conjunto ordenado y finito de operaciones para resolver un problema específico, es decir, un procedimiento con pasos para realizar una tarea.
EJEMPLOS
PyCharm → entorno usado en programación Python.
Eclipse → entorno popular para Java.
Visual Studio → usado en C# y .NET.
Xcode → programación en Swift y Objective-C.
Git → control de versiones del código.
EJEMPLOS
Definir una función en términos de sus entradas y salidas sin especificar explícitamente cómo se realiza el cálculo como una función para calcular el factorial de un número donde simplemente se define que el factorial es el producto de todos los números enteros positivos desde 1 hasta ese número y en el mundo de la música una partitura que solo describe las notas y el ritmo que se deben seguir dejando la interpretación al músico
Programación imperativa
Una aplicación para gestionar una biblioteca con un módulo para gestionar los usuarios otro para gestionar los libros y otro para gestionar los préstamos utilizando estructuras de control y un aeropuerto y su sistema de gestión de vuelos dividido en módulos como el registro de pasajeros el control de seguridad el embarque de pasajeros y el despacho de vuelos
La construcción de una casa dividida en partes como la cimentación las paredes el techo el cableado eléctrico y la fontanería que luego se ensamblan juntas y la preparación de una receta donde cada etapa como la preparación de ingredientes la cocción y la presentación final es un módulo independiente
Modelar elementos del mundo real como automóviles personas o bancos en términos de clases y objetos una clase Vehículo de la que heredan Automóvil Motocicleta y Camión y un método sonido en una clase Animal con diferentes implementaciones como ladrido en Perro y maullido en Gato
Ventajas y. desventajas
Algoritmos estáticos:
Algoritmos probabilísticos:
Algoritmos adaptativos:
)
INT 0x80 en Linux/MOV, ADD
Suma (ADD)/Mover datos (MOV)/Hexadecimal (Representación)
Python, Java, C++, JavaScript, C#, Ruby, PHP, BASIC, Pascal, COBOL y SQL.
Algoritmos con tamaño de memoria fijo, donde el espacio en memoria no varía durante la ejecución y se usan cuando la cantidad de datos es conocida y constante.
Algoritmos que hacen uso de la aleatoriedad como parte de su lógica y pueden producir resultados diferentes para el mismo conjunto de entradas.
Algoritmos que cambian su comportamiento en función de la información obtenida durante su ejecución, es decir, se adaptan a los datos o circunstancias.
Son métodos más sencillos de diseñar e implementar, y en ciertos casos pueden ejecutarse más rápido porque siguen una estructura fija. Sin embargo, tienen poca flexibilidad y no funcionan bien cuando la cantidad de datos cambia o el entorno es variable.
Se caracterizan por utilizar aleatoriedad para resolver problemas, lo que puede permitirles ahorrar tiempo o recursos, manteniendo generalmente una probabilidad de error muy pequeña. No obstante, siempre existe cierta posibilidad de error y la aleatoriedad que emplean suele ser pseudoaleatoria, no completamente real.
Estos algoritmos se ajustan a las características del problema y suelen ser más eficientes cuando trabajan con grandes volúmenes de datos o datos cambiantes. Como desventaja, son más complejos de diseñar y analizar, y su comportamiento puede resultar menos predecible.
Un entorno de programación es un software diseñado para maximizar la productividad del programador, integrando compilador, depurador y editor de código para trabajar eficientemente y estructurar el código.
Funcionalidad:
Suelen ofrecer interfaz gráfica (GUI), resaltado de sintaxis, sugerencias de código, depuración y ejecución directa del programa, además de control de versiones y herramientas para distintos lenguajes.
Programación declarativa
Un programa para sumar dos números en Python donde se define una función de suma se inicializan variables se llama a la función y se imprime el resultado siguiendo instrucciones paso a paso y el proceso de hacer una compra en línea donde los pasos específicos como agregar productos al carrito ingresar los datos de envío y seleccionar un método de pago se describen de manera secuencial y se ejecutan en orden
Programación estructurada
Programación modular
Programación orientada a objetos