Ing. Johanna Macias Programación Contacto: [email protected] Twitter: @ingjmacias Blog Docente:...
-
Upload
pablo-espejo-maldonado -
Category
Documents
-
view
219 -
download
0
Transcript of Ing. Johanna Macias Programación Contacto: [email protected] Twitter: @ingjmacias Blog Docente:...
INTRODUCCIÓN A LA PROGRAMACIÓN
Ing. Johanna MaciasProgramación
Contacto:[email protected]: @ingjmaciasBlog Docente:http://jmacias.wordpress.com
La unidad lógica del computador
Software Unidad lógica del computador Compuesto por sentencias,
instrucciones y código ejecutable Permite obtener los beneficios del
hardware del computador. Ordenan, procesan y transforman
datos en Información
Datos e Información Datos
Todo carácter, número, cadena, entre otros…
No tiene un significado específico por si mismo.
Es la entrada de cualquier computador
Información Es un conjunto de
Datos Por si mismo tiene un
significado lógico Es la salida de un
computador
Bolivar09
Avenida, Calle, Prócer, Moneda, Apellida, Nombre,
Lugar, Plaza, Banco, Urbanización,
Universidad, Museo
Número, calificación, medida, posición, fecha,
cantidad.
Urbanización Bolivar, número 9
Información de Dirección
Software de Sistema
Controla la comunicación entre el hardware
Sirve de puente entre el usuario y la máquina
Administra los recursos del computador
Provee herramientas para la administración del hardware al usuario
Gestiona los recursos y servicios del Software instalado
Está compuesto por: Bios: Sistema de gestión del
Hardware instalado en la tarjeta madre del computador. Permite la configuración de los elementos bases.
Controladores y Drivers: Programas que permiten la comunicación del Sistema Operativo con un nuevo hardware instalado, junto a la capacidad de administración.
Sistema Operativo: Software que controla, administra y gestiona los recursos del hardware y la comunicación con otras aplicaciones.
Software de Aplicación
Provee herramientas para facilitar una labor específica
Necesita el soporte del Software del Sistema para trabajar
Creados para realizar funciones especificas referentes a un tipo de trabajo.
Permite la creación de nuevos archivos, documentos o elementos almacenables.
Aplicación
BIOS
Tipos de Software de Aplicación
Creativo: Editores de imágenes, editores de multimedia, software de dibujo vectorial, software de grabación.
Seguridad: Antivirus, AntiSpyware , limpiadores de temporales, detector de fallas.
Utilidades: conversores, grabadores de DVD y CD, notas, calendarios, entre otros.
Ofimática: Editores de Textos, hojas de cálculos, presentación de diapositivas, calculadoras, agendas, servidores de correos.
Entretenimiento: Reproductor de DVD, de video, de audio, multimedia, juegos.
Comunicación: Navegadores web, mensajería instantánea, salas de chat, servicios de conectividad de red.
Tipos de Software
Software de Desarrollo
Software Web
Permite la creación de nuevos programas.
Trabaja en base a uno o más lenguajes de programación.
Cuenta con un Compilador o un Interprete.
Permite la creación, edición, testeo y ejecución de código fuentes.
Utilizados para crear nuevas aplicaciones.
Se ejecuta en un servidor en Red.
Puede ser accesible a través de Internet o Intranet.
Por lo general se cargar en un navegador Web
Provee servicios en webs para realizar actividades sin necesidad de movilizarse
Bandejas de correos, Banca Online, Comercio electrónico, programas online.
Distribución de programasSoftware Libre vs Propietario Software
Propietario Código encapsulado
y oculto al usuario Solo la empresa
tiene licencia para modificar su código
Distribución por medios comerciales
Licencias de uso y renovable
Software Libre Código Libre y
accesible para cualquier usuario
Cualquiera tiene la libertad de modificar a su gusto el código
Distribución por medio de copias y descargas libres.
Sin necesidad de pagos por licencias
Tipos de SoftwareGama de posibilidades
¿Qué es un programa? Conjunto de Instrucciones Estas instrucciones son ejecutadas por el
computador Dependiendo de los datos, el procesa y entrega un
resultado.Conjunto de Instrucciones programadas que ejecuta el computador para entregar una serie de resultados
acorde a los datos de entrada
¿Qué es programar? El arte de resolver problemas utilizando las
herramientas del hardware y software del computador, dirigiendo y transcribiendo un conjunto de ordenes con el fin de transformar los datos.
Lenguajes de Programación Un lenguaje de programación es un conjunto
limitado de palabras y de símbolos que representan procedimientos, cálculos, decisiones y otras operaciones que pueden ejecutar una computadora.
Por medio de estas sentencias o líneas de código se desarrolla cualquier programa en el computador.
Posee sus propias reglas semántica y sintáctica.
Puede ser interpretado por programas específicos.
Sistemas de Numeración
Sistema Binario: Código conformado por 0 y 1. Las cifras se basan en estos dos caracteres y es el utilizado en la placa electrónica del computador.
Sistema Decimal: Código basado en 10 dígitos (0 al 9) y es el utilizado por la sociedad para describir cifras, fechas y números.
Sistema Octal: Basado en los dígitos del 0 al 7, permite una transformación más rápida del sistema binario al sistema decimal, para el uso de los computadores.
Sistema Hexadecimal: con un conjunto de números y letras (0 al 9 y del A al F), para minimización de grandes cifras numéricas en los sistemas de computos
Niveles de Lenguaje de Programación Lenguaje de Bajo Nivel:
Lenguaje de Máquina: Conformado por solo los dígitos 0 y 1, son los más rápidos de ejecutar, ya que no necesitan un interpretador para el hardware. Por medio de grandes líneas de código de 0 y 1 se da ordenes al hardware del sistema
Lenguaje Ensamblador: Esta por encima del lenguaje de maquina, esta vez incorporando cortas palabras abreviadas para comandos muy utilizados. Trabaja a su vez con el sistema Octal y Hexadecimal.
Niveles de Lenguaje de Programación Lenguaje de Medio Nivel
Este tipo de lenguaje ya incluye más comando y palabra fáciles de memorizar, para dar las ordenes al computador. Aunque todavía tienen acceso directo a la memoria, como el ensamblador.
Lenguaje de Alto Nivel Este lenguaje esta más guiado al
lenguaje humano, conteniendo palabras claves y comandos listos para utilizar, siguiendo la lógica del programador.
Niveles de Lenguajes
Lenguaje de Medio Nivel
Lenguaje Ensamblador
Lenguaje de Maquina
Compiladores e Interprete
Compiladores Traduce totalmente el programa a código
maquina. Se ejecuta el código mucho más rápido. Se identifican los errores rápidamente. Para depurar errores deben detenerse el
proceso y volver a ejecutar.
Interprete Ejecuta el código basado en el mismo lenguaje. Es un procesamiento más lento. Se puede depurar errores sin reiniciar la
ejecución. No crea un archivo externo con el código.
Proceso de compilación
Interpretación del código fuente
Evaluación Sintáctica (verificación que los símbolos y sentencias sean aceptables según las reglas)
Evaluación Semántica (verificación que el sentido de cada sentencia sea interpretable)
Conversión de los caracteres y símbolos al lenguaje de maquina.
Lenguaje de Medio Nivel
Lenguaje Ensamblador
Lenguaje de Maquina
Programación Imperativa
También llamada por procedimientos Se basa en variables que cambian de
estado Conjunto de instrucciones que le
indican al computador cómo realizar una tarea.
C = (5) + (6)C = 11
A= 5 ; B=6C= A + B
Programación Declarativa
No define como resolver el problema. Describe la problemática. La solución se realiza por parámetros
internos del lenguaje. No se diseña como llegar a la
solución Más que en el “como” se resuelve se
busca el “que” deseo obtener.
Programación Lógica
Une la programación Declarativa y Funcional.
Usa hipótesis lógica para crear el resultado
Usado en sistemas Expertos y control de procesos
Se prepara al computador para tomar decisiones en base a premisas lógicas
Programación Orientada a Objeto Se trata el problema basado al
proceso real Se basa en la codificación de Clases
y Objetos Los objetos son programados de
forma individual Estos Objetos pueden heredar
propiedades de sus clases u objetos superiores.
Herramientas para la construcción de programas Algoritmo: Pasos ordenados y
detallados que permiten la resolución de cualquier problema con su seguimiento. Es finito: Tiene un inicio y un final. Sus pasos son precisos y detallados. Tienen un orden lógico de ejecución. Lleva a un resultado. Puede ser ejecutado por cualquier
persona y llegar exactamente al mismo resultado.
Ejemplos de AlgoritmoAlgoritmo para enviar un correo
Algoritmo para dividir dos números
1. Entrar al servidor de correo
2. Ingresar el usuario y la contraseña
3. Presionar Iniciar sesión.
4. Si entró a la bandeja de entrada.
1. Presionar a la opción Enviar Correo.
2. Ingresar el correo electrónico, asunto y mensaje.
3. Presionar el botón enviar.4. Si se envió el correo:
1. Cerrar sesión.
5. Si no:1. Verificar los datos del correo.2. Volver al paso 3
5. Si no:1. Verificar los datos.2. Volver al paso 3
6. Fin
Pedir el primer número. Pedir el segundo número. Si el segundo número es
igual a 0: “No se puede realizar la
operación”
Si no: Dividir el primer número
con el segundo número. Mostrar resultado. Fin.
Diagramas de flujos.
Conjunto de simbología gráfica que permite la visualización de los pasos de un proceso para llegar al resultado.
Entre sus característica se encuentra que tienen un inicio y un fin de su construción.
Se realiza en base a un algoritmo. Permite ver los distintos caminos de un proceso en
base a las decisiones y condiciones. Permite la visualización sencilla del proceso y sus
posibles resultados. Gráficos que mantienen su significado a nivel universal
y en base a cualquier idioma.
Gráficos del Diagrama de Flujo
PROCESOS INICIO/FIN
ENTRADASSALIDAS
DECISIONES
Calculos, operaciones, declaraciones de variables y sentencias
Definir pedidas de datos e impresión de resultados Condiciones que se
deben cumplir o no
Definir el principio y el fin del programa
Definir la dirección del flujoUnir flechas de flujos a un punto.
Tipos de Diagrama de Flujo Formato vertical: En él, el flujo o la secuencia de las
operaciones, va de arriba hacia abajo. Es una lista ordenada de las operaciones de un proceso con toda la información que se considere necesaria, según su propósito.
Formato horizontal: En él, el flujo o la secuencia de las operaciones, va de izquierda a derecha.
Formato panorámico: El proceso entero está representado en una sola carta y puede apreciarse de una sola mirada mucho más rápido que leyendo el texto, lo que facilita su comprensión, aún para personas no familiarizadas. Registra no solo en línea vertical, sino también horizontal, distintas acciones simultáneas y la participación de más de un puesto o departamento que el formato vertical no registra.
Formato Arquitectónico: Describe el itinerario de ruta de una forma o persona sobre el plano arquitectónico del área de trabajo. El primero de los flujogramas es eminentemente descriptivo, mientras que los utilizados son fundamentalmente representativos.