Las interfaces están en lenguajes orientados a objetos para exponer algunos comportamientos al mundo exterior al esconderse detrás de la implementación real. Las ventajas de usar interfaces sobre clases concretas es que puede cambiar la implementación real detrás de la interfaz cuando sea necesario, porque para el mundo exterior es la interfaz que es conocido, por lo que la implementación detrás de escena se puede cambiar fácilmente.
Para dar un ejemplo del mundo real, digamos que traemos a casa un televisor. Para nosotros es una pantalla en la que podemos ver varios canales, de modo que la pantalla del televisor es una interfaz para nosotros. Si mañana la compañía de televisión cambia algunos circuitos internos o tecnología, se irá Inadvertido para nosotros, porque lo que se nos ha expuesto es la pantalla de televisión (la Interfaz) y no la implementación concreta real y no nos importará mientras podamos ver la pantalla con una resolución clara o más clara.
Espero que ayude 🙂
- ¿Cómo debo usar Git / SVN para mis proyectos que se ejecutan en un servidor EC2? Soy la única persona que escribe el código.
- ¿Dónde encuentra buenos ingenieros de DevOps / Site Reliability?
- ¿Se debe exigir a los analistas que revelen las tarifas que obtienen de las compañías que cubren y que proporcionen material de apoyo que demuestre la profundidad de su análisis?
- ¿Los problemas dados en CodeChef, TopCoder, etc., no están destinados a estudiantes de ECE que aspiran a una carrera en la industria del software?
- ¿Cuál es la mejor manera de comenzar a trabajar por cuenta propia para un ingeniero de software (web)?