UFO:API для wiki

Последняя правка 3966 дней назад
Материал из UFO Wiki
Перейти к навигации Перейти к поиску

Терминология[править | править код]

API для wiki
Описание Оружия

{{СВД|Модификатор}}
{{СВД|Боеприпас}}
{{СВД|Кин. урон}}
{{СВД|Средний Кин. урон}}
{{СВД|Терм. урон}}
{{СВД|Средний Терм. урон}}
{{СВД|Хим. урон}}
{{СВД|Средний Хим. урон}}
{{СВД|Требуемый опыт}}
{{СВД|Первичная характеристика}}
{{СВД|Вторичная характеристика}}

Описание Брони

{{Комплект Тантал|Цена}}
{{Комплект Тантал|Требуемый опыт}}
{{Комплект Тантал|Первичная характеристика)}}
{{Комплект Тантал|Вторичная характеристика)}}

Описание Боеприпасов

{{.338|Таблица по типу}}
{{.338|Кин. урон (низ)}}
{{.338|Кин. урон (верх)}}
...

Интерфейс прикладного программирования (иногда интерфейс программирования приложений) (англ. Application Programming Interface, API [эй-пи-ай]) — набор готовых классов, функций, структур и констант, предоставляемых приложением (библиотекой, сервисом).

API определяет функциональность, которую предоставляет программа (модуль, библиотека), при этом API позволяет абстрагироваться от того, как именно эта функциональность реализована.

Если программу (модуль, библиотеку) рассматривать как чёрный ящик, то API — это множество «ручек», которые доступны пользователю данного ящика, которые он может вертеть и дёргать.

Зачем это нужно?[править | править код]

Такой подход делает информацию, представленную в UFO Wiki, динамично меняющейся. Достаточно изменить один ключевой параметр в шаблоне описания и подобные изменения каскадом отразятся на взаимосвязанных страницах.

В дальнейшем это позволит сделать сложные расчёты для любых параметров. Например, расчёт себестоимости:

  1. создаётся базовая страница с составляющими себестоимости (цены ресурсов, время на производство, накладные расходы)
  2. один раз пишется формула расчёта себестоимости и ссылка на неё добавляется на страницы готовых предметов
  3. любое изменение базовой страницы вызовет перерасчёт себестоимости на конечных страницах готовых предметов, без необходимости править их вручную.

Реализация[править | править код]

Каждой странице соответствует страница сателлит в виде шаблона с набором параметров и выводимых результатов.

Описание Код Результат
Пустой шаблон {{СВД}} Неверно задан параметр
Цена в городе 1 {{СВД|Цена Г1}} Неверно задан параметр
Цена в городе 2 {{СВД|Цена Г2}} Неверно задан параметр
Модификатор {{СВД|Модификатор}} 1.00
Боеприпас {{СВД|Боеприпас}} 7.62 7H1
Кин. урон {{СВД|Кин. урон}} 15 ... 17
Средний Кин. урон {{СВД|Средний Кин. урон}} 16
Требуемый опыт {{СВД|Требуемый опыт}} 38000
Первичная характеристика {{СВД|Первичная характеристика}}
Вторичная характеристика {{СВД|Вторичная характеристика}}

В первую очередь кандидатами для занесения в шаблоны API становятся параметры с которыми можно производить арифметические действия или логические операции.