Sie sind auf Seite 1von 20

Facultad de Ciencias Matemáticas-UNMSM

Seminario – Taller
Paradigmas y Lenguajes de
Programación

20 y 22 Febrero del 2008

Expositor: Ulises ROMAN CONCHA


Docente del Dpto. Ciencias de la Computació
Computación,
UNMSM
Contenido

1. Conceptos Básicos
2. Representación de los datos en la PC
3. Lenguajes de Programación
4.. Paradigmas de Programación
5. Método General de Programación
6. Estructuras de Control y de Datos
7. Aplicaciones usando C++ y Java
8. Referencias
1. Conceptos Básicos (1)

Computer system =
hardware + software
Hardware =
componentes físicos ( CPU, Memorias, Otros)
Software =
instrucciones que indican al hardware qué
debe hacer (2 tipos: Sistemas y Aplicación)
2. Representación de los datos en la
Computadora (1)

ƒ El único código que entiende la CPU son los bits.


ƒ Los bits son representados en circuitos electrónicos que pueden
estar en estado “on” (1) u “off” (0)
ƒ Las instrucciones se mandan a la CPU en forma de bytes, que
son palabras de 8 bits

1 10 0 0 0 1
1 11 1 0
1 1
0 0
1
ƒ 1 byte = 8 bits 0
ƒ 1 kilobyte = 1 024 bytes
ƒ 1 megabyte = 1 024 kilobytes = 1 048 576 bytes
ƒ 1 Gigabyte = ?
ƒ 1 Terabyte = ?
2. Representación de los datos en la
Computadora (2)

ƒ Base 10:
ƒ Dígitos = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
ƒ 1111 = 1*103 + 1*102 + 1*101 + 1*100

ƒ Base 2:
ƒ Dígitos = {0, 1}
ƒ 1111 = 1*23 + 1*22 + 1*21 + 1*20
= 8 + 4 + 2 + 1 = 15

ƒ ¿Cuántos valores puede representar un byte?


ƒ 1 byte = 8 bits (Ej: 01100101)
ƒ Cada bit puede representar 2 valores (0 y 1)
ƒ Un byte puede representar 28 = 256 valores
2. Representación de la imagen (3)

00000000
00110110
00100010
00100010
00110110
00000000
00110110
00000000

• División de la imagen en una matriz de pixels (unidad


de la imagen)
• Cada pixel asociado con un color
2. Representación del sonido (4)

ƒ Discretización de la amplitud
ƒ Un byte para cada valor

4 8 12 13 12 10 8…
3. Lenguajes de Programación (1)
3. Lenguajes de Programación (2)

•Programa =secuencia de instrucciones


Un programa es un conjunto ordenado de instrucciones que se dan a la
computadora indicándole las operaciones o tareas que se desea realizar.
Todo lo relativo a los símbolos y reglas para construir o redactar con ellos
un programa se denomina Lenguaje de Programación.

CLASIFICACION:
ƒ LenguaJes máquina (bajo nivel) : instrucciones directamente
entendibles por la computadora (lenguaje binario-pensar en 0 y 1).
ƒ Lenguajes ensamblador: Instrucciones compuestas de palabras cortas
y números: Ejem LOAD, ADD, JMP
ƒ Lenguajes de alto nivel: Utilizan instrucciones escritas con palabras
similares a los lenguajes humanos C, C++, Visual Basic, Java, Pascal,
Prolog, LISP,PHP,J#, Jbuilder, C#, Perl, Otros…
3. Lenguajes de Programación (3)

En resumen, los lenguajes de programación:

9 Constituyen sistemas de palabras-órdenes (lengua o idioma), ya


establecidos.

9 Comprensibles tanto por el programador como por la máquina,


9 Permiten desarrollar programas(secuencia de instrucciones)

ƒ Ejemplos de instrucciones:
ƒ Leer un dato del teclado
ƒ Guardar un dato en la memoria
ƒ Ejecutar una operación sobre dos datos
ƒ Mostrar un dato en la pantalla
ƒ etc.
3. Lenguajes de Programación-Ejemplo de
un programa en Pascal (4)

Program AreaCalculator;
(* This program calculates the area of a circle. *)
Const
PI = 3.14159;
Var
radius, areaCircle : Real;
Begin
(* Get the radius. *)
Write('Enter the radius of the circle: ');
ReadLn(radius);

(* Calculate the area. *)


