Lenguaje de alto nivel (II Bimestre)

47
ESCUELA: PONENTE: BIMESTRE: LENGUAJE DE ALTO NIVEL CICLO: CIENCIAS DE LA COMPUTACIÓN II BIMESTRE ing. Jorge López ABRIL – AGOSTO 2007

description

Universidad Técnica Particular de Loja Ciencias de la Computación Lenguaje de alto nivel II Bimestre Abril-Agosto 2007 Ponente: Ing. Jorge López

Transcript of Lenguaje de alto nivel (II Bimestre)

Page 1: Lenguaje de alto nivel (II Bimestre)

ESCUELA:

PONENTE:

BIMESTRE:

LENGUAJE DE ALTO NIVEL

CICLO:

CIENCIAS DE LA COMPUTACIÓN

II BIMESTRE

ing. Jorge López

ABRIL – AGOSTO 2007

Page 2: Lenguaje de alto nivel (II Bimestre)

II Bimestre: Contenidos EsencialesII Bimestre: Contenidos Esenciales

• Creación de métodosCreación de métodos• Arreglos y matricesArreglos y matrices• Programación orientada a objetos y herenciaProgramación orientada a objetos y herencia

Page 3: Lenguaje de alto nivel (II Bimestre)

MétodosMétodos

• Permiten crear módulos los programasPermiten crear módulos los programas• Realizan acciones y pueden devolver el resultadoRealizan acciones y pueden devolver el resultado• Variables localesVariables locales• Parámetros - ArgumentosParámetros - Argumentos

Page 4: Lenguaje de alto nivel (II Bimestre)

MétodosMétodos

• Parámetros y retorno de valoresParámetros y retorno de valores

Page 5: Lenguaje de alto nivel (II Bimestre)

MétodosMétodos• ArgumentosArgumentos

Page 6: Lenguaje de alto nivel (II Bimestre)

MétodosMétodos

• Variables localesVariables locales

Page 7: Lenguaje de alto nivel (II Bimestre)

ArreglosArreglos

• Estructura de datosEstructura de datos• Almacena elementos de un mismo tipoAlmacena elementos de un mismo tipo• Tiene el mismo tamaño una vez creadoTiene el mismo tamaño una vez creado

Page 8: Lenguaje de alto nivel (II Bimestre)

ArreglosArreglos

Nombre del arreglo(note que todos los elementos del arreglo tienen el mismo nombre, c)

Índice del c

c[ 0 ]

c[ 1 ]

c[ 2 ]

c[ 3 ]

c[ 4 ]

c[ 5 ]

c[ 6 ]

c[ 7 ]

c[ 8 ]

c[ 9 ]

c[ 10 ]

c[ 11 ]

-45

6

0

72

1543

-89

0

62

-3

1

6453

78

Page 9: Lenguaje de alto nivel (II Bimestre)

Arreglos: Principales TareasArreglos: Principales Tareas

• Declaración e inicializaciónDeclaración e inicialización• Recorrido de un arregloRecorrido de un arreglo• Asignación de valoresAsignación de valores• BúsquedaBúsqueda• OrdenaciónOrdenación

Page 10: Lenguaje de alto nivel (II Bimestre)

Arreglos: Principales TareasArreglos: Principales Tareas

• Declaración e inicialización de arreglosDeclaración e inicialización de arreglos

Page 11: Lenguaje de alto nivel (II Bimestre)

Arreglos: Principales TareasArreglos: Principales Tareas

• Recorrer un arreglo y asignar valores a un arregloRecorrer un arreglo y asignar valores a un arreglo

Page 12: Lenguaje de alto nivel (II Bimestre)

MatricesMatrices

• Tablas con filas and columnasTablas con filas and columnas• Arreglo de dos dimensionesArreglo de dos dimensiones• Declaración de un arreglo bidimensional b[2][2]Declaración de un arreglo bidimensional b[2][2]

int b[][] = { { 1, 2 }, { 3, 4 } };int b[][] = { { 1, 2 }, { 3, 4 } };• 1 y 2 inicializan b[0][0] y b[0][1]1 y 2 inicializan b[0][0] y b[0][1]• 3 y 4 inicializan b[1][0] y b[1][1]3 y 4 inicializan b[1][0] y b[1][1]

int b[][] = {{ 1, 2 },{ 3, 4, 5 }};int b[][] = {{ 1, 2 },{ 3, 4, 5 }};• fila 0 contiene elementos 1 y 2fila 0 contiene elementos 1 y 2• fila 1 contiene elementos 3, 4 y 5fila 1 contiene elementos 3, 4 y 5

Page 13: Lenguaje de alto nivel (II Bimestre)

MatricesMatrices

a[ 1 ][ 0 ] a[ 1 ][ 1 ] a[ 1 ][ 2 ] a[ 1 ][ 3 ]

Fila 0

Fila 1

Fila 2

Columna 0

Columna 1

Columna 2

Columna 3

Índice fila

Nombre matriz

