Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Yahoo! Библиотека пользовательского интерфейса ( YUI ) - это прекращенная библиотека JavaScript с открытым исходным кодом для создания полнофункциональных интерактивных веб-приложений с использованием таких методов, как Ajax , DHTML и сценарии DOM . YUI включает несколько основных ресурсов CSS . Он доступен по лицензии BSD . [3] Разработка YUI началась в 2005 году, а Yahoo! такие свойства, как My Yahoo! и Yahoo! Первая страница начала использовать YUI летом того же года. YUI был выпущен для публичного использования в феврале 2006 года. [1] Он активно разрабатывался основной командой Yahoo! инженеры.

В сентябре 2009 года Yahoo! выпустила YUI 3, новую версию YUI, перестроенную с нуля, чтобы модернизировать библиотеку и включить уроки, извлеченные из YUI 2. Среди улучшений - механизм , управляемый селектором CSS , такой как jQuery , для извлечения элементов DOM , больший упор на детализацию modules, начальный файл меньшего размера, который при необходимости загружает другие модули, а также различные синтаксические изменения, призванные ускорить и упростить написание кода. [4]

Проект библиотеки YUI в Yahoo! была основана Томасом Ша и спонсируется Yahoo! соучредитель Джерри Янг ; его главными архитекторами были Ша, Адам Мур и Мэтт Суини. Разработчики библиотеки ведут YUIBlog; Сообщество YUI обсуждает библиотеку и ее реализации на своем форуме сообщества.

29 августа 2014 г. было объявлено, что активная разработка YUI компанией Yahoo! закончится, сославшись на эволюцию стандартов JavaScript, неуклонное снижение интереса разработчиков к большим библиотекам JavaScript и распространение серверных решений. Дальнейшая разработка будет ограничиваться отладочными версиями, решающими проблемы, которые «абсолютно критичны для свойств Yahoo». [5]

Особенности [ править ]

Библиотека YUI полностью документирована на ее веб-сайте; подробная документация по API сопровождает загрузку библиотеки. Он состоит из шести типов компонентов: ядра YUI, служебных программ, элементов управления пользовательского интерфейса, компонентов CSS, инструментов разработчика и инструментов сборки.

Ядро [ править ]

YUI Core - это легкий (уменьшенный до 31 КБ) набор инструментов для управления событиями и манипуляциями с DOM.

Глобальный объект YUI
Глобальный объект YUI содержит языковые утилиты, загрузчик сценариев и другую базовую инфраструктуру для YUI.
Коллекция Dom
Помогает с общими задачами создания сценариев DOM , включая позиционирование элементов и управление стилями CSS .
Утилита событий
Предоставляет разработчикам простой и безопасный доступ к событиям браузера (таким как щелчки мыши и нажатия клавиш). Он также предоставляет объект Custom Event для публикации и подписки на настраиваемые события.

Утилиты [ править ]

Анимация
Помогает создавать «эффекты» за счет анимации положения, размера, непрозрачности или других характеристик элементов страницы.
Диспетчер истории браузера
Помогает веб-приложениям использовать кнопку браузера «Назад» и функцию создания закладок.
Диспетчер подключений
Помогает управлять транзакциями XMLHttpRequest в кросс-браузерной манере. Он имеет интегрированную поддержку сообщений форм , обработки ошибок , обратных вызовов и загрузки файлов.
Cookie-файлы
Позволяет управлять файлами cookie и вложенными файлами браузера через простой API.
Источник данных
Предоставляет общий настраиваемый интерфейс для других компонентов для взаимодействия с различными типами данных, от простых массивов JavaScript до онлайн-серверов через XHR.
Перетащите и отпустите
Утилита перетаскивания YUI позволяет легко делать элементы « перетаскиваемыми » и создавать цели перетаскивания, которые реагируют на события перетаскивания.
Элемент
Предоставляет оболочку для элементов HTML в DOM и упрощает общие задачи, такие как добавление слушателей, управление DOM, а также установка и получение атрибутов.
Получать
Утилита Get поддерживает асинхронную загрузку данных и сценариев через узлы сценариев и динамическую загрузку внешних файлов CSS.
ImageLoader
ImageLoader YUI позволяет отложить загрузку изображений, которые не видны в области просмотра во время загрузки страницы. Это может привести к значительному увеличению производительности.
JSON
Утилита JSON предоставляет методы для проверки входящих данных JSON для проверки их безопасности и методы преобразования данных JavaScript в строку в формате JSON. Эти методы основаны на работе Дугласа Крокфорда на JSON.org.
Изменить размер
Позволяет сделать любой HTML-элемент блочного уровня изменяемым.
Селектор
Утилита YUI Selector позволяет вам получать ссылки на элементы HTML с помощью синтаксиса селектора CSS3.
Загрузчик YUI
YUI Loader - это механизм загрузчика на стороне клиента, который может динамически загружать любой компонент YUI (и зависимости) на лету.

Элементы управления [ править ]