areaCircle := PI * radius * radius;

(* Display the area. *)


WriteLn('The area is ', areaCircle, ' square meters');
End.
3. Lenguajes de Programación-Ejemplo de
un programa en C++ (5)

// areaCalculator.cpp
// This program calculates the area of a circle.
#include <iostream>
using namespace std;

int main()
{
const double PI = 3.14159;
double radius, areaCircle;

// Get the radius.


cout << "Enter the radius of the circle: ";
cin >> radius;

// Calculate the area.


areaCircle = PI * radius * radius;

// Display the area.


cout << "The area is " << areaCircle
<< " square meters" << endl;
return 0;
}
3. Lenguajes de Programación-Ejemplo de un
programa en Java (6)

public class HolaMundo


{
public static void main(String[] args)
{
System.out.println( “Hola Mundo“);
}
}

†En JAVA hay distintos tipos de programas:


„Aplicaciones convencionales (stand-alone)
„Aplicaciones ejecutadas en unnavegador:applets
„Aplicaciones ejecutadas en un servidor Web:servlets
3. Lenguajes de Programación-Evolución (7)

Visual Studio 6.0


Visual Basic
VBA
Visual FoxPro
VBScript Visual Studio .NET 2003 Visual Studio “Orcas”
C++ .NET Framework 1.1 .NET Framework “Orcas”
J++ .NET Compact Framework .NET Compact Framework “Orcas”
JScript J#
ASP

2000 2001 2002 2003 2004 2005 2006 y más

Visual Studio .NET 2002 Visual Studio 2005 (“Whidbey”)


.NET Framework 1.0 .NET Framework 2.0 (“Whidbey”)
Visual Basic .NET .NET Compact Framework 2.0 (“Whidbey”)
C#
3. Lenguajes de Programación-Ejemplo de
un programa en Java (6)

public class HolaMundo


{
public static void main(String[] args)
{
System.out.println( “Hola Mundo“);
}
}

†En JAVA hay distintos tipos de programas:


„Aplicaciones convencionales (stand-alone)
„Aplicaciones ejecutadas en unnavegador:applets
„Aplicaciones ejecutadas en un servidor Web:servlets
4. Paradigmas de Programación (1)

Un paradigma de programación representa un enfoque particular o filosofía


para la construcción del software. No es mejor uno que otro sino que cada
uno tiene ventajas y desventajas. También hay situaciones donde un
paradigma resulta más apropiado que otro.

Algunos ejemplos de paradigmas de programación:


1. El paradigma imperativo o por procedimientos es considerado el más
común y está representado, por ejemplo, por el C

2. El paradigma funcional está representado por la familia de lenguajes LISP


(en particular Scheme), ML o Haskell. noción abstracta de función, cálculo
lambda, recursividad, listas

3. El paradigma lógico, Lógica simbólica y programación declarativa, un


ejemplo es PROLOG.

4. El paradigma orientado a objetos. Un lenguaje completamente orientado a


objetos es Smalltalk – TDAs, Reutilización, Clases,Objetos
4. Paradigmas de Programación (2)

Algunos lenguajes imperativos


ƒ ASP
ƒ BASIC
ƒ C
ƒ C#
ƒ C++
ƒ Fortran
ƒ Java
ƒ Perl
ƒ PHP
Algunos lenguajes funcionales
ƒ Haskell
ƒ Miranda
ƒ Lisp
ƒ Scheme
ƒ Ocaml
ƒ Standard ML
ƒ ML
ƒ Scala
4. Paradigmas de Programación (3)

Algunos lenguajes lógicos Algunos lenguajes Orientados a Objetos


ƒProlog •ActionScript
ƒLisp •Ada
•C++
•C#
•Clarion
•Delphi
•Eiffel
•Java
•Perl (soporta herencia múltiple)
•PHP (en su versión 5)
•PowerBuilder
•Python
•Ruby
•Smalltalk
•Turbo Pascal 7
•VB.NET
•Visual FoxPro
•XBase++
8. Referencias Bibliograficas

programacion funcional: haskell


http://www.haskell.org/haskellwiki/Introduction#What_is_functional_progra
mming.3F
Muchas Gracias….

Ulises ROMAN CONCHA


Docente Asociado del Dpto. Ciencias de la Computación -
UNMSM
nromanc@yahoo.es
www.ulisesroman.blogspot.com

Das könnte Ihnen auch gefallen