martes, 11 de mayo de 2021

 Lenguajes para proyecto

Lenguaje ASM

El lenguaje ensamblador (ASM) es una forma en la que los humanos nos comunicamos con los computadores a través de unos y ceros [20]. Al ser el lenguaje nativo de los procesadores, los programas que se suelen implementar suelen ser más rápidos y compactos que los programados en lenguajes de alto nivel (C, Basic, etc.), además de aprovechar al máximo la capacidad del procesador.

Su estructura es parecida a una lista secuenciada de instrucciones representada por nemónicos, los cuales son un grupo de instrucciones predefinidas en cada procesador a la hora de fabricarlo. Cada línea del programa cuenta con un nemónico y un operando sobre el cual se ejecutará la instrucción.

 

Programación orientada al objeto

La OOP (Object Oriented Programming) no es un lenguaje de programación, sino que es considerada como una técnica que puede ser aplicada en cualquier lenguaje [22]. Los entornos de programación actuales incorporan estructuras de la OOP.

La evolución de los lenguajes de programación incorporando la esencia de la OOP ha sido paulatina e ininterrumpida. El famoso lenguaje C ha pasado a la plataforma C# incorporando el Framework .NET pasando por el exitoso C++ que por años fue el lenguaje favorito de los programadores que implementaban esta técnica. Por su parte, Basic evolucionó a Visual Basic, el cual en versiones modernas adoptó el Framework .NET, consolidándose como una plataforma a la par del C# y dejando de lado la muy criticada falta de herencia en sus primeras versiones. Por otra parte, Java es la plataforma que ha implementado de manera pura la esencia de la programación orientada al objeto, siendo concebida para cubrir los requerimientos de la estructura OPP [35].

Esta técnica nació con el propósito de simplificar la descripción de códigos para resolver problemas que cada vez son más complejos. Se le denomina orientada al objeto por la semejanza con el mundo real para la manipulación de objetos [23].

 

Definición de objeto

A diferencia del mundo real en donde un objeto es cualquier acción, materia física, real o imaginaria, un objeto de OPP es un conjunto de datos y métodos [22]. Estos actúan como una sola unidad a la que se le llama objeto, en donde un dato es un calificativo (Color, tamaño, peso) y un método representa una acción (Respirar, masticar, hablar).

En la informática un dato es la clase a la cual pertenece el objeto y el método son los procesos que puede realizar el mismo.

 

Definición de clase

Una clase sirve para crear muchos objetos independientes pero que tienen las mismas características [25]. Esto quiere decir que si, por ejemplo, creamos un objeto, este puede pertenecer a la clase SerialPort (que se usa en este proyecto). Esta clase brinda al objeto creado cualidades que solo ella brinda y que las diferencian de las otras, como la comunicación serial en este caso. Cada objeto puede adquirir esas cualidades según sea requerido por el programador y su objetivo.

 

Definición de método

El método son las funciones o acciones que lleva a cabo una clase [22], como ya se mencionó, clase y método actúan como una unidad. Continuando con el ejemplo de la clase SerialPort, esta posee métodos para controlar recursos del puerto serie como: Open (Abre una nueva conexión del puerto serial), WriteLine (Escribe una línea a través del puerto serie), ReadLine (Lee una línea del puerto serie), por mencionar algunas [36].

 

Definición de herencia

La herencia permite reutilizar el código escrito en clases superiores y reescribir las diferencias que existen entre ellas [22]. Al igual que en la naturaleza los hijos heredan ciertos rasgos y características de los padres para adaptarse y sobrevivir, en la informática estos rasgos heredados son fragmentos de código de una o varias clases.

 Esta herramienta es lo que vuelve a la OPP una técnica productiva y eficiente para resolver problemas de gran envergadura. Siguiendo con la clase SerialPort, esta heredó rasgos de una clase “superior” o padre. En la siguiente figura se muestra la jerarquía de herencia de la clase SerialPort.

              Figura 2.7 Jerarquía de herencia clase SerialPort.

 Como se observa, la clase SerialPort heredó características de la clase Component hasta llegar a Object [36].

Otra ventaja de la herencia es el reacondicionamiento de códigos, si se hace un cambio en Component, este cambio también afectará a SerialPort y a las subclases que se hayan creado a partir de ella, esto es una ventaja para la actualización de sistemas basados en OPP.

El uso de herencia múltiple trae grandes ventajas como la facilidad, flexibilidad y simplicidad en la definición de nuevas clases, sin embargo, no es recomendable su uso en exceso, ya que provoca sistemas de comportamiento impredecible y el aumento de tiempo en el proceso de programas [23].

Esta ciencia es abstracta y compleja, las definiciones escritas anteriormente buscan la neutralidad y simplicidad entre textos de diversos autores. La clase SerialPort, métodos y jerarquía de herencia pertenece al Framework .NET, por lo que una clase llamada del mismo modo en otro entorno puede tener diferente estructura y jerarquía de herencia.

No hay comentarios:

Publicar un comentario