Jump to content

Казуар (программное обеспечение)

Cassowary — это набор дополнительных инструментов для решения ограничений , который эффективно решает системы линейных равенств и неравенств . Ограничениями могут быть как требования, так и предпочтения. Клиентский код определяет ограничения, которые необходимо поддерживать, а решатель обновляет ограниченные переменные, чтобы они имели значения, удовлетворяющие ограничениям.

Cassowary был разработан Грегом Дж. Бадросом , Аланом Борнингом и Питером Дж. Стаки и оптимизирован для приложений с пользовательским интерфейсом. [1] Бадрос использовал Cassowary среди других для реализации каскадных таблиц стилей ограничений (CCSS), расширения каскадных таблиц стилей (CSS). CCSS добавляет поддержку ограничений макета . Это позволяет дизайнерам описывать макет веб-страницы более гибко . Cassowary используется для решения этих ограничений и расчета окончательной планировки.

Оригинальный дистрибутив, [2] не поддерживается с 2000 года, включает реализации Smalltalk , C++ и Java , а также привязки для GNU Guile , Python и STk. существуют сторонние реализации Для JavaScript , [3] Дарт , [4] Писк , [5] Питон , [6] [7] Framework .NET , [8] и Руст . [9]

Приложения

[ редактировать ]
  • По состоянию на сентябрь 2014 года GSS, язык верстки и механизм верстки для Интернета, разрабатывается The Grid. [10] Это современное расширение CCSS. [11]
  • Layx — язык верстки для Интернета, разработанный с учетом простоты использования. [12]
  • Scwm — оконный менеджер ограничений схемы.
  • С 2011 года Cassowary используется в качестве алгоритма в механизме компоновки для Mac OS X (Lion и более поздних версий) и iOS (6 и более поздних версий). [ нужна ссылка ]
  • Механизм компоновки Enaml построен на основе оптимизатора линейных ограничений Cassowary. [13] [14] [15] [16]
  1. ^ Алгоритм решения ограничений линейной арифметики Казуара , авторы: Грег Дж. Бадрос , Алан Борнинг и Питер Дж. Стаки
  2. ^ «Инструментарий для решения казуарных ограничений» . Университет Вашингтона.
  3. ^ cassowary.js на GitHub
  4. ^ google/cassowary.dart , Google, 12 августа 2020 г. , получено 8 декабря 2020 г.
  5. ^ Казуар
  6. ^ казуар на GitHub
  7. ^ киви на GitHub
  8. ^ Вермюлен, Джо. «Казуар.Нет» . jovermeulen.com . Проверено 10 декабря 2020 г.
  9. ^ казуар-rs на GitHub
  10. ^ «История разработки таблиц стилей сетки» . Гитхаб .
  11. ^ «О ЦССС» . Архивировано из оригинала 11 сентября 2014 г. Проверено 22 сентября 2014 г.
  12. ^ «Домашняя страница сайта Layx» .
  13. ^ «Casuarius предоставляет привязки Python к реализации алгоритма Cassowary на C++» . Архивировано из оригинала 14 августа 2017 г. Проверено 19 сентября 2017 г.
  14. ^ казуариус на GitHub
  15. ^ Киви , замена Казуария/Казуара. Новый решатель устраняет это узкое место. Он по-прежнему использует тот же алгоритм Cassowary, но это реализация алгоритма с нуля, основанная на статье Cassowary, а не на существующем исходном коде Cassowary. Хотя алгоритм Cassowary хорош, существующая реализация на C++ имеет множество недостатков. Новый решатель работает в 12–500 раз быстрее в зависимости от задачи (обычно в 40 раз) и использует примерно в 5 раз меньше памяти. И, как обычно, я решил написать привязки Python вручную на C++, а не использовать Cython. Полученный код стал быстрее, и теперь у нас на одну внешнюю зависимость меньше.
  16. ^ киви на GitHub
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 7fd0febcfd410667206335adcd7cb4b1__1720277220
URL1:https://arc.ask3.ru/arc/aa/7f/b1/7fd0febcfd410667206335adcd7cb4b1.html
Заголовок, (Title) документа по адресу, URL1:
Cassowary (software) - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)