Jump to content

Экст JS

(Перенаправлено из Ext (библиотека JavaScript) )
Ext JS JavaScript-фреймворк
Первоначальный выпуск 8 января 2007 г .; 17 лет назад ( 08.01.2007 )
Стабильная версия
7.8.0 / 21 мая 2024 г. ( 21.05.2024 ) [ 1 ]
Тип библиотека JavaScript
Лицензия Собственный
Веб-сайт www .сенча /продукты /доб. /

Ext JS — это JavaScript платформа приложений для создания интерактивных кроссплатформенных веб-приложений. [ 2 ] используя такие методы, как сценарии Ajax , DHTML и DOM . Его можно использовать как простую структуру компонентов (например, для создания динамических сеток на статических страницах), но также и как полную структуру для создания одностраничных приложений (SPA).

Первоначально создан как расширение дополнительной библиотеки. [ 3 ] YUI Джека Слокама , 15 апреля 2007 г., [ 4 ] Ext JS не имеет зависимости от внешних библиотек, начиная с версии 1.1. [ 5 ] В настоящее время Ext JS можно использовать как в виде единого скрипта (со всеми классами и компонентами в одном файле), так и путем создания приложения с помощью Sencha Cmd.

Элементы управления графическим интерфейсом (компоненты)

[ редактировать ]

Ext JS включает набор элементов управления формами на основе графического интерфейса (или « виджетов ») для использования в веб-приложениях:

  • текстовое поле и элементы управления вводом текстовой области
  • поля даты со всплывающим окном выбора даты
  • числовые поля
  • список и поля со списком
  • радио и флажком управление
  • элемент управления HTML-редактором
  • управление сеткой (с режимами только для чтения и редактирования, сортировкой данных, блокируемыми и перетаскиваемыми столбцами и множеством других функций)
  • контроль деревьев
  • вкладок панели
  • панели инструментов
  • меню в стиле настольных приложений
  • панели регионов, позволяющие разделить форму на несколько подразделов
  • ползунки
  • векторная графика диаграммы

Темы и наборы инструментов

[ редактировать ]

Sencha также предоставляет несколько тем для стилизации компонентов. Для изменения темы требуется просто изменить CSS и сценарий темы. При использовании Sencha CMD может потребоваться пересборка приложения. [ 6 ]

Все компоненты должны работать с каждой темой, но их внешний вид изменится. Например, классическая тема имеет довольно мелкие элементы, не подходящие для сенсорных устройств. Neptune Touch имеет более крупные элементы, лучше подходящие для планшетов и телефонов.

Ext JS поставляется в двух вариантах: современный и классический набор инструментов. Они отличаются не только доступными темами, но и между ними есть некоторые различия в API. Поэтому мигрировать с одного набора инструментов на другой не так просто, как с темами. Есть планы сгладить некоторые различия между наборами инструментов в Ext JS 7.1, выход которого запланирован на 2019 год. [ нужно обновить ] [ 7 ]

Набор инструментов для программирования

[ редактировать ]

Ext JS — это композиция классов, обладающая множеством возможностей. Несколько примеров:

  • абстрактный уровень для браузеров (например, Ext.isArray который можно использовать в качестве замены Array.isArray)
  • государственное управление (магазины)
  • уровень связи с сервером (прокси и Ext.Ajax.request)
  • планировка и управление окнами
  • управление событиями (с упрощенным созданием пользовательских событий для пользовательских компонентов)
  • маршрутизация

Система классов

[ редактировать ]

Ext JS имеет собственную систему классов. [ 8 ] [ 9 ] Классы определяются с помощью Ext.define и затем экземпляр можно создать с помощью Ext.create. Некоторые классы (например, компоненты и хранилища) могут иметь псевдонимы и могут быть созданы с помощью псевдонима. Экземпляры компонентов создаются автоматически при создании родительского компонента.

Класс может расширять как пользовательские, так и встроенные классы. Обычно пользовательские компоненты расширяют встроенные компоненты (например, MyApp.views.ProductsTable расширил бы встроенный Ext.grid.Panel). [ 10 ]

Существует встроенный динамический загрузчик, поэтому классы могут иметь динамические зависимости (загружаемые по требованию). В ExtJS есть два типа зависимостей. Зависимости, объявленные с помощью requires Свойство загружается до создания экземпляра класса. Зависимости, определенные в uses Свойство может быть загружено после создания экземпляра класса.