Índice columna

a[ 0 ][ 0 ] a[ 0 ][ 1 ] a[ 0 ][ 2 ] a[ 0 ][ 3 ]

a[ 2 ][ 0 ] a[ 2 ][ 1 ] a[ 2 ][ 2 ] a[ 2 ][ 3 ]

Page 14: Lenguaje de alto nivel (II Bimestre)

Matrices: Principales TareasMatrices: Principales Tareas

• Declarar e inicializar una matrizDeclarar e inicializar una matriz• Recorrer una matrizRecorrer una matriz• Asignar valores a los elementos de una matrizAsignar valores a los elementos de una matriz

Page 15: Lenguaje de alto nivel (II Bimestre)

Matrices: Principales TareasMatrices: Principales Tareas

• Declarar e inicializar una matrizDeclarar e inicializar una matriz

Page 16: Lenguaje de alto nivel (II Bimestre)

Matrices: Principales TareasMatrices: Principales Tareas

• Recorrer y asignar valores a una matrizRecorrer y asignar valores a una matriz

Page 17: Lenguaje de alto nivel (II Bimestre)

Programación Orientada a ObjetosProgramación Orientada a Objetos

• Metodología de programaciónMetodología de programación• POO conceptos claves:POO conceptos claves:

• ClasesClases• AtributosAtributos• MétodosMétodos

• ObjetosObjetos• Otros conceptos:Otros conceptos:

• HerenciaHerencia• Sobrecarga y re-escrituraSobrecarga y re-escritura• ConstructoresConstructores

Page 18: Lenguaje de alto nivel (II Bimestre)

POO: ObjetosPOO: Objetos

• ObjetosObjetos• Una cosa tangible y/o visibleUna cosa tangible y/o visible• Algo que puede comprenderse intelectualmenteAlgo que puede comprenderse intelectualmente• Una entidad de softwareUna entidad de software

• Poseen:Poseen:• Una identidadUna identidad• Estado – atributosEstado – atributos• Comportamiento - métodosComportamiento - métodos

Page 19: Lenguaje de alto nivel (II Bimestre)

POO: ClasesPOO: Clases

• Clases:Clases:• Plantillas para construir objetos.Plantillas para construir objetos.

Page 20: Lenguaje de alto nivel (II Bimestre)

POO: Clases en JavaPOO: Clases en Java• Clases en Java: Nombres inician en mayúsculaClases en Java: Nombres inician en mayúscula

Page 21: Lenguaje de alto nivel (II Bimestre)

POO: Objetos en JavaPOO: Objetos en Java

• Objetos en Java: Instancias de una claseObjetos en Java: Instancias de una clase

Page 22: Lenguaje de alto nivel (II Bimestre)

POO: Otros conceptosPOO: Otros conceptos• Constructores:Constructores:

• Métodos con el mismo nombre de la clase padre. No tiene Métodos con el mismo nombre de la clase padre. No tiene tipo de dato de retornotipo de dato de retorno

Page 23: Lenguaje de alto nivel (II Bimestre)

POO: Otros conceptosPOO: Otros conceptos

• HerenciaHerencia• Relación entre clases en donde una clase hija hereda Relación entre clases en donde una clase hija hereda

de una clase padre los atributos y métodosde una clase padre los atributos y métodos

Page 24: Lenguaje de alto nivel (II Bimestre)

POO: Otros conceptosPOO: Otros conceptos

• Sobrecarga de métodosSobrecarga de métodos• Existen varios métodos con el mismo nombre, pero con Existen varios métodos con el mismo nombre, pero con

diferente signaturadiferente signatura

Page 25: Lenguaje de alto nivel (II Bimestre)

POO: Otros conceptosPOO: Otros conceptos

• Re-escritura de métodosRe-escritura de métodos• Las clases hijas puede re-escribir los métodos Las clases hijas puede re-escribir los métodos

heredadosheredados

Page 26: Lenguaje de alto nivel (II Bimestre)

POO: Otros conceptosPOO: Otros conceptos

Page 27: Lenguaje de alto nivel (II Bimestre)

POO: Otros conceptosPOO: Otros conceptos

Page 28: Lenguaje de alto nivel (II Bimestre)

Práctica: Clases y objetosPráctica: Clases y objetos

• Banco LanUno es una institución financiera que permite a sus clientes la aperturas de cuentas bancarias con un saldo inicial de $0 o con un monto inicial mayor que $0, según criterios o convenios que se tengan vigentes. Las operaciones que se pueden realizar sobre la cuenta son: depósitos, retiros y consultar saldo, para dichas operaciones se debe tener presente las siguientes políticas:• No se pueden hacer depósitos de valores negativos en

una cuenta.• No es posible realizar un retiro de valores mayores o

iguales que el saldo actual de la cuenta• El banco posee cuenta de ahorros y cuentas corrientes.

Las cuentas de ahorros tienen un estado (“ACTIVA”, “BLOQUEADA”). Las cuentas corrientes por cada depósito se realiza el descuento del 1% del monto depositado y no poseen estado ni se puede retirar dinero

