You are on page 1of 26

Programación

1
5
Informática

Tema 5
Programación ­ Introducción
Escuela Universitaria Politécnica de Almadén
Universidad de Castilla­La Mancha

2
MA 5
TE
[Tema 1]
Representación de la información en el computador

[Tema 2]
Arquitectura del Computador

[Tema 3]
Sistemas Operativos
[Tema 4]
Bases de Datos

[Tema 5]
Programación de Computadores

>> Informática >> Escuela Universitaria Politécnica de Almadén (EUPA) 3


>> Profesor: Javier Albusac → javieralonso.albusac@uclm.es || Despacho 2.08, Edificio Elhúyar
4
¿Es posible aprender a 
programar sin utilizar 
el computador?

5
¿Es posible aprender a 
conducir sin utilizar un coche?

6
MA 5 Programación ­ Introducción
TE
¿Qué es programar? <<

● Programar consiste en el desarrollo de software


mediante el uso de un lenguaje de programación.

● Un programa está formado por un conjunto de


líneas de código escritas en un lenguaje de
programación → Código fuente

>> Informática >> Escuela Universitaria Politécnica de Almadén (EUPA) 7


>> Profesor: Javier Albusac → javieralonso.albusac@uclm.es || Despacho 2.08, Edificio Elhúyar
Código Fuente

8
Múltiples Lenguajes de Programación

C
PYTHON BASIC

PERL
PASCAL ASP
PHP
DELPHI JSP
JAVA MATLAB
9
MA 5 Programación ­ Introducción
¿Qué es un lenguaje de programación? <<
TE

● Es un lenguaje formado por un conjunto de reglas


sintácticas y semánticas que permiten crear
instrucciones, que posteriormente serán
interpretadas por el computador

● Reglas sintácticas: herramientas del lenguaje para


poder expresar algo → alfabeto, palabras, gramática,
etc.
● Reglas semánticas: significado de las sentencias
construidas con el lenguaje.

>> Informática >> Escuela Universitaria Politécnica de Almadén (EUPA) 10


>> Profesor: Javier Albusac → javieralonso.albusac@uclm.es || Despacho 2.08, Edificio Elhúyar
MA 5 Programación ­ Introducción
¿Qué es un lenguaje de programación? <<
TE

● Con un lenguaje de programación podemos ordenar a


una máquina lo que debe hacer.
● Es decir, gracias al uso de lenguajes de programación
tenemos el control de la máquina. Ésta hace lo que
nosotros queremos que haga.

>> Informática >> Escuela Universitaria Politécnica de Almadén (EUPA) 11


>> Profesor: Javier Albusac → javieralonso.albusac@uclm.es || Despacho 2.08, Edificio Elhúyar
MA 5 Programación ­ Introducción
¿Son necesarios los LP? <<
TE

● Recordemos que un computador


sólo entiende ceros y unos
(lenguaje máquina).

● Construir programas a base de 0101010101001010101010


ceros y unos es prácticamente 1010101010010101010101
0101010101010010101010
imposible 1010101010101010101010
0010101010010101010100
● Solución: 1010101010101010101001
0101010101010101010101
0010101010101010101010
● Lenguajes de programación 1010101010001010101001
0101010100101010101010
1010101001010101010101

>> Informática >> Escuela Universitaria Politécnica de Almadén (EUPA) 12


>> Profesor: Javier Albusac → javieralonso.albusac@uclm.es || Despacho 2.08, Edificio Elhúyar
Tipos de Lenguajes

13
MA 5 Programación ­ Introducción
Tipos de lenguajes de programación <<
TE

● Lenguajes de bajo nivel


● Son lenguajes cercanos al lenguaje máquina pero
mucho más interpretables para un programador
● Ejemplo
➢ Suma R1, R2
➢ Resta R8,R2

➢ And R1, R8

➢ ..........

>> Informática >> Escuela Universitaria Politécnica de Almadén (EUPA) 14


>> Profesor: Javier Albusac → javieralonso.albusac@uclm.es || Despacho 2.08, Edificio Elhúyar
MA 5 Programación ­ Introducción
Tipos de lenguajes de programación <<
TE

● Problema: construir programas complejos con


