A-tit indd


Байт-код (Bytecode) —  Паттерны программирования игр



Download 3,35 Mb.
Pdf ko'rish
bet163/313
Sana05.06.2022
Hajmi3,35 Mb.
#638392
1   ...   159   160   161   162   163   164   165   166   ...   313
Bog'liq
Nistrem R. Patterni programmirovaniya igr-1

222
Байт-код (Bytecode) — 
Паттерны программирования игр
заранее можем отключить некоторые кнопки или пре-
доставить значения по умолчанию.
Предложенный вариант спасет вас от разработки 
грамматики и написания синтаксического анализато-
ра или парсера для небольшого языка. Я знаю, многие 
из вас не любят разрабатывать графический интерфейс. 
Но тогда мне нечего вам предложить.
В конце концов паттерн Интерпретатор (Interpreter) 
нужен для удобного определения поведения на высоком 
уровне. Вы создаете впечатления, которые пользователь 
получит от игры. Но чтобы исполнить код поведения, 
вам нужно перевести его в низкоуровневую форму. Это 
сложно. Но если вы постараетесь, усилия окупятся.
Архитектурные решения
Я пытался по возможности упростить эту главу, но, ка-
жется, в ней я просто создаю язык. И процессом творения 
можно настолько увлечься, что так и не закончить игру.
Как инструкции получают доступ к стеку?
Виртуальные машины для байт-кода делятся на две ка-
тегории: на основе стека и на основе регистров. В сте-
ковых виртуальных машинах инструкции всегда вы-
полняются сверху стека, как в нашем простом примере. 
Например, 
INST_ADD
извлекает два значения, склады-
вает их и помещает результат обратно.
У ВМ на основе регистров тоже есть стек. Разница 
в том, что инструкции могут считывать входные данные, 
находящиеся глубже в стеке. Инструкция
INST_ADD
вместо извлечения своих операндов сверху будет иметь 
два индекса, хранящиеся в байт-коде, которые укажут
откуда из стека считать операнды.
• Стековые ВМ
• Размер инструкций меньше
. Так как каждая ин-
струкция получает аргументы с вершины стека, нет 
необходимости особо на это указывать. А значит, 
Я хотел бы обратить 
внимание на важность 
обработки ошибок. Как 
программисты мы при-
выкли считать ошибки 
ужасным человеческим 
недостатком.
Хотите создать си-
стему, которой пользо-
ватели будут насла-
ждаться, — смиритесь 
с человеческой приро-
дой любого пользова-
теля, включая 
склон-
ность к ошибкам

Ошибки свойственны 
людям и являются не-
отъемлемой частью лю-
бого творческого про-
цесса. Обработка их 
с помощью такой функ-
циональности, как «от-
мена», поможет пользо-
вателям раскрыть свой 
талант и сделать что-то 
стоящее.
Это самая длинная глава 
в книге. Похоже, я про-
валил задание.



Download 3,35 Mb.

Do'stlaringiz bilan baham:
1   ...   159   160   161   162   163   164   165   166   ...   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