Page 29: Lenguaje de alto nivel (II Bimestre)

Identificación de las clases de un Identificación de las clases de un sistemasistema

• Identificar los objetos para agruparlos en clases.Identificar los objetos para agruparlos en clases.• Revisar el enunciado del problema para identificar Revisar el enunciado del problema para identificar sustantivossustantivos clave clave

• Seleccionar sustantivos que tengan significado en el Seleccionar sustantivos que tengan significado en el problemaproblema

• Agrupar los sustantivos restantes en clasesAgrupar los sustantivos restantes en clases

Page 30: Lenguaje de alto nivel (II Bimestre)

Identificación de las clases de un Identificación de las clases de un sistemasistema

• SustantivosSustantivos• BancoBanco• ClientesClientes• DineroDinero• CuentaCuenta• Cta. AhorroCta. Ahorro• Cta. CorrienteCta. Corriente

• Sustantivos problemaSustantivos problema• CuentaCuenta• Cta. AhorroCta. Ahorro• Cta. CorrienteCta. Corriente• DineroDinero

Page 31: Lenguaje de alto nivel (II Bimestre)

Identificación de atributosIdentificación de atributos

• Atributos – camposAtributos – campos• Buscar palabras y frases descriptivas en el enunciado Buscar palabras y frases descriptivas en el enunciado

del problemadel problema• Por cada palabra o frase descriptiva crear un atributo y Por cada palabra o frase descriptiva crear un atributo y

asignarlo a una claseasignarlo a una clase

Page 32: Lenguaje de alto nivel (II Bimestre)

Identificación de atributosIdentificación de atributos

• CuentaCuenta• SaldoSaldo

• AhorroAhorro• SaldoSaldo• EstadoEstado

• CorrienteCorriente• SaldoSaldo

Page 33: Lenguaje de alto nivel (II Bimestre)

Identificación de métodosIdentificación de métodos

• Comportamiento – métodosComportamiento – métodos• Examinar los verbos y frases verbalesExaminar los verbos y frases verbales• Relacionarlo con alguna claseRelacionarlo con alguna clase

Page 34: Lenguaje de alto nivel (II Bimestre)

Identificación de métodosIdentificación de métodos

• Cuenta:Cuenta:• DepositarDepositar• RetirarRetirar• Obtener saldoObtener saldo

Page 35: Lenguaje de alto nivel (II Bimestre)

Diagrama de clasesDiagrama de clases

Page 36: Lenguaje de alto nivel (II Bimestre)

Práctica II Bimestre: Clases y objetosPráctica II Bimestre: Clases y objetos

• Declaración de la clase y atributo (encapsulameiento de Declaración de la clase y atributo (encapsulameiento de información)información)

Page 37: Lenguaje de alto nivel (II Bimestre)

Práctica II Bimestre: Clases y objetosPráctica II Bimestre: Clases y objetos

• ConstructoresConstructores

Page 38: Lenguaje de alto nivel (II Bimestre)

Práctica II Bimestre: Clases y objetosPráctica II Bimestre: Clases y objetos

• Métodos para obtener el saldo y verificar si el monto a Métodos para obtener el saldo y verificar si el monto a depositar o retirar es negativodepositar o retirar es negativo

Page 39: Lenguaje de alto nivel (II Bimestre)

Práctica II Bimestre: Clases y objetosPráctica II Bimestre: Clases y objetos

• Métodos para retirar y depositarMétodos para retirar y depositar

Page 40: Lenguaje de alto nivel (II Bimestre)

Práctica II Bimestre: Clases y objetosPráctica II Bimestre: Clases y objetos

Page 41: Lenguaje de alto nivel (II Bimestre)

Práctica II Bimestre: Clases y objetosPráctica II Bimestre: Clases y objetos

• Cuenta ahorrosCuenta ahorros

Page 42: Lenguaje de alto nivel (II Bimestre)

Práctica II Bimestre: Clases y objetosPráctica II Bimestre: Clases y objetos• Cuenta corrienteCuenta corriente

Page 43: Lenguaje de alto nivel (II Bimestre)

Práctica II Bimestre: Clases y objetosPráctica II Bimestre: Clases y objetos• Pruebas cuenta ahorroPruebas cuenta ahorro

Page 44: Lenguaje de alto nivel (II Bimestre)

Práctica II Bimestre: Clases y objetosPráctica II Bimestre: Clases y objetos

• SalidaSalida

Page 45: Lenguaje de alto nivel (II Bimestre)

Práctica II Bimestre: Clases y objetosPráctica II Bimestre: Clases y objetos• Pruebas cuenta corrientePruebas cuenta corriente

Page 46: Lenguaje de alto nivel (II Bimestre)

Práctica II Bimestre: Clases y objetosPráctica II Bimestre: Clases y objetos

• SalidaSalida

Page 47: Lenguaje de alto nivel (II Bimestre)