Articulo de referencia

Efecto de plataforma interna

El efecto de plataforma interna es la tendencia de los arquitectos de software a crear un sistema tan personalizable que se convierte en una réplica, y a menudo una réplica defi...

El efecto de plataforma interna es la tendencia de los arquitectos de software a crear un sistema tan personalizable que se convierte en una réplica, y a menudo una réplica deficiente, de la plataforma de desarrollo de software que utilizan. Esto suele ser ineficiente y dichos sistemas se consideran a menudo ejemplos de un antipatrón .

Ejemplos

Se pueden observar ejemplos en software basado en complementos , como algunos editores de texto y navegadores web , donde los desarrolladores suelen crear complementos que recrean software que normalmente se ejecutaría sobre el propio sistema operativo. El mecanismo de complementos de Firefox se ha utilizado para desarrollar varios clientes FTP y exploradores de archivos que, en la práctica, replican algunas de las funciones del sistema operativo , aunque en una plataforma más restringida.

En el mundo de las bases de datos , los desarrolladores a veces se ven tentados a omitir el SGBDR , por ejemplo, almacenando todo en una tabla grande con tres columnas etiquetadas como ID de entidad, clave y valor. Si bien este modelo entidad-atributo-valor permite al desarrollador liberarse de la estructura impuesta por una base de datos SQL , se pierden todos los beneficios, [ 1 ] ya que todo el trabajo que podría ser realizado eficientemente por el SGBDR se impone a la aplicación. Las consultas se vuelven mucho más complejas, [ 2 ] los índices y el optimizador de consultas ya no pueden funcionar eficazmente y no se aplican las restricciones de validez de los datos . El rendimiento y la mantenibilidad pueden ser extremadamente deficientes.

Existe una tentación similar con XML , donde los desarrolladores a veces prefieren nombres de elementos genéricos y utilizan atributos para almacenar información significativa. Por ejemplo, cada elemento podría llamarse ` item` y tener los atributos `type` y `value` . Esta práctica requiere unir varios atributos para extraer información relevante. Como resultado, las expresiones XPath son más complejas, la evaluación es menos eficiente y la validación estructural ofrece pocos beneficios.

Otro ejemplo es el fenómeno de los escritorios web , donde un entorno de escritorio completo —que a menudo incluye un navegador web— se ejecuta dentro de un navegador (que a su vez suele ejecutarse dentro del entorno de escritorio proporcionado por el sistema operativo ). Un escritorio dentro de otro escritorio puede resultar inusualmente incómodo para el usuario, por lo que generalmente solo se utiliza para ejecutar programas que no se pueden implementar fácilmente en los sistemas de los usuarios finales, o bien para ocultar el escritorio externo.

Efecto

Es habitual que los desarrolladores de software creen una biblioteca de funciones personalizadas para su proyecto específico. El efecto de interoperabilidad se produce cuando esta biblioteca se expande para incluir funciones de propósito general que duplican la funcionalidad ya disponible en el lenguaje de programación o la plataforma. Dado que cada una de estas nuevas funciones suele llamar a varias de las funciones originales, tienden a ser más lentas y, si están mal programadas, también menos fiables.

Por otro lado, estas funciones suelen crearse para presentar una capa de abstracción más sencilla (y a menudo más portátil) sobre servicios de nivel inferior que tienen una interfaz incómoda, son demasiado complejos, no son portátiles o no son suficientemente portátiles, o simplemente no encajan bien con el código de aplicación de nivel superior.

Usos apropiados

Una plataforma interna puede ser útil por motivos de portabilidad y separación de privilegios; es decir, para que la misma aplicación pueda ejecutarse en una amplia variedad de plataformas externas sin afectar a nada fuera del entorno aislado gestionado por la plataforma interna. Por ejemplo, Sun Microsystems diseñó la plataforma Java para cumplir ambos objetivos.

Véase también

Referencias

  1. ^ Celko, Joe (1 de febrero de 2011). "Tablas de búsqueda en SQL" . Archivado del original el 23 de septiembre de 2016. Recuperado el 25 de abril de 2016 .
  2. ^ Peterson, Don (8 de septiembre de 2004). "Locura de tablas de búsqueda" . Recuperado el 1 de mayo de 2023 .

Obtenido de " https://en.wikipedia.org/w/index.php?title=Inner-platform_effect&oldid=1319593770 "