Technopedia Center
PMB University Brochure
Faculty of Engineering and Computer Science
S1 Informatics S1 Information Systems S1 Information Technology S1 Computer Engineering S1 Electrical Engineering S1 Civil Engineering

faculty of Economics and Business
S1 Management S1 Accountancy

Faculty of Letters and Educational Sciences
S1 English literature S1 English language education S1 Mathematics education S1 Sports Education
teknopedia

teknopedia

teknopedia

teknopedia

teknopedia

teknopedia
teknopedia
teknopedia
teknopedia
teknopedia
teknopedia
  • Registerasi
  • Brosur UTI
  • Kip Scholarship Information
  • Performance
  1. Weltenzyklopädie
  2. Bridge_pattern
Bridge_pattern
Bridge pattern - Teknopedia
Vai al contenuto
Menu principale
Navigazione
  • Pagina principale
  • Ultime modifiche
  • Una voce a caso
  • Nelle vicinanze
  • Vetrina
  • Aiuto
  • Sportello informazioni
  • Pagine speciali
Comunità
  • Portale Comunità
  • Bar
  • Il Teknopediano
  • Contatti
Teknopedia L'enciclopedia libera
Ricerca
  • Fai una donazione
  • registrati
  • entra
  • Fai una donazione
  • registrati
  • entra

Indice

  • Inizio
  • 1 Struttura
  • 2 Esempio in Java
  • 3 Voci correlate
  • 4 Altri progetti

Bridge pattern

  • العربية
  • Български
  • Català
  • Deutsch
  • English
  • Español
  • فارسی
  • Français
  • Galego
  • Magyar
  • Հայերեն
  • 日本語
  • 한국어
  • Nederlands
  • Polski
  • Português
  • Русский
  • Svenska
  • Українська
  • Tiếng Việt
  • 中文
Modifica collegamenti
  • Voce
  • Discussione
  • Leggi
  • Modifica
  • Modifica wikitesto
  • Cronologia
Strumenti
Azioni
  • Leggi
  • Modifica
  • Modifica wikitesto
  • Cronologia
Generale
  • Puntano qui
  • Modifiche correlate
  • Link permanente
  • Informazioni pagina
  • Cita questa voce
  • Ottieni URL breve
  • Scarica codice QR
  • Passa al parser legacy
Stampa/esporta
  • Crea un libro
  • Scarica come PDF
  • Versione stampabile
In altri progetti
  • Wikimedia Commons
  • Elemento Wikidata
Aspetto
Da Teknopedia, l'enciclopedia libera.
Abbozzo
Questa voce sull'argomento programmazione è solo un abbozzo.
Contribuisci a migliorarla secondo le convenzioni di Teknopedia.

Il bridge pattern è un design pattern (modello di progettazione) della programmazione ad oggetti che permette di separare l'interfaccia di una classe (che cosa si può fare con la classe) dalla sua implementazione (come lo fa). In tal modo si può usare l'ereditarietà per fare evolvere l'interfaccia o l'implementazione in modo separato.

Struttura

[modifica | modifica wikitesto]

Esempio in Java

[modifica | modifica wikitesto]

Il seguente programma stamperà:

API1.circle at 1.000000:2.000000 radius 7.5000000
API2.circle at 5.000000:7.000000 radius 27.500000
/** "Implementor" */
interface DrawingAPI {
    public void drawCircle(double x, double y, double radius);
}

/** "ConcreteImplementor"  1/2 */
class DrawingAPI1 implements DrawingAPI {
   public void drawCircle(double x, double y, double radius) {
        System.out.printf("API1.circle at %f:%f radius %f\n", x, y, radius);
   }
}

/** "ConcreteImplementor" 2/2 */
class DrawingAPI2 implements DrawingAPI {
   public void drawCircle(double x, double y, double radius) {
        System.out.printf("API2.circle at %f:%f radius %f\n", x, y, radius);
   }
}

/** "Abstraction" */
abstract class Shape {
   protected DrawingAPI drawingAPI;

   protected Shape(DrawingAPI drawingAPI){
      this.drawingAPI = drawingAPI;
   }

   public abstract void draw();                             // low-level
   public abstract void resizeByPercentage(double pct);     // high-level
}

