Diseño de elementos software con tecnologías basadas en componentes. IFCT0609. José Carlos García Bermúdez

Чтение книги онлайн.

Читать онлайн книгу Diseño de elementos software con tecnologías basadas en componentes. IFCT0609 - José Carlos García Bermúdez страница 3

Diseño de elementos software con tecnologías basadas en componentes. IFCT0609 - José Carlos García Bermúdez

Скачать книгу

lleva a cabo el proceso de desarrollo software ha ido cambiando con el tiempo, pasando de la programación estructurada a una organización por módulos y, finalmente, a la programación orientada a objetos.

      A la hora de iniciar un desarrollo software, es necesario determinar el tipo de enfoque que quiere aplicarse, ya que no es lo mismo aplicar una programación estructurada que una orientación a objetos.

      Esta decisión no solo afecta a la programación, sino que determina en gran medida las técnicas que han de aplicarse en el análisis previo.

      2.1.Programación estructurada

      La programación estructurada se organiza de forma lineal, utilizando únicamente instrucciones secuenciales, alternativas y repetitivas; todo el código es gestionado en un único bloque, por lo que es poco flexible y difícil de mantener en programas más complejos.

      Para solventar estas carencias, surge la programación modular, que añade nuevas características a las técnicas utilizadas hasta el momento. El objetivo es separar en módulos las partes más complejas del programa, para que sean diseñados y desarrollados de forma independiente.

iNot

      Nota

      Cuando en los desarrollos actuales se aplica una programación estructurada, de manera implícita se asume que se está llevando a cabo de forma modular.

      Con este enfoque, se toma el problema de partida y se realiza un proceso de descomposición en problemas más pequeños, proceso que se repite hasta llegar a problemas elementales que pueden ser solventados mediante funciones más simples. Finalmente, se realizan diferentes llamadas entre estas funciones, de forma que den solución al problema de partida.

iDef

      Definición

      Función

      Conjunto de sentencias escritas en un lenguaje de programación, que utilizan unos parámetros para producir un resultado.

      2.2.Orientación a objetos

      La Programación Orientada a Objetos (POO) no consiste simplemente en nuevas características añadidas a las técnicas de programación estructurada y modular, es una nueva forma de pensar sobre el desarrollo de software y el proceso de descomposición de problemas.

      Con la orientación a objetos el proceso se centra en simular los elementos de la realidad que están asociados al problema, ajustándose más al pensamiento humano que al comportamiento de la máquina, por lo que está más cercana a cómo se expresarían las cosas en la vida real.

      Grady Booch, autor de Análisis y diseño orientado a objetos, define la Programación Orientada a Objetos como:

      Un método de implementación en el que los programas son organizados como colecciones cooperativas de objetos, cada uno de los cuales representa una instancia de alguna clase, y cuyas clases son miembros de jerarquías de clases unidas a través de una relación de herencia.

      Las aplicaciones orientadas a objetos están formadas por un conjunto de objetos que interaccionan entre sí enviándose mensajes. Los objetos similares se abstraen en clases, que son las que definen su comportamiento. Se dice que un objeto es una instancia de una clase.

iImp

      Importante

      Los valores que se asignan a los atributos de un determinado objeto hacen que ese objeto sea único.

      La clase define su comportamiento y sus características generales.

      La POO es un método de implementación en el que los programas están organizados como colecciones de objetos, pertenecientes a alguna clase. Una clase es la representación de un concepto y contiene toda la información necesaria para abstraer dicho concepto:

      ilst1Los datos, llamados “atributos”, que almacenan la información y describen su estado.

      ilst1Las operaciones, llamadas “métodos”, que definen el comportamiento del objeto y actúan sobre sus datos. Al indicar a un objeto que ejecute una operación, se dice que se le pasa un mensaje.

iRec

      Recuerde

      En la programación estructurada, los datos y los procesos están separados, ya que el objetivo es el procesamiento de unos datos de entrada para obtener como resultado una información de salida.

      En la POO, los objetos agrupan los datos y los procesos (que actúan sobre esos datos).

      2.3.Ventajas e inconvenientes

      La POO presenta estas ventajas respecto a la programación estructurada:

      ilst1Ocultación de la información, que hace que las aplicaciones sean más fáciles de mantener, ya que se ocultan los detalles de la implementación.

      ilst1Encapsulado de datos y procedimientos, que permite mayor nivel de abstracción y facilita la descomposición del sistema en elementos más pequeños.

      ilst1Herencia de clases, que permite reutilizar su comportamiento sin necesidad de reescribir el código.

      ilst1Reusabilidad de clases ya definidas y probadas, pues con un diseño adecuado es posible que sean reutilizadas en otras aplicaciones.

      ilst1Fiabilidad, ya que al dividir el problema en partes más pequeñas es posible realizar la prueba de manera independiente y aislar con mayor facilidad los posibles errores que pudieran surgir.

      Por el contrario, tiene los siguientes inconvenientes:

      ilst1Cambio en la forma de abordar el diseño de la aplicación, lo que requiere un análisis más exhaustivo.

      ilst1Complejidad en la implementación, que no facilita el desarrollo en aplicaciones pequeñas.

      ilst1Mayor curva de aprendizaje,

Скачать книгу