Programación Orientada a Objetos

"Año del Buen Servicio al Ciudadano"

Curso: Laboratorio de Programación III. 
Docente: Marco Aurelio Porro Chulli. 
Carrera Profesional: Ingeniería de Sistemas y   Telemática. 
Nombre del Grupo: Group Systems.
Integrantes:
  • Maldonado Idrogo Betzabeth Yameli.
  • Pérez Saucedo Yordin ALberto.

Ciclo: VII - "B"
BAGUA GRANDE-UTCUBAMBA -2017

1.    Contenido
·         Definicion:
Es un paradigma de programación que viene a innovar la forma de obtener resultados.  Los objetos manipulan los datos de entrada para la obtención de datos de salida específicos, donde cada objeto ofrece una funcionalidad especial. Está basada en varias técnicas, incluyendo herenciacohesiónabstracciónpolimorfismoacoplamiento y encapsulamiento.
·         Conceptos Básicos (Clase, Método, Herencia, Sobrecarga, Evento, Atributos, Mensajes, etc.):
es una forma de programar que trata de encontrar una solución a estos problemas. Introduce nuevos conceptos, que superan y amplían conceptos antiguos ya conocidos.
{  Clase: Definiciones de las propiedades y comportamiento de un tipo de objeto concreto. La instanciación es la lectura de estas definiciones y la creación de un objeto a partir de ella.
{  Método: Algoritmo asociado a un objeto, cuya ejecución se desencadena tras la recepción de un "mensaje". Un método puede producir un cambio en las propiedades del objeto, o la generación de un "evento" con un nuevo mensaje para otro objeto del sistema.
{  Herencia: es específica de la programación orientada a objetos, donde una clase nueva se crea a partir de una clase existente. La herencia (a la que habitualmente se denomina subclase) proviene del hecho de que la subclase (la nueva clase creada) contiene los atributos y métodos de la clase primaria.
{  Sobrecarga: Es la capacidad de un lenguaje de programación, que permite nombrar con el mismo identificador diferentes variables u operaciones. En programación orientada a objetos la sobrecarga se refiere a la posibilidad de tener dos o más funciones con el mismo nombre pero funcionalidad diferente.
{  Evento: Un evento es una acción que un objeto reconoce, Los eventos se producen como consecuencia de una acción del usuario o de código de programa, o bien pueden ser desencadenados por el sistema. También puede desarrollar eventos personalizados propios para que los generen sus objetos y los controlen otros objetos.
{  Atributos: son los que se guardan en variables denominadas de instancia, y cada objeto particular puede tener valores distintos para estas variables. Las variables de instancia también denominados miembros dato, son declaradas en la clase pero sus valores son fijados y cambiados en el objeto.
{  Mensajes: Los objetos interactúan enviándose mensajes unos a otros. Tras la recepción de un mensaje el objeto actuará. La acción puede ser el envío de otros mensajes, el cambio de su estado, o la ejecución de cualquier otra tarea que se requiera que haga el objeto.
·         Características (Abstracción, Encapsulamiento, Herencia, Polimorfismo, Modularidad, etc.):
{  Abstracción
Denota las características esenciales de un objeto, donde se capturan sus comportamientos. Cada objeto en el sistema sirve como modelo de un "agente" abstracto que puede realizar trabajo, informar y cambiar su estado, y "comunicarse" con otros objetos en el sistema sin revelar "cómo" se implementan estas características.  El proceso de abstracción permite seleccionar las características relevantes dentro de un conjunto e identificar comportamientos comunes para definir nuevos tipos de entidades en el mundo real. La abstracción es clave en el proceso de análisis y diseño orientado a objetos, ya que mediante ella podemos llegar a armar un conjunto de clases que permitan modelar la realidad o el problema que se quiere atacar.
{  Encapsulamiento
Significa reunir todos los elementos que pueden considerarse pertenecientes a una misma entidad, al mismo nivel de abstracción. Esto permite aumentar la cohesión (diseño estructurado) de los componentes del sistema.
{  Herencia
La herencia organiza y facilita el polimorfismo y el encapsulamiento, permitiendo a los objetos ser definidos y creados como tipos especializados de objetos preexistentes. Estos pueden compartir (y extender) su comportamiento sin tener que volver a implementarlo. Esto suele hacerse habitualmente agrupando los objetos en clases y estas en árboles o enrejados que reflejan un comportamiento común. Cuando un objeto hereda de más de una clase se dice que hay herencia múltiple; siendo de alta complejidad técnica por lo cual suele recurrirse a la herencia virtual para evitar la duplicación de datos.
{  Polimorfismo
Comportamientos diferentes, asociados a objetos distintos, pueden compartir el mismo nombre; al llamarlos por ese nombre se utilizará el comportamiento correspondiente al objeto que se esté usando.  Cuando esto ocurre en "tiempo de ejecución", esta última característica se llama asignación tardía o asignación dinámica.
{  Modularidad
Se denomina "modularidad" a la propiedad que permite subdividir una aplicación en partes más pequeñas (llamadas módulos), cada una de las cuales debe ser tan independiente como sea posible de la aplicación en sí y de las restantes partes. Estos módulos se pueden compilar por separado, pero tienen conexiones con otros módulos.
·         POO en Visual Basic. Net
El polimorfismo es importante por razones de rendimiento. Para comprobarlo, observe la función siguiente
Public Sub Alimentarse(ByVal Critter As Object, _
ByVal Food As Object)
            Dim dblDistance As Double
            ' Código para calcular la distancia a la comida
            '(omitido).
            Critter.Mover dblDistance  ' Enlace en tiempo de
                                                                                                                      ' compilación
            Critter.Morder Food                        ' Enlace en tiempo de
                                                                                                                      ' compilación
End Sub
Ejemplo de Herencia:
Public Class Persona
    Private nombre As String
    Private edad As Integer
    Private altura As Double
    Private peso As Double
    Public Sub New(nombre As String, edad As Integer, altura As Double, peso As Double)
        Me.nombre = nombre
        Me.edad = edad
        Me.altura = altura
        Me.peso = peso
    End Sub
    Public Property PropNombre() As String
        Get
            Return nombre
        End Get
        Set(value As String)
            nombre = value
        End Set
    End Property
    Public Property PropEdad() As Integer
        Get
            Return edad
        End Get
        Set(value As Integer)
            edad = value
        End Set
    End Property
    Public Property PropAltura() As Double
        Get
            Return altura
        End Get
        Set(value As Double)
            altura = value
        End Set
    End Property
    Public Property PropPeso() As Double
        Get
            Return peso
        End Get
        Set(value As Double)
            peso = value
        End Set
    End Property
End Class
Alumno
Public Class Alumno
    Inherits Persona
    Private nota As Integer
    Public Sub New(nombre As String, edad As Integer, altura As Double, peso As Double, nota As Integer)
        MyBase.New(nombre, edad, altura, peso)
        Me.nota = nota
    End Sub
    Public Property PropNota As Integer
        Get
            Return nota
        End Get
        Set(value As Integer)
            nota = value
        End Set
    End Property
End Class
2.    Resumen
Paradigma de programación que viene a innovar la forma de obtener resultados.
Está basada en varias técnicas, incluyendo herencia, cohesión, abstracción, polimorfismo, acoplamiento y encapsulamiento.
También tiene características tales como: Encapsulamiento, Polimorfismo, Herencia, Abstracción y Modularidad.
3.    Summary
Programming Paradigm that comes to innovate the way to obtain results.
It is based on several techniques, including inheritance, cohesion, abstraction, polymorphism, coupling and encapsulation.
It also has features such as: Encapsulation, Polymorphism, Inheritance, Abstraction and Modularity.
4.    Recomendaciones
·      Si la aplicación involucra operaciones con  base de datos, interfaces web u otras tareas de negocio, la opción ideal es Visual Basic.
·      Si tu aplicación demanda algoritmos rápidos y un diseño natural lógico, a la vez de un mantenimiento de una GUI de primera categoría, entonces el enfoque Visual Basic/COM debería ser aplicado.
·      Si usted es el programador que quiere todo bajo control entonces el enfoque API es la elección.

5.    Conclusiones
·      La programación orientada a objetos permite la optimización del código generado gracias a que mediante técnicas de herencia, atributos estáticos entre otros permiten, que el código sea genérico de manera que sea reutilizable.
·      Mediante la técnica aprendida en el presente curso podemos establecer una solución primitiva de un problema real, tan solo con relacionarlo con objetos lógicos que serán usados para el desarrollo del software.
·      Podemos dar a conocer de una forma sencilla los mecanismos que se usan en este nivel de programación, a personas que deseen una explicación rápida y sencilla de lo que es la programación orientada a objetos.
6.    Apreciación del Equipo
POO promete mejoras de amplio alcance en la forma de diseño, desarrollo y mantenimiento del software ofreciendo una solución a largo plazo a los problemas y preocupaciones que han existido desde el comienzo en el desarrollo de software. Donde aprenderemos a analizar los requisitos empresariales, a modelar los objetos y las relaciones involucradas en el diseño de la solución, a implementar la solución utilizando Visual Basic .NET.
7.    Glosario de Términos
·         API: (siglas de 'Application Programming Interface') es un conjunto de reglas (código) y especificaciones que las aplicaciones pueden seguir para comunicarse entre ellas: sirviendo de interfaz entre programas diferentes de la misma manera en que la interfaz de usuario facilita la interacción humano-software.
·         Innovar: Se puede considerar como el concepto etimológico de este término renovar o mejorar algo a tal punto de parecer nuevo.
·         Relevante: Que sobresale por su importancia o significación.
·         NET Framework: Es el modelo de programación global y coherente de Microsoft para crear aplicaciones que tengan experiencias de usuario visualmente impresionantes, comunicación segura y sin problemas y la capacidad de modelar diversos procesos de negocios.
8.    Linkografía

9.  Diapositivas

Comentarios

Entradas populares de este blog

Reportes

Aplicaciones N - Capas en Visual Net

Objeto SqlCommand