Также возможно переопределить классы. Даже встроенные классы. Переопределение встроенных классов может быть полезно, например, для обеспечения интернационализации. [ 11 ] или создавать патчи. Переопределенный класс объединяется с новым объявлением. Каждый класс можно переопределить столько раз, сколько необходимо (например, предоставив i18n, а затем l10n).

История версий Ext JS

[ редактировать ]

Расширенный JS 2.0

[ редактировать ]

Версия Ext JS 2.0 была выпущена 4 декабря 2007 года. Эта версия рекламировалась как предоставляющая интерфейс и функции, более похожие на те, которые традиционно ассоциируются с настольными приложениями. Также были представлены новая пользовательская документация, документация по API и примеры. [ 12 ]

Ext JS 2.0 не обеспечивал обратной совместимости с версией 1.1. Для решения этой проблемы было разработано руководство по миграции. [ 13 ]

Экст JS 3.0

[ редактировать ]

Версия Ext JS 3.0 была выпущена 6 июля 2009 года. В этой версии добавлена ​​поддержка связи для REST и новая серверная платформа Ext.Direct. К стандартным компонентам отображения были добавлены новые элементы флэш-диаграмм и ListView. Он был обратно совместим с кодом версии 2.0.

Расширенный JS 4.0

[ редактировать ]

Версия 4.0 платформы Ext была выпущена 26 апреля 2011 года. Она включает полностью переработанную структуру классов. [ 14 ] переработанный пакет данных, пакет анимации и рисования, использующий SVG и VML , [ 15 ] и пересмотренные диаграммы и тематика. Он также включает дополнительную архитектуру, которая обеспечивает модель-представление-контроллер стиль организации кода (MVC).

Расширенный JS 5.0

[ редактировать ]

Версия 5.0 платформы Ext JS была выпущена 2 июня 2014 года. [ 16 ] Он включает в себя возможность создавать настольные приложения на сенсорных устройствах. [ 17 ] — использование единой базы кода, архитектуры Model View ViewModel ( MVVM ), двусторонней привязки данных, адаптивных макетов и других обновлений компонентов с поддержкой добавления виджетов внутри ячейки сетки для визуализации данных и анализа больших данных. [ 18 ] Ext JS 5 также включает в себя обновленный пакет диаграмм, оптимизированный для сенсорного управления, а также дополнительные возможности построения финансовых диаграмм.

Ext JS 5 поддерживает современные и устаревшие браузеры, включая Safari 6+, Firefox, IE8+, Chrome и Opera 12+. На мобильной платформе Ext JS 5 поддерживает Safari на iOS 6 и 7, Chrome на Android 4.1+ и устройства с сенсорным экраном Windows 8 (такие как Surface и ноутбуки с сенсорным экраном) под управлением IE10+.

Важно: в версии Ext JS 5 вы не можете купить лицензию менее чем для 5 разработчиков.

Расширенный JS 6.0

[ редактировать ]

Версия 6.0 платформы Ext JS была выпущена 1 июля 2015 года. [ 19 ] Он объединяет инфраструктуру Sencha Touch (мобильную) с Ext JS. [ 20 ]

Расширенный JS 7.0

[ редактировать ]

Версия 7.0 платформы Ext JS была выпущена 29 августа 2019 года. [ 21 ] В этой версии в Modern Toolkit представлено несколько новых компонентов. Классический инструментарий получил тему Material Design .

15 июня 2010 г. о слиянии Ext JS с JQTouch и Raphaël . было объявлено [ 22 ] формирование новой организации под названием Sencha Inc. Ext JS по-прежнему доступен в качестве основного продукта на новом веб-сайте Sencha. [ 23 ] вместе с Sencha Touch , Sencha GWT (теперь Sencha GXT), Sencha Architect, Sencha Animator и Ext core.

23 августа 2017 года Sencha была приобретена компанией IDERA (которая, в свою очередь, владеет Embarcadero Technologies ). Embarcadero известна приобретением программного обеспечения для быстрой разработки приложений, такого как Delphi (который использует Object Pascal в качестве основного языка программирования). [ 24 ]

Плагин Sencha JetBrains

[ редактировать ]

