21. Ejemplo 2: biblioteca Class Biblioteca { private libro [] libros ; private socio [] socios; public Biblioteca() { … public void prestamo( socio S, libro L) { if controlDeAccesoValido() then{ // código del método } else{ generarExcepcion(); } } public void ingresarSocio(socio S){ if controlDeAccesoValido() then{ // código del método } else{ generarExcepcion(); } } // demás métodos… } Control de acceso Funcionalidad básica
22. Definición de un aspecto Aspecto Control { Punto de enlace operacionesSeguras = llamadas a Biblioteca.prestamo & llamadas a Biblioteca.ingresarSocio& ... antes de operacionesSeguras: { if !=(controlDeAccesoValido()) then{ g enerarExcepcion(); } }
23.
24.
25. Relación POA y POO POO: conceptos comunes POA: conceptos entrecruzados Clase A Clase A1 Attb1 Attb2 Método 1 Clase A2 Attb 3 Método 1 Método 2