DICCIONARIO |
OBJETO |
Representa una entidad del mundo real
Entidades Físicas (Ej.: Vehículo, Casa, Producto )
(Ej.: Proceso Químico, Transacción Bancaria )
(Ej.: Lista Enlazada, Interfaz Gráfica )
Un objeto es un concepto, abstracción o cosa con un significado y límites claros en el problema en cuestión.
Un objeto posee (Booch): Estado Comportamiento Identidad
|
CLASE |
Una clase es una descripción de un grupo de objetos con:
Propiedades en común (atributos)
Comportamiento similar (operaciones)
La misma forma de relacionarse con otros objetos (relaciones)
Una semántica en común (significan lo mismo)
Una clase es una abstracción que:
Enfatiza las características relevantes
Suprime otras características (simplificación)
Un objeto es una instancia de una clase
EJEMPLO: Clase: Curso
Estado (Atributos)
Nombre
Ubicación
Días Ofrecidos
Horario de Inicio
Horario de Término
Comportamiento (Métodos)
Agregar un Alumno
Borrar un Alumno
Entregar un Listado del Curso
Determinar si está Completo |
MODIFICADORES
DE ACCESO |
Permiten definir el nivel de acceso (visibilidad) de los miembros (atributos o métodos) de una clase
Público: Cualquier clase puede “ver” los miembros públicos de otra clase
Privado: Sólo la clase puede ver sus propios miembros privados
Existen otros dos modificadores para propósitos específicos (Paquete, Protegido) |
UML |
UML es un lenguaje visual para especificar, construir y documentar sistemas” (OMG - Object Management Group)
Unified (UNIFICADO):
El aporte de muchos métodos y notaciones
Independiente de implementaciones, plataformas y lenguajes
Modeling (MODELADO):
Los modelos son utilizados en todas las ingenierías
Language (LENGUAJE):
Si hay gente, requieren comunicarse. Si se tienen que comunicar, se tienen que entender.
Para entenderse necesitan un lenguaje común
|
ABSTRACCION |
Ignorancia Selectiva
La abstracción nos ayuda a trabajar con cosas complejas
Se enfoca en lo importante
Ignora lo que no es importante (simplifica)
Una clase es una abstracción en la que:
Se enfatizan las características relevantes
Se suprimen otras características
Una clase debe capturar una y solo una abstracciónd clave |
RELACIONES |
Todo sistema abarca muchas clases y objetos
Los objetos contribuyen en el comportamiento de un sistema colaborando entre si
La colaboración se logra a través de las relaciones
Existen dos tipos principales de relaciones
Asociación
Agregación
|
RELACIONES
DE ASOCIACION |
Una asociación es una conexión entre dos clases que representa una comunicación
Una asociación puede tener nombre
La comunicación puede ser tanto uni como bi-direccional (por defecto)
La multiplicidad es el número de instancias que participan en una asociación
Ejemplo:
Una Persona es Dueña de un Vehículo
Un Vehículo Pertenece a una Persona |
ENCAPSULAMIENTO |
Principio que establece que los atributos propios de un objeto no deben ser visibles desde otros objetos
Deben ser declarados como privados
Permite abstraer al resto del mundo de la complejidad de la implementación interna
Permite exponer el estado del objeto sólo a través del comportamiento que le hayamos definido mediante miembros públicos
¿Por qué es útil?
Punto de Control/Validación.
Mejor respuesta ante los Cambio
|
RELACIONES |
Todo sistema abarca muchas clases y objetos
Los objetos contribuyen en el comportamiento de un sistema colaborando entre si
La colaboración se logra a través de las relaciones
Existen dos tipos principales de relaciones
Asociación
Agregación |
RELACIONES DE
ASOCIACION |
Una asociación es una conexión entre dos clases que representa una comunicación
Una asociación puede tener nombre
La comunicación puede ser tanto uni como bi-direccional (por defecto)
La multiplicidad es el número de instancias que participan en una asociación
Ejemplo:
Una Persona es Dueña de un Vehículo
Un Vehículo Pertenece a una Persona |
RELACION DE
AGREGACION |
La agregación es una forma especial de asociación donde un todo se relaciona con sus partes
También se conoce como “una parte de” o una relación de contención
Ejemplo:
Una Puerta es una parte de un Vehículo
El Vehículo es azul, la Puerta es Azul
Mover el Vehículo implica mover la Puerta |
HERENCIA |
Es una relación entre clases en la cual una clase comparte la estructura y comportamiento definido en otra clase (Grady Booch)
Cada clase que hereda de otra posee:
Los atributos de la clase base además de los propios
Soporta todos o algunos de los métodos de la clase base
Una subclase hereda de una clase base
Herencia “Es-Un”: herencia real, donde la subclase es un tipo específico de la superclase
Un Cuadrado es un Rectángulo
Un perro es un mamífero
Un automóvil es un vehículo a motor
La posibilidad de que una clase herede las propiedades y
métodos de otra clase de forma que se puedan usar con la nueva clase de igual forma que si se hubiesen escrito directamente en ella. |
POLIMORFISMO |
Es la propiedad que tienen los objetos de permitir invocar genéricamente un comportamiento (método)
cuya implementación será delegada al objeto correspondiente recién en tiempo de ejecución
El polimorfismo tiende a existir en las relaciones de herencia, pero no siempre es así
EJEMPLO:
La definición del método reside en la clase base
La implementación del método reside en la clase derivada
La invocación es resuelta al momento de ejecución |
COMPILADORES DE
VISUAL BASIC |
Compilador de Línea de Comandos C#
Cumple con la especificación del CLS
<Win>\Microsoft.NET\Framework\<version>\csc.exe
Csc /out:XX /target:YY “Archivo1.cs” “Archivo2.cs”
Compilador de Línea de Comandos VB.NET
Cumple con la especificación del CLS
<Win>\Microsoft.NET\Framework\<version>\vbc.exe
vbc /out:XX /target:YY “Archivo1.vb” “Archivo2.vb” |
ARRAY (MATRICES) |
Los arrays (o matrices) son un tipo de variable que permiten tener más de un elemento, (o valor en su interior),
a los que se pueden acceder mediante un índice.
Un array también es el tipo en el que se basan todas las matrices o arrays. |
CLASES / OBJETOS |
Prácticamente todo lo que manejemos en el entorno .NET es una clase u objeto,
de hecho todas las clases derivan de una clase u objeto básico: la clase System.Object. |
CLASES ABSTRACTA |
Son clases que exponen un interface el cual hay que usar en las clases que se hereden de dicha clase abstracta. |
CLR |
El CLR (Common Language Runtime) es el motor en tiempo de ejecución del .NET Framework,
es decir la parte del "entorno" que se encarga de ejecutar el código de los lenguajes del .NET Framework. |
ENCAPSULACIÓN |
La posibilidad de ocultar el código usado para implementar un método o cualquier otro procedimiento
o función de forma que lo único que interese sea el interface expuesto por la clase u objeto. |
ENUMERACIONES (ENUM) |
Las enumeraciones son una serie de valores constantes (de tipo numérico), que de alguna forma están relacionadas entre sí.
A diferencia de las constantes normales, una variable declarada como una enumeración,
puede tomar cualquiera de los valores indicados en la enumeración. |
EVENTO |
Los eventos son procedimientos (SUB) que se ejecutan normalmente cuando el sistema Windows los provoca, por ejemplo,
al hacer click en una ventana o en cualquier objeto de la ventana,
cuando cambiamos el tamaño de una ventana, cuando escribimos en una caja de textos, etc. |
FUNCTION |
Los procedimientos FUNCTION son como las funciones del vb.NET, es decir, realizan una tarea,
al igual que un Sub, pero siempre suelen devolver un valor, resultado del código que se ha ejecutado en su interior.
A las funciones no se les puede asignar valores, a diferencia de las Propiedades. |
FORMULARIO (VENTANA) |
Un formulario es unaventana de Windows la cual usaremos para interactuar con el usuario,
ya que en dicha ventana o formulario, estarán los controles y demás objetos gráficos
que mostraremos al usuario de nuestra aplicación.
Los formularios también son llamados "formas" o Forms en su nombre en inglés. |
INSTANCIA |
Para poder usar una clase u objeto, hay que crear una instancia del mismo.
Es decir, debemos declarar una variable y a esa variable asignarle el objeto
o clase en cuestión para que podamos usarlo. Es como si tuviésemos que darle vida al objeto par poder usarlo. |
INTERFACE |
Se dice que las propiedades y métodos expuestos por una clase forman el interface de la misma. |
INTERFACE / IMPLEMENTS |
Los interfaces a diferencia de las clases es que no hay que escribir código para los métodos o
propiedades que expone, simplemente se indica la "declaración".
Usando Implements, se pueden usar esas interfaces en las clases,
aunque hay que escribir el código de cada método o propiedad implementado. |
LENGUAJE DE
PROGRAMACION |
Un lenguaje de programación es aquel elemento dentro de la informática
que nos permite crear programas mediante un conjunto de instrucciones,
operadores y reglas de sintaxis;
que pone a disposición del programador para que este pueda comunicarse con los dispositivos
hardware y software existentes. |
METODO |
Un procedimiento (Sub, Function -función- o Property -propiedad-) que se usa para realizar una tarea específica en la clase o módulo. |
MODULO |
Los módulos, al igual que las clases, son "espacios" en los cuales se incluyen declaraciones de variables,
procedimientos, funciones, etc.
Pero a diferencia de las clases, el código contenido en un módulo siempre está disponible de forma directa,
sin necesidad de crear una "instancia" de dicho módulo |
OBJETOS / CLASES |
Prácticamente todo lo que manejemos en el entorno .NET es un objeto o clase,
de hecho todas las clases derivan de una clase u objeto básico: la clase System.Object |
POO |
Programación orientada al objeto, una forma de programar
basada en la reutilización de código mediante herencia, encapsulación y polimorfismo. |
POLIFORMISMO |
La posibilidad de usar en clases diferentes propiedades
o métodos con el mismo nombre de forma que cuando se usen no nos preocupe a que clase pertenece.
Por ejemplo el objeto básico del que derivan t odas las clases de .NET tiene una propiedad llamada ToString,
ésta propiedad estará implementada de forma diferente en diferentes clases,
pero nosotros la usaremos de la misma forma, sin importarnos que objeto estemos usando. |
PROCEDIMIENTO |
Un método, función o propiedad de una clase o módulo. |
PARÁMETROS |
Los métodos o propiedades pueden tener parámetros, (uno o varios), los cuales le indicarán
los valores que deben usar para la tarea que debe realizar.
Por ejemplo, un método Contar podría recibir un parámetro con el valor de las veces que tiene que contar. |
SOBRECARGA (OVERLOAD) |
Se dice que un método está sobrecargado cuando existen distintas versiones de dicho método en la clase
Por ejemplo métodos con el mismo nombre que reciban parámetros de distintos tipos. |
VARIABLE |
Son "espacios" de memoria en la que se almacena un valor. Se usarán para guardar en memoria
los valores numéricos o de cadena de caracteres que nuestro programa necesite. |
GARBAGE COLLESION |
Es un programa que se encarga de la recolección de basura. Rutina que busca en la memoria segmentos de programas
o de datos que ya no son activos, con el fin de recuperar ese espacio |
JUST IN TIME |
Just in time" (JIT), literalmente quiere decir "Justo a tiempo". Es una filosofía que define la forma en que
debería optimizarse un sistema de producción.
Se trata de entregar materias primas o componentes a la línea de fabricación de forma que lleguen "justo a tiempo"
a medida que son necesarios.
El JIT no es un medio para conseguir que los proveedores hagan muchas entregas y con absoluta puntualidad
para no tener que manejar grandes volúmenes de existencia o componentes comprados,
sino que es una filosofía de producción que se orienta a la demanda.
La ventaja competitiva ganada deriva de la capacidad que adquiere la empresa para entregar al mercado
el producto solicitado, en un tiempo breve, en la cantidad requerida.
Evitando los costos que no producen valor añadido también se obtendrán precios competitivos.
Con el concepto de empresa ajustada hay que aplicar unos cuantos principios directamente relacionados con la Calidad Total.
El concepto parece sencillo.
Sin embargo, su aplicación es compleja, y sus implicaciones son muchas y de gran alcance |
|
|