Плагин Sencha JetBrains — это инструмент интегрированной среды разработки, который объединяет Sencha Frameworks и программное обеспечение JetBrains. Эта интеграция осуществляется в форме завершения кода , проверки и предложения при одновременном взаимодействии с собственным поведением JetBrains.

Ext.NET — это платформа компонентов ASP.NET, интегрирующая библиотеку Ext, [ 25 ] текущая версия (по состоянию на сентябрь 2017 г.) — 4.4, которая объединяет ExtJS версии 6.5.1.

История лицензий

[ редактировать ]

YUI-Ext был доступен по лицензии BSD . В апреле 2008 года лицензия открытого исходного кода , связанная с Ext, была изменена. В версии 2.0.2 авторы заявили, что Ext доступен по лицензии в стиле LGPL , если вы «планируете использовать Ext в личных, образовательных или некоммерческих целях» или «в проекте с открытым исходным кодом, который исключает использование не -программное обеспечение с открытым исходным кодом» или «используют Ext в коммерческом приложении, которое не является библиотекой или набором инструментов для разработки программного обеспечения». В Ext 2.1 этого уже не было. [ 26 ] Авторы Ext утверждают, что раздел 7 [ 27 ] LGPL в ее формулировке не применялось к «условиям», которые требовала их лицензия, прежде чем было разрешено распространение по LGPL, в отличие от «дополнительных ограничений», которые раздел 7 разрешал дистрибьютору снять. [ 28 ]

20 апреля 2008 года Ext 2.1 был выпущен под новой структурой двойной лицензии, которая позволяла выбирать между полной лицензией GPL 3.0 или собственной лицензией. [ 29 ]

Изменение лицензии с течением времени с разрешительной лицензии с открытым исходным кодом на ограничительную двойную лицензию вызвало разногласия в сообществе пользователей Ext. [ 30 ] [ 31 ] [ 32 ] [ 33 ]

Sencha опубликовала подробную информацию о своих коммерческих условиях и условиях лицензии GPL на своем веб-сайте. [ 34 ]

В ноябре 2018 года Sencha анонсировала выпуск Community Edition, который является бесплатным, но ограничен годовым доходом человека или компании, использующего ExtJS. [ 35 ] [ 36 ]

См. также