/** "Refined Abstraction" */
class CircleShape extends Shape {
   private double x, y, radius;
   public CircleShape(double x, double y, double radius, DrawingAPI drawingAPI) {
      super(drawingAPI);
      this.x = x;  this.y = y;  this.radius = radius;
   }

   // low-level i.e. Implementation specific
   public void draw() {
        drawingAPI.drawCircle(x, y, radius);
   }
   // high-level i.e. Abstraction specific
   public void resizeByPercentage(double pct) {
        radius *= pct;
   }
}

/** "Client" */
class BridgePattern {
   public static void main(String[] args) {
       Shape[] shapes = new Shape[] {
           new CircleShape(1, 2, 3, new DrawingAPI1()),
           new CircleShape(5, 7, 11, new DrawingAPI2()),
       };

       for (Shape shape : shapes) {
           shape.resizeByPercentage(2.5);
           shape.draw();
       }
   }
}

Voci correlate

[modifica | modifica wikitesto]
  • Design pattern

Altri progetti

[modifica | modifica wikitesto]

Altri progetti

  • Wikimedia Commons
  • Collabora a Wikimedia Commons Wikimedia Commons contiene immagini o altri file su bridge pattern
V · D · M
Design pattern
CreazionaliAbstract factory · Builder · Factory · Prototype · Singleton
StrutturaliAdapter · Bridge · Composite · Container pattern · Decorator · Façade · Flyweight · Proxy
ComportamentaliChain-of-responsibility · Command · Interpreter · Iterator · Mediator · Memento · Observer · State · Strategy · Template method · Visitor
Pattern di concorrenzaActive object · Balking · Binding properties · Double-checked locking · Event-based asynchronous · Guarded suspension · Join · Lock · Monitor · Proactor · Reactor · Read write lock · Scheduler · Thread pool · Thread-local storage
Pattern architetturaliFront controller · Interceptor · MVC · n-tier · Specification · Publish–subscribe · Naked objects · Service locator · Active record · Identity map · Data Access Object · Data transfer object · ADR · Inversione del controllo
Altri
pattern
Blackboard · Business delegate · Composite entity · Dependency injection · Intercepting filter · Lazy loading · Mock object · Null object · Object pool · Servant · Twin · Type tunnel
LibriDesign Patterns · Enterprise Integration Patterns
PersoneChristopher Alexander · Erich Gamma · Ralph Johnson · John Vlissides · Grady Booch · Kent Beck · Ward Cunningham · Martin Fowler · Robert Martin · Jim Coplien · Douglas Schmidt · Linda Rising
ComunitàThe Hillside Group · The Portland Pattern Repository
  Portale Informatica: accedi alle voci di Teknopedia che trattano di informatica
Estratto da "https://it.wikipedia.org/w/index.php?title=Bridge_pattern&oldid=137644325"
Categoria:
  • Design pattern
Categoria nascosta:
  • Stub - programmazione
  • Questa pagina è stata modificata per l'ultima volta il 1 feb 2024 alle 17:07.
  • La pagina è stata renderizzata con Parsoid.
  • Il testo è disponibile secondo la licenza Creative Commons Attribuzione-Condividi allo stesso modo; possono applicarsi condizioni ulteriori. Vedi le condizioni d'uso per i dettagli.
  • Informativa sulla privacy
  • Informazioni su Teknopedia
  • Avvertenze
  • Contatti legali e di sicurezza
  • Codice di condotta
  • Sviluppatori
  • Statistiche
  • Dichiarazione sui cookie
  • Versione mobile
  • Wikimedia Foundation
  • Powered by MediaWiki
Bridge pattern
Aggiungi argomento

  • Indonesia
  • English
  • Français
  • 日本語
  • Deutsch
  • Italiano
  • Español
  • Русский
  • فارسی
  • Polski
  • 中文
  • Nederlands
  • Português
  • العربية
Pusat Layanan

UNIVERSITAS TEKNOKRAT INDONESIA | ASEAN's Best Private University
Jl. ZA. Pagar Alam No.9 -11, Labuhan Ratu, Kec. Kedaton, Kota Bandar Lampung, Lampung 35132
Phone: (0721) 702022