Introduccin a la programacin
Programacin DAM 1 Teresa Valtuea
Programacin
DAM 1
Teresa Valtuea
Lenguaje ensamblador
Daban un nombre (mnemnico) a cada tipo de instruccin y cada direccin (etiqueta). Era especfico de cada arquitectura Ejemplo de un programa: mov al, 0x61 que significa mover el valor hexadecimal 61 (97 decimal) al registro 'al'.
Programacin
DAM 1
Teresa Valtuea
Programacin
DAM 1
Teresa Valtuea
Programacin
DAM 1
Teresa Valtuea
Inconvenientes
Necesitan traducciones del lenguaje fuente a un ejecutable que entienda la mquina No aprovechan tanto los recursos internos de la mquina Ocupan ms memoria
Programacin
DAM 1
Teresa Valtuea
Programacin
DAM 1
Teresa Valtuea
Definiciones
Programa: conjunto de instrucciones que indican a la computadora la secuencia de pasos para resolver un problema Algoritmo: conjunto de instrucciones que realizan una tarea especfica Cdigo fuente: cdigo escrito en algn lenguaje de alto nivel Compilador: genera un cdigo listo para ejecutar por la mquina Intrprete: va ejecutando el cdigo lnea a lnea y realizando comprobaciones
Programacin
DAM 1
Teresa Valtuea
Programacin
DAM 1
Teresa Valtuea
FORTRAN
Fue definido en el ao 1955 por IMB Es el ms antiguo de todos Est especializado en aplicaciones tcnicas y cientficas Muy potente en los clculos matemticos Limitado en las aplicaciones de gestin, manejo de archivos, tratamiento de cadenas y edicin de informes
Programacin
DAM 1
Teresa Valtuea
COBOL
COmmon Business Oriented Languaje Era el lenguaje ms utilizado en las aplicaciones de gestin Fue creado en 1960, patrocinado por el departamento de defensa de Estados Unidos para disponer de un lenguaje universal para aplicaciones comerciales
Programacin
DAM 1
Teresa Valtuea
BASIC
Fue diseado en 1965 por dos profesores para proporcionar a los principiantes un lenguaje fcil de aprender Beginners All-purpose Symbolic Instruction Code Muy fcil de usar, simple de entender y fcil de traducir
Programacin
DAM 1
Teresa Valtuea
VISUAL BASIC
Apareci en mayo de 1991 Produce rpida y efectivamente aplicaciones Windows Proporciona un ambiente ntegramente visual utilizando un editor, un compilador y un debugger.
Programacin
DAM 1
Teresa Valtuea
PASCAL
Fue creado por un matemtico suizo en 1970 Su nombre proviene del filsofo y matemtico francs Blaise Pascal Fue el primer gran lenguaje creado despus de haber sido diseminados los conceptos de la programacin estructurada
Programacin
DAM 1
Teresa Valtuea
C
Fue creado en 1972 Se quera conseguir un lenguaje que fuera independiente de la mquina, con el que escribir el lenguaje UNIX Su uso luego se ha extendido para programas tcnicocientficos, bases de datos, proceso de textos, ...
Programacin
DAM 1
Teresa Valtuea
ADA
Ultimo intento para obtener un nico lenguaje para cualquier tipo de aplicacin Compilacin separada, tipos abstractos de datos, programacin concurrente y estructurada, ... Como inconveniente su gran extensin, inflexible e ineficiente
Programacin
DAM 1
Teresa Valtuea
LISP
List Processing Orientado a la generacin de listas Desarrollado en 1960 Es un lenguaje interpretado, donde cada expresin es una lista de llamadas a funciones
Programacin
DAM 1
Teresa Valtuea
DELPHI
Desarrollado en 1995 Basado en el objeto del lenguaje Pascal, incluye herramientas de programacin visual y genera programas ejecutables (.exe) Incluye un sistema de bases de datos Borland que permite acceder a dBase, ODBC Tambin utiliza controles de Visual Basic
Programacin
DAM 1
Teresa Valtuea
JAVA
Crea programas seguros, porttiles, orientados a objetos interactivos, para mejorar el intercambio de informacin a travs de internet. Su desarrollo ha sido vertiginoso Ventajas: simple y poderoso, robusto, seguro, orientado a objetos, interactivo, independiente del hardware, interpretado y rpido, fcil de aprender, ...
Programacin
DAM 1
Teresa Valtuea
JAVASCRIPT
Es un lenguaje diseado para ejecutarlo en internet, para liberar al servidor de ejecutar todo, se ejecuta en el cliente. Puede realizar clculos simples, formatear texto, validar un formulario, html dinmico, ...
Programacin
DAM 1
Teresa Valtuea
HTML
Hyper Text Markup Language Sistema de marcas para enlazar texto, sonido y grficos dentro de un mismo documento Es la forma de manejar y presentar informacin en la red
Programacin
DAM 1
Teresa Valtuea
PERL
Lenguaje especializado en el procesamiento de textos Particularmente en extraer y validar las respuestas a cuestionarios incluidos en pginas web
Programacin
DAM 1
Teresa Valtuea
PHP
Lenguaje que se acopla a HTML para definir procedimientos que debe realizar el servidor web: procesar un formulario, enviar o extraer datos de una base de datos, ...
Programacin
DAM 1
Teresa Valtuea
SQL
Lenguaje desarrollado para facilitar la consulta de bases de datos, acotando progresivamente la bsqueda Indicas qu quieres obtener ms que cmo hacerlo Existen numerosas aplicaciones de administracin de bases de datos que recurren al SQL (Oracle)
Programacin
DAM 1
Teresa Valtuea
ASP
Active Server Pages Lenguaje basado en Visual Basic para ejecutarse en un servidor web Es interpretado Se mezcla con cdigo HTML para generar pginas web
Programacin
DAM 1
Teresa Valtuea
POWER BUILDER
Se utiliza para desarrollo de aplicaciones para un ambiente cliente/servidor de Windows Soporta varias bases de datos (Oracle, DB2)
Programacin
DAM 1
Teresa Valtuea
Programacin
Es la proyeccin, planificacin y ejecucin de una tarea o proceso Describir lo que hace una computadora para resolver un problema concreto utilizando un determinado lenguaje
Programacin
DAM 1
Teresa Valtuea
Programa
Es una secuencia de instrucciones que indican las acciones que han de ser ejecutadas por una computadora Conjunto de instrucciones en un lenguaje determinado que define un algoritmo El objetivo es obtener unos resultados o datos de salida a partir de unos datos de entrada
Programacin
DAM 1
Teresa Valtuea
Programa
Se estructura en 3 partes: Entrada de datos: se pide al usuario informacin Proceso o algoritmo: se resuelve el problema con los datos de entrada Salida de datos: mostramos los resultados
Programacin
DAM 1
Teresa Valtuea
Programa
Hay que describir lo siguiente: Datos: hay que indicar variables, constantes, tablas, archivos y dems estructuras de datos que intervienen en el programa Algoritmo: operaciones que tiene que realizar el procesador en el mismo orden en que se escriben
Programacin
DAM 1
Teresa Valtuea
Programa
Segn el orden de ejecucin se divide en: Lineales: se ejecuta una instruccin tras otra, en el orden al de lectura No lineales: se realizan saltos que nos mandan de unas instrucciones a otras
Programacin
DAM 1
Teresa Valtuea
Caractersticas de un programa
facilitar su lectura y comprensin Fiabilidad: debe estar libre de errores Portabilidad: debe permitir su codificacin en distintos lenguajes e instalacin en distintos sistemas Modificabilidad: debe facilitar su mantenimiento Eficiencia: debe aprovechar al mximo los recursos del ordenador, minimizando la memoria y el tiempo de proceso
DAM 1 Teresa Valtuea
Programacin
Programacin
DAM 1
Teresa Valtuea
Anlisis
Comprender y definir el problema Definir los procesos y estructuras de datos que se van a emplear Si hay ambigedades desarrollar prototipos Se utilizan: Diagramas de flujos de datos: comportamiento del sistema mediante representaciones grficas Modelos de datos: estructuras de datos y sus caractersticas Diccionario de datos: describir todos los objetos utilizados en los grficos y modelos Definicin de los interfaces de usuario: determinan la informacin, manejo de entradas y salidas de datos Al final debemos obtener un documento con las especificaciones de la aplicacin
DAM 1 Teresa Valtuea
Programacin
Diseo
Se detalla y precisa la solucin, teniendo en cuenta los recursos fsicos del sistema: tipo de ordenador, perifricos comunicaciones, ... Y los recursos lgicos como el sistema operativo, bases de datos, ... Al final de esta etapa se obtiene como documentacin el cuaderno de carga
Programacin
DAM 1
Teresa Valtuea
Codificacin
Es la traduccin de la solucin obtenida a un determinado lenguaje de programacin basndose en el cuaderno de carga Tambin se deben realizar pruebas: Unitarias: se comprueba cada mdulo Interconexin: se comprueba el conjunto de los mdulos que forma un programa Integracin: se comprueba el conjunto de programas, es decir, el funcionamiento de todo el sistema
Programacin
DAM 1
Teresa Valtuea
Explotacin
Se implantan los programas en donde van a funcionar normalmente Actividades que se pueden realizar: Instalacin de los programas Pruebas globales de aceptacin del sistema Conversin de la informacin del sistema anterior al nuevo Eliminacin del sistema anterior
Programacin
DAM 1
Teresa Valtuea
Mantenimiento
Se realizan las consideraciones para solucionar errores y deficiencias, pudiendo reiniciarse el ciclo de vida Puede ser: Correctivo: puede estar incluido desde el principio Adaptativo: modificaciones debido a cambios en el entorno fsico y lgico donde estn implantados Perfectivo: mejora de la aplicacin por propuestas de los usuarios finales Los dos ltimos reinician el ciclo de vida, debiendo proceder de nuevo al desarrollo de cada fase
Programacin
DAM 1
Teresa Valtuea
Tcnicas de programacin
Convencional Estructurada Modular Orientada a objetos
Programacin
DAM 1
Teresa Valtuea
Convencional
Fue el comienzo de la programacin No sigue un mtodo de programacin riguroso Problemas: Programas muy rgidos Muchos errores productivos Modificaciones difciles de hacer
Programacin
DAM 1
Teresa Valtuea
Estructurada
Se aborda la aplicacin desde el problema principal hasta los problemas ms particulares en los que se pueda dividir Programas de fcil interpretacin y mantenimiento Minimiza los errores humanos
Programacin
DAM 1
Teresa Valtuea
Modular
Se divide el problema en mdulos, existe el mdulo raz que relaciona todos los dems Ventajas:
Fcil comprensin del problema Fcil modificacin y verificacin Reutilizacin de mdulos ya hechos
Programacin
DAM 1
Teresa Valtuea
Orientada a objetos
Define los programas en trminos de clases de objetos, objetos que son entidades que combinan:
Estado: datos Comportamiento: procedimientos o mtodos Identidad: propiedad que lo diferencia del resto
Un programa es un conjunto de esos objetos Programas ms fciles de escribir, mantener y reutilizar Lenguajes: C#, C++, Java, Delphi, VB.NET
Programacin
DAM 1
Teresa Valtuea
Orientada a objetos
Ventajas:
Proteccin de la informacin Encapsulamiento de los datos y su procedimiento Rpido desarrollo Fcil mantenimiento
Un objeto contiene la informacin (atributos) que lo define e identifica frente a otros iguales o distintos, dispone de mecanismos de interaccin (mtodos) para comunicarse con otros objetos. Es todo una unidad, datos y mtodos
Programacin
DAM 1
Teresa Valtuea
Definiciones
Clase: define las propiedades y el comportamiento de un tipo de objeto concreto. La instanciacin es la creacin de un objeto con esas propiedades y comportamiento. Objeto: es la instancia de una clase y est formado por un conjunto de propiedades o atributos (datos) y de comportamiento o funcionalidad ("mtodos"). Propiedad o atributo: contenedor de un tipo de datos asociados a un objeto (o a una clase de objetos) Mtodo: algoritmo asociado a un objeto (o a una clase de objetos)
Programacin
DAM 1
Teresa Valtuea
Definiciones
Evento: un suceso en el sistema o del objeto y provoca la ejecucin de un mtodo Estado interno: es una propiedad invisible de los objetos, que puede ser nicamente accedida y alterada por un mtodo del objeto, y que se utiliza para indicar distintas situaciones posibles para el objeto (o clase de objetos).
Programacin
DAM 1
Teresa Valtuea
Ejemplo prctico
Programacin
DAM 1
Teresa Valtuea
Compilacin
Proceso de traduccin de un cdigo fuente (escrito en un lenguaje de programacin de alto nivel) a lenguaje mquina Es el framework el que se encarga de todo en .net
Programacin
DAM 1
Teresa Valtuea
Ensamblado (assembly)
Biblioteca de cdigo parcialmente compilado Puede venir de uno o varios ficheros Se pueden aadir ensamblados ya desarrollados
Programacin
DAM 1
Teresa Valtuea
Programacin
DAM 1
Teresa Valtuea
Programacin
DAM 1
Teresa Valtuea
Programacin
System System.Collections System.Configuration System.Data System.Diagnostics System.DirectoryServic es System.Drawing System.EnterpriseServi ces System.Globalization System.IO System.Management System.Messaging
DAM 1
System.Net System.Reflection System.Resources System.Runtime System.Security System.ServiceProcess System.Text System.Threading System.Timers System.Web System.Windows System.XML
Teresa Valtuea
Errores
Tipos:
Programacin
DAM 1
Teresa Valtuea