lenguajes de bajo nivel sigue siendo demasiado
tedioso.
● Solución: Lenguajes de alto nivel
● Los lenguajes de alto nivel se acercan más a la
forma humana de expresarse. Utilizan palabras y
estructuras que se asemejan al lenguaje natural.
● Matlab, C, C++, Java, Python ...

>> Informática >> Escuela Universitaria Politécnica de Almadén (EUPA) 15


>> Profesor: Javier Albusac → javieralonso.albusac@uclm.es || Despacho 2.08, Edificio Elhúyar
MA 5 Programación ­ Introducción
Tipos de lenguajes de programación <<
TE

● Los lenguajes de programación también se pueden


clasificar según el paradigma que utilizan:
● Procedimentales
● Orientados a objetos
● Declarativos
● Híbridos
● ......

>> Informática >> Escuela Universitaria Politécnica de Almadén (EUPA) 16


>> Profesor: Javier Albusac → javieralonso.albusac@uclm.es || Despacho 2.08, Edificio Elhúyar
Si el ordenador sólo entiende ceros y unos, y los
programadores utilizan lenguajes de
programación de alto nivel, ¿Cómo consiguen
comunicarse?¿Cómo consigue el ordenador
comprender los programas?

¿ ?
17
Int main(void)
.... 010101010
printf ..
a = a +b

18
Cuando dos personas de diferentes nacionalidades no
conocen sus respectivos idiomas y quieren comunicarse,
utilizan como intermediario un intérprete. En el caso del
programador y el computador se da la misma situación

Intérprete

19
s Co mpi l ado s
Lenguaje
Lenguajes Interpretado
s

20
MA 5 Programación ­ Introducción
Lenguajes Compilados <<
TE

● El compilador es un programa informático


encargado de traducir el código fuente escrito con
un lenguaje de programación a otro lenguaje
intermedio (llamado lenguaje objeto).

● Posteriormente, existe un proceso de enlazado, en el


que se transforma el lenguaje objeto al lenguaje
máquina

>> Informática >> Escuela Universitaria Politécnica de Almadén (EUPA) 21


>> Profesor: Javier Albusac → javieralonso.albusac@uclm.es || Despacho 2.08, Edificio Elhúyar
MA 5 Programación ­ Introducción
Lenguajes Compilados <<
TE

● En realidad, el compilador es el que hace de


intérprete entre el programador y el computador.

Código fuente
Compilador
Código máquina

Enlazado
Código objeto

>> Informática >> Escuela Universitaria Politécnica de Almadén (EUPA) 22


>> Profesor: Javier Albusac → javieralonso.albusac@uclm.es || Despacho 2.08, Edificio Elhúyar
MA 5 Programación ­ Introducción
Lenguajes Compilados <<
TE

● Funciones del compilador:


● Traducir un programa escrito con un lenguaje de
programación (código fuente) a un lenguaje objeto.
● Detectar los errores sintácticos en el código
fuente para comunicárselos al programador. Un
programa es traducido a lenguaje máquina
únicamente cuando está libre de errores.

>> Informática >> Escuela Universitaria Politécnica de Almadén (EUPA) 23


>> Profesor: Javier Albusac → javieralonso.albusac@uclm.es || Despacho 2.08, Edificio Elhúyar
MA 5 Programación ­ Introducción
Lenguajes Interpretados <<
TE

● El código fuente no se transforma a código


máquina
● Se necesita un intérprete para ejecutar el código
● Suelen ser multiplataforma
● Mayor flexibilidad frente a lenguajes compilados
● Depuración más sencilla
● Menor tamaño
● Menor eficiencia frente a los compilados

>> Informática >> Escuela Universitaria Politécnica de Almadén (EUPA) 24


>> Profesor: Javier Albusac → javieralonso.albusac@uclm.es || Despacho 2.08, Edificio Elhúyar
Objetivos Deseables en Programación

Corrección
Un programa es correcto si hace lo que
debe hacer

Claridad
El código debe ser lo más claro y legible
posible para facilitar el mantenimiento del
software

Eficiencia
Debe consumir la menor cantidad de
recursos posibles (tiempo de cpu y 25
memoria)
Metodología para la construcción de programas

1 Análisis de Requisitos

2 Especificación del
problema
3 Codificación

4 Pruebas

26

You might also like