11. oktober 2007 - 15:43Der er
6 kommentarer og 1 løsning
Packages og interfaces
Hejsa!
Er begyndt at rode lidt med packages, så jeg kan samle klasser i grupper og sænke koblingen i mine programmer.
Men hvordan vil man typisk fortælle hvilke metoder en given package tilbyder udaftil?
Vil man definere et interface indeholdende alle public metoder der skal kunne kaldes udefra, lade dette interface blive implementeret af en slags pakkekontrol-klasse der igen ved hvilke klasser metoderne kan kaldes fra? Og så gøre alle andre pakke-specifikke metoder protected.
Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
Du kan Java wise goere funktionalitet pakke lokal ved brug af package visibility fremfor public visibility (package visibility = intet keyword i Java).
Du kan design wise lave et facade pattern, hvor du har et interface og en factory som exposes eksternt. Interfacet er saa interfacet til komponenten (i bred forstand af ordet). Factory kan levere en eller flere implementationer, som saa bruger resten af klasserne.
De to tilgange foregaard paa forskellige niveauer men er naturligvis velegnede til at blive kombineret.
Forslaget med metoder erklæret uden keyword er også det jeg ville opnå med protected keyword, og det fungerer som sådan fint. Men jeg ville bare gerne ha at min pakke kunne implementere et interface! Så hvis man ønskede at udskifte pakken med en anden, så havde man lidt retningslinier idet man som minimum skulle opfylde interfacet.
Jeg ved godt at en package ikke kan implementere et interface, men det er noget lignende jeg har brug for.
Hvis det er det du foreslår med facede, så er jeg ikke helt sikkert på jeg forstår hvad du mener :)
Yes, nu har jeg læst om facade, og fået implementeret det der hvor jeg skulle bruge det! alle tiders, tak for hjælpen! post endelig et svar, så får du point
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.