[ редактировать ]
  1. ^ «Ext JS 7.8 прибыл» . Сенча.com . 21 мая 2024 г. Проверено 21 мая 2024 г.
  2. ^ См. также: Богатое интернет-приложение.
  3. ^ «Десять вопросов автору YAHOO.ext Джеку Слокаму» . Архивировано из оригинала 13 сентября 2015 г. Проверено 11 августа 2015 г.
  4. ^ «@jackslocum #ExtJS 1.0 был выпущен 15 апреля 2007 года. С днем ​​рождения. @Sencha» . Джек Слокам . Проверено 14 апреля 2013 г.
  5. ^ Начиная с версии 2.0, Ext JS работает с различными базовыми библиотеками или адаптерами. (например, YUI , jQuery , Prototype ), или он может работать автономно . Возможность работы с несколькими базовыми библиотеками была удалена в версии 4.0.
  6. ^ «Система тем | Ext JS 6.5.3» . Документация Сенча . Проверено 11 июня 2018 г.
  7. ^ «Обновление дорожной карты продукта Sencha» . Сенча.com . 29.11.2017 . Проверено 11 июня 2018 г.
  8. ^ «Система классов | Ext JS 6.5.3» . Документация Сенча . Проверено 11 июня 2018 г.
  9. ^ «Основы ООП | Ext JS 6.5.3» . Документация Сенча . Проверено 11 июня 2018 г.
  10. ^ «Компоненты | Ext JS 6.5.3» . Документация Сенча . Проверено 10 июня 2018 г.
  11. ^ «Локализация | Ext JS 6.5.3» . Документация Сенча . Проверено 11 июня 2018 г.
  12. ^ «Ext JS 4.0.7 — Документы Sencha» . Extjs.com . Проверено 19 ноября 2012 г.
  13. ^ [1] Архивировано 20 февраля 2008 г., в Wayback Machine.
  14. ^ «Обратный отсчет до Ext JS 4: динамическая загрузка и новая система классов | Блог» . Сенча. 19 января 2011 г. Проверено 19 ноября 2012 г.
  15. ^ «Обратный отсчет до Ext JS 4: Пакет данных | Блог» . Сенча. 21 января 2011 г. Проверено 19 ноября 2012 г.
  16. ^ «Анонс Sencha Ext JS 5 | Блог» . Сенча. 2014-06-02 . Проверено 16 июля 2014 г.
  17. ^ «Sencha Ext JS 5 объединяет разработку мобильных и настольных приложений» . электронная неделя. 14 июня 2014 г. Проверено 11 сентября 2014 г.
  18. ^ «Sencha Ext JS 5 оптимизирует и унифицирует» . Доктор Добб. 05.06.2014 . Проверено 11 сентября 2014 г.
  19. ^ «Примечания к выпуску EXT JS 6.0.2» . Проверено 6 января 2017 г.
  20. ^ «Sencha унифицирует среды разработки JavaScript» . Проверено 28 августа 2015 г.
  21. ^ «Примечания к выпуску EXT JS 7.0.0» . Проверено 9 июля 2019 г.
  22. ^ «Ext JS + jQTouch + Рафаэль = Сенча | Блог» . Сенча. 14 июня 2010 г. Проверено 19 ноября 2012 г.
  23. ^ «Лидирующая в отрасли платформа JavaScript для создания настольных веб-приложений | Sencha Ext JS | Продукты» . Сенча . Проверено 19 ноября 2012 г.
  24. ^ Диамандопулос, Кибела (25 августа 2017 г.). «IDERA, Inc. приобретает Sencha для укрепления бизнеса по инструментам для разработчиков» . sencha.com . Сенча, ООО . Проверено 12 сентября 2017 г.
  25. ^ «– Платформа компонентов ASP.NET (WebForm + MVC), интегрирующая библиотеку JavaScript Sencha Ext JS | Веб-компоненты ASP.NET для веб-форм и приложений MVC. Интегрирует платформу Sencha ExtJS» . Экст.NET. 20 сентября 2011 г. Проверено 17 ноября 2012 г.
  26. ^ «Изменить лицензию?» . Extjs.com . Проверено 6 мая 2022 г.
  27. ^ «Меньшая стандартная общественная лицензия GNU — версия 3, 29 июня 2007 г.» . Gnu.org . Проверено 17 ноября 2012 г.
  28. ^ «Форумы Sencha, изменение лицензии ExtJS» .
  29. ^ «Выпущены Ext JS 2.1 и Ext GWT 1.0, предварительная версия Ext JS 3.0 | Блог | Sencha» . Extjs.com. 22 апреля 2008 г. Проверено 19 ноября 2012 г.
  30. ^ Понедельник, 28 апреля 2008 г., 15:08, Тим О'Брайен в «Мнении» (28 апреля 2008 г.). «Подделка лицензий поражает ExtJS и Java Service Wrapper: отчужденные сообщества — блог O'Reilly ONJava» . Oreillynet.com . Проверено 19 ноября 2012 г. {{cite web}}: CS1 maint: числовые имена: список авторов ( ссылка )
  31. ^ Асай, Мэтт (25 февраля 2008 г.). «ExtJS: Когда открытый исходный код вообще не открыт | The Open Road — Новости CNET» . News.cnet.com . Проверено 19 ноября 2012 г.
  32. ^ «Ext JS и удовольствие от лицензий с открытым исходным кодом» . Аяксиан. 26 апреля 2008 г. Проверено 19 ноября 2012 г.
  33. ^ «Назревание споров вокруг EXTJS «Байт останавливается здесь» . Bytestopshere.com . Проверено 19 ноября 2012 г.
  34. ^ «Лицензирование Sencha | Веб-сайт | Sencha» . Сенча.com. 13 января 2011 г. Проверено 16 мая 2016 г.
  35. ^ «Анонсируем выпуск Sencha Ext Community Edition» . Сенча.com . 06.11.2018 . Проверено 6 декабря 2019 г.
  36. ^ «Ext JS Community Edition» . Сенча.com . 31 октября 2018 г. Проверено 6 декабря 2019 г.

Библиография

[ редактировать ]
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 889d3f20ce9cf9341f192000843c31e4__1717426860
URL1:https://arc.ask3.ru/arc/aa/88/e4/889d3f20ce9cf9341f192000843c31e4.html
Заголовок, (Title) документа по адресу, URL1:
Ext JS - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)