Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad

Inyeccion de dependencias - Apuntes - Arquitectura Web, Apuntes de Programación Web y Tecnologías

Apuntes del curso universitario de Informatica sobre la Inyección de dependencias - Es un patrón de diseño orientado a objetos, en el que se suministran objetos a una clase en lugar de ser la propia clase quien cree el objeto.

Tipo: Apuntes

2012/2013

Subido el 02/05/2013

Alejandro_87
Alejandro_87 🇦🇷

4.4

(294)

697 documentos

1 / 1

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
Inyección de dependencias:
Es un patrón de diseño orientado a objetos, en el que se suministran objetos a una clase
en lugar de ser la propia clase quien cree el objeto.
Se basa en el principio de que los módulos de alto nivel no deben depender de los de
bajo nivel, sino que ambos deben depender de abstracciones.
En una aplicación existen diversas dependencias entre objetos. Por ejemplo en un
modelo multicapas, los componentes de la vista dependen de los de la capa de servicio,
y estos últimos dependen de otros objetos de la misma capa al mismo tiempo que
objetos de la capa de acceso a datos.
La forma ingenua de crear la dependencia es a través del constructor, pero esto tiene el
problema de que es muy difícil testear la clase dependiente de manera aislada, y para
cambiar sus dependencias habría que irremediablemente modificar el código.
Para solucionar esto es que existe la inyección de dependencias. La idea es que
justamente esas dependencias sean “inyectadas” de manera externa, o sea, por agentes
externos a la clase dependiente, logrando así poder cambiar las dependencias sin tener
que modificar el código de la clase dependiente. Para lograr esto, un objeto declara
cambos privados que estarán disponibles para declarar sus dependencias, ya sea a través
de un constructor o a través de getters.
Una ventaja muy importante de esto es que hace a los objetos limpios, entendibles y
reusables. Si además se declara sus campos de dependencias a través de una interfase,
también serán muy fáciles de testear.
Algunas tecnologías que usan la ID son: Spring, Spring.NET, Castle, etc.
docsity.com

Vista previa parcial del texto

¡Descarga Inyeccion de dependencias - Apuntes - Arquitectura Web y más Apuntes en PDF de Programación Web y Tecnologías solo en Docsity!

Inyección de dependencias:

Es un patrón de diseño orientado a objetos, en el que se suministran objetos a una clase en lugar de ser la propia clase quien cree el objeto.

Se basa en el principio de que los módulos de alto nivel no deben depender de los de bajo nivel, sino que ambos deben depender de abstracciones.

En una aplicación existen diversas dependencias entre objetos. Por ejemplo en un modelo multicapas, los componentes de la vista dependen de los de la capa de servicio, y estos últimos dependen de otros objetos de la misma capa al mismo tiempo que objetos de la capa de acceso a datos.

La forma ingenua de crear la dependencia es a través del constructor, pero esto tiene el problema de que es muy difícil testear la clase dependiente de manera aislada, y para cambiar sus dependencias habría que irremediablemente modificar el código.

Para solucionar esto es que existe la inyección de dependencias. La idea es que justamente esas dependencias sean “inyectadas” de manera externa, o sea, por agentes externos a la clase dependiente, logrando así poder cambiar las dependencias sin tener que modificar el código de la clase dependiente. Para lograr esto, un objeto declara cambos privados que estarán disponibles para declarar sus dependencias, ya sea a través de un constructor o a través de getters.

Una ventaja muy importante de esto es que hace a los objetos limpios, entendibles y reusables. Si además se declara sus campos de dependencias a través de una interfase, también serán muy fáciles de testear.

Algunas tecnologías que usan la ID son: Spring, Spring.NET, Castle, etc.

docsity.com