Informtica (RAE):
Conjunto de conocimientos cientficos y tcnicas que
hacen posible el tratamiento automtico de la
informacin por medio de computadoras electrnicas.
Computadora:
mquina capaz de aceptar unos datos de entrada,
efectuar con ellos operaciones lgicas y aritmticas, y
proporcionar la informacin resultante a travs de un
medio de salida.
Introduccin. Algoritmos
Un ordenador por s slo no es capaz de
hacer nada. Hace falta la ayuda de un
programador.
El programador es que programa las
instrucciones necesarias al ordenador para
realizar una tarea
Algoritmo (RAE): Conjunto ordenado y finito
de operaciones que permite hallar la
solucin de un problema.
Introduccin. Algoritmos
Mediante algoritmos se solucionan los
problemas
Los algoritmos son independientes del
ordenador en el que se realizan las
operaciones
Los algoritmos deben de ser:
Precisos
Finitos
Repetibles
Introduccin. Algoritmos
Los algoritmos conviene que sean:
Un algoritmo posee:
Datos de entrada
Clculos para conseguir el resultado
Datos de salida o resultantes
Introduccin. Representacin de
algoritmos
Existen cdigos especiales que sirven para
representar algoritmos
La razn de su uso es normalizar la
escritura de algoritmos
Hay diagramas de flujo y pseudocdigo
El primero trabaja con representaciones
grficas, el segundo con un lenguaje
especial
Introduccin. Representacin de
algoritmos
Existen cdigos especiales que sirven para
representar algoritmos
La razn de su uso es normalizar la
escritura de algoritmos
Hay diagramas de flujo y pseudocdigo
El primero trabaja con representaciones
grficas, el segundo con un lenguaje
especial
Introduccin. Pseudocdigo
Lenguajes. Ensamblador
Es cdigo escrito en un lenguaje que
tiene representacin exacta en el
cdigo mquina
Cada programa creado en ensamblador
sirve para una sola mquina
Muy difcil de escribir
Se alejan an ms de la mquina y se
centran en la resolucin del problema
Permiten crear programas sin apenas
escribir cdigo
Son ms limitados pero mucho ms
rpidos de desarrollar
Lenguajes. Intrpretes
El intrprete es un software capaz de
interpretar instrucciones escritas en
un lenguaje de alto nivel.
Interpretan el cdigo lnea a lnea de la
primera a la ltima
Optimizan menos el cdigo
Lenguajes. Compilador
Software que traduce un programa
pero interpretando todo el cdigo a la
vez
El cdigo es ms eficiente
Se tarda ms en ejecutar el resultado
Lenguajes. Historia
Fortran. Primer lenguaje, orientado a
problemas matemticos
Lisp. Crea las funciones
Cobol. Orientado a aplicaciones de
gestin.
Basic. Ideado para ser fcil de aprender
Pascal. Ideado tambin para ser sencillo
de aprender, potencia la legibilidad del
cdigo
Copyleft - Jorge Snchez 2005 www.jorgesanchez.net
Lenguajes. Historia
C. Lenguaje de nivel medio que otorga una
gran libertad al programador
SQL. Lenguaje de consulta de bases de datos
Visual Basic y Delphi. Lenguajes orientados a
la creacin mediante sintaxis sencilla de
entornos grficos de usuario.
Prolog. Ideado para resolver problemas de
inteligencia artificial
C++ Mejora de C para soportar el uso de
objetos
Copyleft - Jorge Snchez 2005 www.jorgesanchez.net
Lenguajes. Historia
Perl. Lenguaje que facilita el uso de las
expresiones normales (para crear
consultas complicadas).
HTML y XML. Lenguajes de marcado para
la maquetacin y definicin de
documentos
Java. Sintaxis heredada de C++. Pensado
para crear aplicaciones de red.
PHP, ASP y JSP. Lenguajes combinados
para ejecutar instrucciones en un
servidor web
Copyleft - Jorge Snchez 2005 www.jorgesanchez.net
Todo es un objeto
Un programa es un conjunto de
objetos que se comunican
Todo objeto posee una clase
Todos los objetos de una clase
reciben los mismos mensajes
Copyleft - Jorge Snchez 2005 www.jorgesanchez.net
Metodologas. Introduccin
Tcnicas que permiten realizar un modelo
previo de un programa
Hay metodologas de todo tipo que modelan
tanto instrucciones como datos
Las metodologas intentar simplificar el
diseo de una aplicacin
Al final el modelo hay que implementarle
(escribirle en un determinado lenguaje)
Metodologas. UML
UML = Unified modelling language, lenguaje de
modelado universal
No es una metodologa completa (una metodologa
completa indica los pasos a realizar durante el
desarrollo del software)
Es una notacin, una forma de expresar modelos
informticos
Es un estndar de facto para disear aplicaciones
orientadas a objetos
Se basa en diagramas que pueden servir tanto al
diseador como al cliente.
Metodologas. UML
Es una metodologa diseada por los
principales creadores de metodologas
Estamos en la versin 1.3 (a punto de
aparecer la 2.0)
Sus responsables son el Object Management
Group (www.omg.org)
La especificacin est disponible en
www.omg.org/uml
UML define 12 tipos de diagramas, cada uno
representa un aspecto del funcionamiento
de una aplicacin
Copyleft - Jorge Snchez 2005 www.jorgesanchez.net
Coche
Metodologas. UML
Clase2
Ordenador
Programador
Maneja
Nombre:texto;
1..*
0..*
Identificador:texto;
Modelo:texto;
Velocidad:entero
Nombre de la asociacin
Matriculado en
Alumno
1..*
1..11
Asignatura
1..6
1..2
Imparte
Profesor
Punto
Regular:lgico;
X:entero;
Y:entero;
Borrar()
Mover(p:Punto)
Rellenar(c:color)
Mover(despl_x,
despl_y:entero)
Mover(p:Punto)
3..*
Representa un
polgono en el espacio
Representa un punto
en el espacio
Automvil
Motocicleta
Trabajador
Encargado
Administrativo
Pen