conceptos básicos y metodología de la programación

33
Conceptos Básicos y metodología de la Programación

Upload: marco-chunab

Post on 26-Jun-2015

6.470 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Conceptos básicos y metodología de la programación

Conceptos Básicos y metodología de la Programación

Page 2: Conceptos básicos y metodología de la programación

Computadora• Máquina capaz de

aceptar datos de entrada, procesarlos y entregar resultados de salida de información.

• Una computadora es una máquina de procesamiento de información.

• Los ordenadores sirven para la gestión de datos, almacenan grandes cantidades de datos e información y permite recuperarlos y enviarlos a gran velocidad.

Page 3: Conceptos básicos y metodología de la programación

Software• Conjunto de programas que le indican a la

computadora qué hacer y cómo operar para generar los resultados esperados.

Page 4: Conceptos básicos y metodología de la programación

Dato e Información• Un dato es aquella representación de una entidad

y que es susceptible de tratamiento ya sea de un programa o proceso informático.

• La información es un mensaje válido para un receptor o resultado del procedimiento de datos.

• En el momento en que un dato se transmite y se le añade un contexto, se convierte en información.

Page 5: Conceptos básicos y metodología de la programación

Tipos de Datos• NÚMEROS:• ENTEROS: Número entero desde un valor negativo alto hasta

un valor positivo alto. Este puede ser short o long dependiendo del tamaño del número.

• FLOAT: Números con pocos decimales.

• Double: Números con muchos decimales.

• LÓGICO: Verdadero y falso.

• CARÁCTER: Almacenan información alfa-numérica.

Page 6: Conceptos básicos y metodología de la programación

¿Qué es un programa?• La unión de una

secuencia de instrucciones que una computadora puede interpretar y ejecutar y un conjunto de estructuras de datos que almacenan la información sobre la que la operan las instrucciones.

Page 7: Conceptos básicos y metodología de la programación

Para programar se requiere de:• Fundamentos generales de

programación.• Lógica para entender,

conceptualizar y solucionar el problema.

• Conocimiento de cualquier lenguaje de programación.

Page 8: Conceptos básicos y metodología de la programación

Lenguaje de programación• Es una técnica de

comunicación estilizada que se utiliza para controlar el comportamiento de una maquina (usualmente una computadora).

• Permite al programador especificar de manera precisa sobre que datos debe operar una computadora.

Page 9: Conceptos básicos y metodología de la programación

Los principales lenguajes utilizados son:• Lenguaje Máquina

• Lenguaje de bajo nivel o ensamblador

• Lenguajes de alto nivel

Page 10: Conceptos básicos y metodología de la programación

Lenguaje Máquina• Es un lenguaje que puede ser interpretado

directamente por los circuitos internos de la máquina.

• Está basado en instrucciones compuestas por sentencias de ceros y unos.

Page 11: Conceptos básicos y metodología de la programación

• Ventajas:• 1)No requiere

traducción, la máquina lo interpreta.

• 2)Opera directamente con la máquina.

• 3)Puede ser eficiente con el manejo de los recursos.

• Desventajas:• 1)Difícil de

aprender, implementar y mantener.

• 2)Es único y particular para cada procesador

Page 12: Conceptos básicos y metodología de la programación

Lenguaje de Bajo Nivel o Ensamblador• Es un lenguaje fuente para codificar sentencias

simbólicas.• Un ensamblador convierte cada instrucción en

instrucciones de lenguaje de máquina.

Page 13: Conceptos básicos y metodología de la programación

• Ventajas:• 1)No es tan

complicado como el lenguaje máquina.

• 2)Eficiente en el manejo de recursos.

• Desventajas:• 1)Cada procesador

tiene su propio juego de instrucciones en ensamblador.

• 2)Dependencia total por la máquina lo que impide la transportabilidad de los programas.

• 3)Debe ser traducido-ensamblado.

Page 14: Conceptos básicos y metodología de la programación

Lenguaje de Alto Nivel• Es un lenguaje orientado al problema o

