1. Ciclo de vida del software
1.1. Planteamiento del problema
1.2. Analisis del problema
1.3. Diseño de algoritmo
1.4. Implementación
1.5. Pruebas y validación
1.6. Documentación
2. Las computadoras
2.1. Modelo Von Neumann
2.1.1. Von Neumann propuso que el programa y los datos se almacenaran en una memoria y así no se debería reescribir todo el programa cuando sufriera alguna modificación si no solo reescribir la parte afectada
2.2. Estructura
2.2.1. • CPU dividido en ALU y CU • Memoria principal • Dispositivos de entrada y salida
2.2.1.1. ROM: Memoria de solo lectura, es un tipo de memoria en los dispositivos que es de solo lectura (read-only memory) aunque ya existen otros tipos de ROM que se pueden modificar el principal objetivo de este tipo de memorias es almacenar información que no necesita modificarse.
2.2.1.2. RAM: Memoria de acceso aleatorio en este tipo de memorias se puede leer y escribir de manera temporal en cualquiera de sus posiciones sin tener un orden especifico, es rápida y existen diferentes tipos de memorias RAM y velocidades
2.2.1.3. Ciclo Fetch: es un conjunto de acciones específicas que realiza el CPU para ejecutar una instrucción de un programa las acciones habitualmente son 4: • Buscar la instrucción en memoria • Decodificar la instrucción • Ejecutar la instrucción • Almacenar o guardar resultados
2.2.1.4. La unidad central de procesamiento
3. Lenguajes de programación
3.1. Paradigma de programación
3.1.1. Un modelo u estilo de programación,
3.1.2. • Orientado a objetos • paradigma por procedimientos • paradigma declarativo
3.2. Lenguaje maquína
3.2.1. lenguaje de 0 y 1 que interactua con la computadora y no es amigable al ser humano
3.3. Lenguaje de alto nivel
3.3.1. Se caracteriza por expresar el algoritmo de una manera adecuada y entendible al ser humano
3.3.1.1. JAVA: Lenguaje de programación orientado a objetos enfocado a poder utilizarse en varios dispositivos sin tener que volver a programas, es uno de los lenguajes de programación más populares cliente-servidor