Автозаполнение
Предоставляет функцию автозаполнения (списки предложений и функция опережающего ввода) для взаимодействия с пользователем, включающего ввод текста. Он поддерживает множество форматов источников данных. Он также поддерживает источники данных на стороне сервера через XMLHttpRequest.
Кнопка
Позволяет создавать многофункциональные графические кнопки, которые работают как кнопки традиционных HTML-форм.
Календарь
Графический динамический элемент управления, используемый для выбора даты.
Диаграммы
Элемент управления диаграммами извлекает данные с помощью утилиты DataSource и отображает данные в различных распространенных форматах диаграмм (линия, столбец, круговая диаграмма и т. Д.).
Палитра цветов
Элемент управления «Палитра цветов» предоставляет богатый визуальный интерфейс для выбора цвета.
Контейнер
Поддерживает различные шаблоны окон DHTML, включая всплывающую подсказку , панель, диалог, SimpleDialog, модуль и наложение.
Таблица данных
Простой, но мощный API для отображения табличных данных, доступных для чтения с экрана, на веб-странице. Известные функции включают в себя сортируемые столбцы, разбиение на страницы, прокрутку, выбор строк, столбцы с изменяемым размером и встроенное редактирование.
ImageCropper
ImageCropper предоставляет пользовательский интерфейс и интерактивные элементы для обрезки изображений на стороне клиента.
Менеджер компоновки
Позволяет без особых усилий создавать кросс-браузерные макеты с идеальным пикселем, обеспечивая фиксированный макет, содержащий верхнюю, нижнюю, левую, правую и центральную единицы макета.
Меню
Предоставляет простой API для создания всплывающих меню , строк меню и контекстных меню.
Редактор форматированного текста
YUI Rich Text Editor представляет собой сложный стороне клиента текстовый процессор , который имеет модульную конструкцию и легко конфигурируется, подходит для любого открытого состава ситуации для ввода текста.
Слайдер
Предоставляет общий элемент ползунка, который позволяет пользователю выбирать в пределах конечного диапазона значений по одной или двум осям.
TabView
Обеспечивает просмотр содержимого с вкладками; поддерживает динамическую загрузку содержимого вкладки через XMLHttpRequest.
В виде дерева
Создает дерево содержимого, узлы которого можно расширять и сжимать.
Загрузчик
Позволяет загружать многофайловые файлы с обратной связью о ходе загрузки.

Ресурсы CSS [ править ]

База CSS
Используйте Base after Reset, чтобы обеспечить согласованную кроссбраузерную замену стандартных правил CSS браузера, к которым привыкли веб-разработчики.
CSS сетки
Семь базовых каркасов страниц с компонентами подразделов для поддержки более 1000 различных макетов страниц.
CSS шрифты
Стандартизированные кроссбраузерные семейства шрифтов и рендеринг размеров.
Сброс CSS
В объявлениях CSS удаляются поля и стандартизируется кроссбраузерный рендеринг общих элементов.

Инструменты разработчика [ править ]

Регистратор
Предоставляет быстрый и простой способ записи сообщений журнала в экранную консоль, расширение Firebug для Mozilla Firefox или консоль Safari JavaScript.
Профайлер
Кроссбраузерный невизуальный профилировщик кода для JavaScript.
ProfilerViewer
Используется в сочетании с Profiler для обеспечения расширенной визуализации ваших данных профилирования - как в графическом (с использованием элемента управления диаграммами), так и в табличном формате (с использованием DataTable).
YUI Test
YUI Test - это среда тестирования для браузерных решений JavaScript. Используя YUI Test, вы можете легко добавить модульное тестирование в свои решения JavaScript. Хотя YUI Test не является прямым портом какой-либо конкретной платформы xUnit, он имеет некоторые характеристики от nUnit и JUnit.

Инструменты сборки [ править ]

Компрессор YUI
YUI Compressor - это инструмент, который безопасно минимизирует JavaScript и CSS.
YUIDoc
YUIDoc - это инструмент, написанный на JavaScript, который генерирует доступную для поиска API-документацию кода JavaScript. Обычно он используется как часть процесса сборки. YUIDoc управляется комментариями и совместим с множеством стилей кодирования и языков программирования.

См. Также [ править ]

  • Сравнение фреймворков JavaScript
  • CSS-фреймворк

Ссылки [ править ]

  1. ^ a b «Библиотека пользовательского интерфейса Yahoo!» . Yahoo! Блог пользовательского интерфейса . 13 февраля 2006 г.
  2. ^ "Релизы · yui / yui3 · GitHub" . GitHub . Проверено 24 апреля 2020 года .
  3. ^ "Библиотека YUI" . Проверено 13 июня 2008 года .
  4. ^ "YUI 3.0.0: Первый выпуск GA кодовой строки нового поколения YUI" . Yahoo! Блог пользовательского интерфейса . 29 сентября 2009 . Проверено 18 ноября 2009 года .
  5. ^ «Важное объявление относительно YUI» . Yahoo! Инженерное дело . Проверено 29 августа 2014 .

Внешние ссылки [ править ]

  • Сайт проекта YUI и средства отслеживания проблем
  • Открытый репозиторий исходного кода YUI
  • Yahoo! Блог пользовательского интерфейса
  • Yahoo! Библиотека шаблонов проектирования
  • YUICoder.com - манипулирование Yahoo! Пользовательский интерфейс (охватывает старый YUI 2.x)