Для входа на форум нажмите здесь
Новые комментарии
Юмор Рефакторинг и оптимизация скрипт-кода
Дата создания: 11.09.2012 10:06
Аватар для Desert_Eagle_renamed_46438_29012021
Пиф-паф
Регистрация:
17.05.2006
Стрелок Просветитель
Награжден за: За помощь игрокам в разделе Lineage 2
Рефакторинг и оптимизация скрипт-кода
Привет, котяточки! Сегодня я расскажу вам о Скрипт-Коде и его улучшении. Да да, о том самом Коде, который почти как язык программирования, но не совсем.

Cкрипт, как известно, протяжен во времени и, допустим, всегда состоит из
опроса состояния T
(t(p,r) - по заданному периоду p с повтором r, ? - по заданному событию),
условия C, действия А и его группы принадлежности G.

Код:

...
TCA
TCA
TAA       G1

TA
TA
TCCA     G2
...
Вся загвоздка состоит в том, чтобы сократить общее количество опросов состояния T в единицу времени до минимума!
Для этого нужно просто посчитать все ? и t(p,r) в каждой группе G и представить их всех в порядке выполнения, например, за каждую секунду.

Если, скажем, у нас есть G1 t(333) C A; и G2 t(250) A; ? С A;, получится что-то вроде
Код:

TCA
TCA
TCA
GT3 

TA
TA
TA
TA
TСA
GT5 

итого 8 опросов и 8 действий в каждую секунду.
- Если действия или условия сходны по своей природе/смыслу, то их нужно объединить в одну группу действий с бОльшим периодом опроса p (либо даже p и r) или с общим критерием.
- Если же они сильно различаются, их нужно разделить по разным логическим группам, часть из которых может быть исключена логически, а часть - включена, в зависимости от этапа выполнения.

И тогда у нас может получиться как-то так
Код:

TCAAAGT

TAAAAGT

TСAGT
G1 t(1000) C A A A; G2 t(1000) A A A A; G3 ? C A; - то есть уже 3 опроса состояния и 8 действий в секунду, либо даже 2 и 7, если, например, G3 окажется исключена из выполнения.

Вот такие вот пирожки без ГМО, котяточки!
А в следующем подкасте мы поговорим о похожей оптимизации наших с вами хромосомчиков и цепочечек - ведь, чем короче ATGT цепочечка, тем, как известно, прямее ручечки и меньше необходимость в использовании всего этого.


Цитра с гнутой декой, украшенная нефритом,
длиною в три фута победила отборное войско
1 пользователь оценил это сообщение: Показать
Аватар для Xronos
У меня лапки
Регистрация:
08.06.2006
GoHa.Ru - 10 лет Медаль "500 лайков"
Re: Рефакторинг и оптимизация скрипт-кода
ушан, завязывай с наркотой

What can change the nature of a man? (c) Planescape: Torment
War... War never changes. (c) Fallout
Аватар для Veawer_renamed_2830_26092021
Гуру
Регистрация:
02.07.2004
Re: Рефакторинг и оптимизация скрипт-кода
как полезно
Аватар для HMF
HMF
Troublemaker
Регистрация:
29.05.2009
Танк
Re: Рефакторинг и оптимизация скрипт-кода
AKM

Lineage2 2009-2012
Cadmus, Teon, Naia, rpg-club x3.
Аватар для CatTT
Claycat
Регистрация:
08.12.2006
Космос Победитель конкурса
Награжден за: За победу в конкурсе «Исследование Андромеды» по Mass Effect: Andromeda
Re: Рефакторинг и оптимизация скрипт-кода
что принимал?

Чтобы оставаться богатым- иногда нужно грабить (с)
Зачем Вам знать как устроены часы? Просто иногда поглядывайте на время(с)
У каждого из нас есть своя цена. Даже для того, что Вы не собирались продавать (с)
Ashran... Как много в этом звуке для сердца Horde`ского слилось! Как много в нём отозвалось!
Ваши права в разделе