procedimiento.• Son los más cercanos al lenguaje humano.• Ejemplos: COBOL,PL/I, FORTRAN, orientado a

objetos.

Page 15: Conceptos básicos y metodología de la programación

• Ventajas:• 1)Son

independientes del procesador.

• 2)Son más fáciles de aprender, implementar y mantener.

• 3)Tiene un carácter genérico.

• Ventajas:• 1)Menos

eficiente en el manejo de recursos.

• 2)Requiere un proceso de traducción.

Page 16: Conceptos básicos y metodología de la programación

Metodología de la Programación• Análisis del Problema• Diseño de los algoritmos• Codificación del programa• Compilación• Verificación/Depuración• Documentación

Page 17: Conceptos básicos y metodología de la programación

Análisis del Problema

Page 18: Conceptos básicos y metodología de la programación

Diseño de los Algoritmo• Conjunto preescrito de operaciones (reglas o

instrucciones) bien• definidas para resolver un problema en un número

finito de pasos• Un algoritmo: Finito (Resultado en el tiempo), Definido

(No puede ser ambiguo), Preciso (ejecución paso a paso).

• El diseño del algoritmo es bastante independiente del lenguaje de programación (sí depende del enfoque)

• Definir paso a paso con detalle• Diseño descendente o modular:División del problema en subproblemas

Page 19: Conceptos básicos y metodología de la programación
Page 20: Conceptos básicos y metodología de la programación

Diagrama de Flujos

Page 21: Conceptos básicos y metodología de la programación

Simbología del Diagrama de Flujo

Page 22: Conceptos básicos y metodología de la programación
Page 23: Conceptos básicos y metodología de la programación

Pseudocódigo• Se trata de un lenguaje imitación del de un

ordenador.• No está estandarizado.• Cada programador tiene el propio.• Mezcla de lenguaje natural, símbolos, términos y

características de varios lenguajes de programación.

Page 24: Conceptos básicos y metodología de la programación
Page 25: Conceptos básicos y metodología de la programación

Codificación del Programa

Escribir el algoritmo en un lenguaje de programación.• Permite ser leído y ejecutado por el ordenador.Tipos de lenguajes:• De bajo nivel (dependen de la máquina sobre la

que se ejecuta):Lenguaje Máquina (escritura en binario)• Ensambladores: (escritura simbólica)

Page 26: Conceptos básicos y metodología de la programación

De alto nivel (no dependen de la máquina):• Imperativos:

• Estructurados:• FORTRAN• C• Pascal

• Orientado a Objetos:

• Java• C++• Ada 95

Page 27: Conceptos básicos y metodología de la programación

Declarativos:• LISP/PROLOG

• La salida de la fase de codificación son los programas fuente (que todavía no se pueden ejecutar directamente sobre el ordenador).

• Un programa se compone de un conjunto de instrucciones que indican las operaciones elementales a ejecutar y la manera en que se encadenan.

Page 28: Conceptos básicos y metodología de la programación

Compilación• Salvo que el programa se escriba directamente en

lenguaje máquina (muy improbable) siempre debe existir un traductor.

• La fase de compilación y enlace permite leer el programa escrito en lenguaje de alto nivel y traducirlo a lenguaje maquina.

Page 29: Conceptos básicos y metodología de la programación
Page 30: Conceptos básicos y metodología de la programación

Fases de un Compilador

Page 31: Conceptos básicos y metodología de la programación
Page 32: Conceptos básicos y metodología de la programación

Verificación/Depuración• Errores en tiempo de ejecución- División por cero, apertura de ficheros inexistentes,...• Errores lógicos (los más difíciles de detectar)- Resultados incorrectos• Optimización del algoritmo.

Page 33: Conceptos básicos y metodología de la programación

Documentación• Se genera a lo largo de todas la fases.• Debe permitir acceder al programa a una persona

distinta al programador.• Interna:- Código de programa fuente- Comentarios• Externa:- Especificación de requisitos- Listado de programa fuente- Explicación de los algoritmos (CLARO y CONCISO)- Diagramas de flujo o pseudocódigo.- Especificación de datos, formatos de pantalla,...