A-tit indd



Download 3,35 Mb.
Pdf ko'rish
bet63/313
Sana05.06.2022
Hajmi3,35 Mb.
#638392
1   ...   59   60   61   62   63   64   65   66   ...   313
Bog'liq
Nistrem R. Patterni programmirovaniya igr-1

Типы первого класса
Предыдущие два решения требовали наличия класса 
Spawner
, в котором задается параметр типа. Однако 
в C++ типы обычно не первого класса, поэтому для ре-
шения нашей задачи потребуются дополнительные уси-
лия. Если вы используете динамический язык програм-
мирования, такой как JavaScript, Python или Ruby, где 
классы 
являются
обычными объектами, вы можете пе-
реходить к следующей части, поскольку в вашем случае 
проблема решается напрямую.
Когда вы создаете спаун, просто передайте ему 
класс монстра, который он должен клонировать, —
Не знаю, научились ли 
программисты С++ лю-
бить шаблоны, или же 
они до сих пор отпуги-
вают людей от C++. 
В любом случае, все, 
кого я знаю, программи-
руют на C++, используя 
шаблоны.
Класс 
Spawner
здесь вы-
глядит именно так, чтобы 
код, независимо от того, 
какой вид монстра гене-
рирует спаун, мог просто 
использовать этот класс 
и работать с указателями 
на 
Monster
.
Будь у нас только класс 
SpawnerFor

, не по-
лучилось бы использо-
вать единый супертип 
(родительский класс) для 
экземпляров этого ша-
блона. В таком случае 
любой код, работающий 
со спауном разного типа 
монстров, сам должен 
был бы получить пара-
метр шаблона.


86
Прототип (Prototype) — 
Паттерны программирования игр
фактический объект, во время выполнения программы 
представляющий класс монстра. Проще простого.
Несмотря на перечисленные варианты, я, честно го-
воря, не могу припомнить случай, когда 
паттерн проек-
тирования
Прототип (Prototype) был бы лучшим реше-
нием. Возможно, ваш опыт отличается, но пока давайте 
отложим это и поговорим кое о чем другом: прототипы 
как 
языковая парадигма
.

Download 3,35 Mb.

Do'stlaringiz bilan baham:
1   ...   59   60   61   62   63   64   65   66   ...   313




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