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
  • Registerasi
  • Brosur UTI
  • Kip Scholarship Information
  • Performance
  1. Weltenzyklopädie
  2. Objektpool – Wikipedia
Objektpool – Wikipedia 👆 Click Here!
aus Wikipedia, der freien Enzyklopädie

Der Objektpool (engl. object pool pattern) ist ein in der Softwareentwicklung eingesetztes Entwurfsmuster, genauer ein Erzeugungsmuster. Es wird dazu verwendet, Objekte nach initialer Erzeugung (im Objektpool) vorzuhalten, sofern dies sinnvoller ist als sie bei jeder Verwendung neu zu erzeugen. Dies trifft vor allem auf häufig benötigte und aufwendig zu erstellende Objekte zu. Die Objekte werden dann im Objektpool abgelegt und bei Bedarf durch diesen wieder zur Verfügung gestellt.[1]

Beispiel "Bibliothek" für das Erzeugermuster "Objekt-Pool" der Softwareentwicklung.

Vorteile

[Bearbeiten | Quelltext bearbeiten]

Die Wiederverwendung bereits erzeugter Objektinstanzen reduziert potentiell den Aufwand (Zeit / Rechenleistung) zur Objekterzeugung.[2]

Nachteile

[Bearbeiten | Quelltext bearbeiten]

Die Wiederverwendung bereits genutzter Objekte erhöht die Komplexität des Programms.[3]

Verwendung

[Bearbeiten | Quelltext bearbeiten]

Das Entwurfsmuster Objektpool wird häufig genutzt, vor allem im Bereich von Thread-Pooling und Connection-Pooling (z. B.: Datenbankverbindungen) besteht oft hohes Potenzial für Performancegewinne, da das Erstellen eines Threads und der Verbindungsaufbau zu einem Datenbankmanagementsystemen relativ 'aufwendig' sind. Jedoch ist dies nicht für alle Objekttypen der Fall, speziell bei wenig komplexen Objekten ist in aktuellen Laufzeitumgebungen das Neuerstellen von Objekten 'günstiger' als aufwendige Pooling-Mechanismen.

Beispiel

[Bearbeiten | Quelltext bearbeiten]

Als Beispiel für einen Objektpool kann eine Bibliothek dienen. Ein Kunde (Client) leiht sich von der Bibliothek (Objektpool) ein Buch (Objekt). Nachdem er es gelesen hat, gibt er das Buch an die Bibliothek zurück. Dadurch steht es für weitere Kunden zur Verfügung. Das Buch muss nicht für jeden Lesevorgang neu gedruckt werden.

Abgrenzung von Objektpool zu Cache

[Bearbeiten | Quelltext bearbeiten]

Ein Objektpool speichert die Objekte ohne Zustand, dadurch sind sie bei jedem Abruf im Ausgangszustand. Beim Caching hingegen werden die Objekte inklusive Zustand gespeichert.

Weblinks

[Bearbeiten | Quelltext bearbeiten]
  • Beispiel (patterns-kompakt.de) (deutsch)
  • Erklärung in: Architektur- und Entwurfsmuster der Softwaretechnik (deutsch)
  • Apache Commons Pool: A mini-framework to correctly implement object pooling in Java

Einzelnachweise

[Bearbeiten | Quelltext bearbeiten]
  1. ↑ Joachim Goll, Manfred Dausmann: Architektur- und Entwurfsmuster der Softwaretechnik. 4. Auflage. Springer Vieweg Verlag, Wiesbaden 2013, ISBN 978-3-8348-2432-5, S. 78. 
  2. ↑ Karl Eilebrecht, Gernot Starke: Patterns kompakt. 4. Auflage. Springer Vieweg Verlag, Berlin 2013, ISBN 978-3-642-34717-7, S. 44. 
  3. ↑ Karl Eilebrecht, Gernot Starke: Patterns kompakt. 4. Auflage. Springer Vieweg Verlag, Berlin 2013, ISBN 978-3-642-34717-7, S. 44–45. 
Entwurfsmuster
V – D
Erzeugungsmuster

Abstrakte Fabrik | Erbauer | Fabrikmethode | Prototyp | Singleton | Multiton | Objektpool

Strukturmuster

Adapter | Brücke | Decorator | Fassade | Fliegengewicht | Kompositum | Stellvertreter

Verhaltensmuster

Beobachter | Besucher | Interpreter | Iterator | Kommando | Memento | Schablonenmethode | Strategie | Vermittler | Zustand | Zuständigkeitskette | Interceptor | Nullobjekt | Protokollstapel

Muster für objekt-
relationale Abbildung

Datentransferobjekt | Table Data Gateway | Row Data Gateway | Active Record | Unit of Work | Identity Map | Lazy Loading | Identity Field | Dependent Mapping | Embedded Value | Serialized LOB | Inheritance Mapper | Metadata Mapping | Query Object | Command-Query-Responsibility-Segregation

Nachrichten-
übermittlungsmuster
Integrationsarten

File Transfer | Shared Database | Remote Procedure Invocation | Messaging

Nachrichtenaufbau

Message | Command Message | Document Message | Event Message | Request-Reply | Return Address | Correlation Identifier | Message Sequence | Message Expiration | Format Indicator

Endpunkte

Message Endpoint | Messaging Gateway | Messaging Mapper | Transactional Client | Polling Consumer | Event-driven Consumer | Competing Consumers | Message Dispatcher | Selective Consumer | Durable Subscriber | Idempotent Receiver | Service Activator

Kanäle

Message Channel | Point-to-Point Channel | Publisher-Subscriber Channel | Datatype Channel | Invalid Message Channel | Dead Letter Channel | Guaranteed Delivery | Channel Adapter | Messaging Bridge | Message Bus

Nachrichtenvermittlung

Pipes-and-Filters | Message Router | Content-based Router | Message Filter | Dynamic Router | Recipient List | Splitter | Aggregator | Resequencer | Composed Message Processor | Scatter-Gather | Routing Slip | Process Manager | Message Broker

Nachrichtenumwandlung

Message Translator | Envelope Wrapper | Content Enricher | Content Filter | Claim Check | Normalizer | Canonical Data Model

Systemmanagement

Control Bus | Detour | Wire Tap | Message History | Message Store | Smart Proxy | Test Message | Channel Purger

andere

Application Controller | Business Delegate | Data Access Object | Dependency Injection | Extension Interface | Fluent Interface | Inversion of Control (IoC) | Lock | Model View Controller (MVC) | Model View Presenter (MVP) | Model View Update (MVU) | Model View ViewModel (MVVM) | Page Controller | Registry | Remote Facade | Repository | Service Locator | Session State | Table Module | Template View | Threadpool | Transaction Script | Transform View | Two-Step View | Value Object

Siehe auch:  Analysemuster | Architekturmuster | Integrationsmuster | SOA-Muster
Abgerufen von „https://de.teknopedia.teknokrat.ac.id/w/index.php?title=Objektpool&oldid=253527740“
Kategorien:
  • Software (Thema)
  • Entwurfsmuster

  • indonesia
  • Polski
  • العربية
  • Deutsch
  • English
  • Español
  • Français
  • Italiano
  • مصرى
  • Nederlands
  • 日本語
  • Português
  • Sinugboanong Binisaya
  • Svenska
  • Українська
  • Tiếng Việt
  • Winaray
  • 中文
  • Русский
Sunting pranala
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
Email: pmb@teknokrat.ac.id