Design Patterns : Elements of Reusable Object-Oriented Software



Download 4,06 Mb.
Pdf ko'rish
bet151/288
Sana07.04.2022
Hajmi4,06 Mb.
#535140
1   ...   147   148   149   150   151   152   153   154   ...   288
Bog'liq
GOF Design Patterns

Related Patterns 
Abstract Factory (99) can be used with Facade to provide an interface for creating 
subsystem objects in a subsystem-independent way. Abstract Factory can also be 
used as an alternative to Facade to hide platform-specific classes. 
Mediator (305) is similar to Facade in that it abstracts functionality of existing 
classes. However, Mediator's purpose is to abstract arbitrary communication 
between colleague objects, often centralizing functionality that doesn't belong 
in any one of them. A mediator's colleagues are aware of and communicate with 
the mediator instead of communicating with each other directly. In contrast, a 
facade merely abstracts the interface to subsystem objects to make them easier 
to use; it doesn't define new functionality, and subsystem classes don't know 
about it. 
Usually only one Facade object is required. Thus Facade objects are often 
Singletons (144). 


Design Patterns: Elements of Reusable Object-Oriented Software 
218 
Flyweight 
Intent 
Use sharing to support large numbers of fine-grained objects efficiently. 
Motivation 
Some applications could benefit from using objects throughout their design, but 
a naive implementation would be prohibitively expensive. 
For example, most document editor implementations have text formatting and editing 
facilities that are modularized to some extent. Object-oriented document editors 
typically use objects to represent embedded elements like tables and figures. 
However, they usually stop short of using an object for each character in the 
document, even though doing so would promote flexibility at the finest levels 
in the application. Characters and embedded elements could then be treated 
uniformly with respect to how they are drawn and formatted. The application could 
be extended to support new character sets without disturbing other functionality. 
The application's object structure could mimic the document's physical structure. 
The following diagram shows how a document editor can use objects to represent 
characters. 
The drawback of such a design is its cost. Even moderate-sized documents may require 
hundreds of thousands of character objects, which will consume lots of memory 
and may incur unacceptable run-time overhead. The Flyweight pattern describes 
how to share objects to allow their use at fine granularities without prohibitive 
cost. 



Download 4,06 Mb.

Do'stlaringiz bilan baham:
1   ...   147   148   149   150   151   152   153   154   ...   288




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish