Куксду 7.0

Полная платформа приложений JavaScript

После одного года разработки ассоциация qooxdoo с гордостью объявляет о немедленном выходе основного нового выпуска qooxdoo 7.0.

В то время как многие предложения во вселенной NPM сосредоточены на одном аспекте кодирования, упаковки, доставки, проектирования или организации веб-приложения JavaScript, qooxdoo предоставляет универсальное решение для написания полных приложений, работающих в браузере, на мобильных устройствах и на сервере. .

Новый выпуск qooxdoo 7 еще больше согласовывает фреймворк с современными передовыми практиками JavaScript. Встроенный в JavaScript компилятор qooxdoo, представленный в выпуске qx6, теперь полностью интегрирован в базовую структуру qooxdoo. Классический генератор qooxdoo на основе Python, объявленный устаревшим в qooxdoo 6, был удален из фреймворка.

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

Исходный код фреймворка был полностью переформатирован в красивом виде, в котором появился ряд особенностей синтаксиса ES6. Мы также интегрировали переформатирование кода с помощью prettier в компилятор qooxdoo. Попробуйте новую функцию es6ify в своих проектах.

Вызов методов или статических функций из родительского класса qooxdoo теперь стал намного проще с использованием ключевого слова super. Его можно использовать для вызова конструктора суперкласса, а также методов из суперкласса. Обратите внимание, что qooxdoo super немного более удобен для пользователя, чем обычный ES6 super, так как вы можете получить доступ к this даже до вызова super.

Многие компоненты qooxdoo были улучшены для поддержки рекомендаций WAI-ARIA по обеспечению доступности многофункциональных интернет-приложений, что привело к значительному улучшению управления с клавиатуры в приложениях qooxdoo.

Классы связи qooxdoo под qx.io были реструктурированы. Все, что ниже qx.io.remote, было удалено из стандартного фреймворка и теперь доступно как устаревшее дополнение. Новая реализация JSON-RPC производственного качества доступна в разделе qx.io.jsonrpc. Мы также добавили экспериментальный клиент GraphQL (qx.io.graphql.Client). Поделитесь с нами вашими мыслями.

При переносе ваших приложений на этот основной выпуск обратите внимание на ряд критических изменений (отсюда и новый номер основной версии). Подробности в примечаниях к выпуску.

Начать работу с qooxdoo 7 как никогда просто:

$ mkdir myapp
$ cd myapp
$ npm init
$ npm install --save-dev @qooxdoo/framework
$ npx qx create myapp --type desktop --noninteractive --out=.
$ npx qx serve

Теперь подключитесь с помощью браузера к http://localhost:8080 и испытайте свое первое приложение qooxdoo. Исходный код находится в папке source/class. Компилятор автоматически перекомпилирует приложение, как только вы измените файл. Нажмите Перезагрузить в браузере, чтобы увидеть результаты ваших изменений.

Узнайте больше о написании красивых полностраничных веб-приложений с помощью qooxdoo на нашем сайте: www.qooxdoo.org.