Pull to refresh
  • by relevance
  • by date
  • by rating

Qt + Kinetic = Eye-candy за полчаса

Qt *
В процессе разработки новой версии QutIMа возникла потребность переписать систему уведомлений, так как старая имела множество недостатков.

Не слишком давно на Хабре появился топик, посвящённый новым возможностям, которые появились в Qt. В частности, в нём описывается новый фреймворк, призванный облегчить создание анимированного пользовательского интерфейса. Если дорогой читатель ещё не в курсе дела, то советую для начала ознакомиться с данной статьей.

Небольшое видео с демонстрацией возможностей:



неплохо, правда?
Total votes 36: ↑33 and ↓3 +30
Views 2.9K
Comments 41

QML — новый подход к построению GUI

Qt *
Традиционно все десктопные приложения пишутся на императивных языках программирования, этот подход прост и понятен, куда проще описать последовательность действий для решения той или иной задачи, нежели поставить задачу в понятной для машины форме, но когда речь заходит о проектировании внешнего вида и поведения, возникают сложности.
Веб дизайнеры же привыкли описывать, как должно выглядеть веб приложение, то есть ставить задачу, а не по пунктам описывать её решение, такой подход называется декларативным, он удобен, но к сожалению в традиционных приложениях до сих пор господствует именно императивный подход. Есть конечно дизайнеры форм, но они лишь позволяют в общих чертах обрисовать внешний вид приложения, но совершенно не способны описать его поведение. Для решения это проблемы в Qt Software был предложен новый проект Declarative User Interface и в рамках него новый язык разметки:

Встречаем QML


Это новый язык разметки, позволяющий описывать не только внешний вид, но и поведение ваших приложений. Он очень прост и обладает json образным синтаксисом, немного сближающим его html5, что думаю очень придется по душе веб-дизайнерам, да и программистам тоже. А в перспективе это наконец позволит полностью разделить внутреннюю логику работы приложения и его внешнее поведение, в результате чего будет наконец решена извечная проблема, когда программист занимается ещё и внешним видом приложения, потому, как дизайнерам слишком сложно было вникнуть в программирование.
Хотите прикоснуться?
Total votes 45: ↑37 and ↓8 +29
Views 10K
Comments 64

Первые шаги с QML

Qt *
QML — это новый язык разметки для создания пользовательских интерфейсов. Его основная задача — обеспечить возможность простого и быстрого создания приложений с красивым, анимированным интерфейсом.
Не так давно вышла публичная версия. Это означает, что API в целом стабилизировался, и версию можно смело тестировать и использовать.
Declarative UI планируется включить в релиз Qt 4.7, а пока можно найти все необходимые файлы и инструкции по установке на ftp троллей.
В данной статье мне хотелось бы показать, как можно использовать С++ объекты (QObject) в qml.

Начнем
Total votes 52: ↑46 and ↓6 +40
Views 25K
Comments 44

Работаем с моделями в QML

Qt *

В продолжении предыдущего поста, хочется рассказать ещё немного о новой технологии от Qt Software и Nokia. Напомню, что QML — это новый язык описания пользовательского интерфейса, призванный упростить разработку современных приложений и наполнить их движением.
В этой статье мне хотелось бы немного рассказать о том, как в QML работает парадигма MVC
Читать дальше →
Total votes 47: ↑45 and ↓2 +43
Views 8.4K
Comments 35

Небольшой demo клиент vkontakte на QML

Qt *

Недавно я уже рассказывал о новом языке разметки, теперь же мне хотелось бы показать небольшой пример того, что можно с помощью этих инструментов сделать. В качестве демонстрации я решил написать крошечный клиент для популярной в рунете сети vkontakte.
Данный клиент взаимодействует с контактом через userapi, умеет отображать список пользователей, принимать и отправлять сообщения, отображать пользователей, от которых есть непрочитанные сообщения, а также искать нужных людей среди френдленты по имени и фамилии: в общем самый минимум, хотя делает он это весьма красиво.
Примечателен клиент тем, что здесь нет ни единой строчки на C++, всё сделано средствами qml и javascript.
Несколько скриншотов и ссылки для скачивания
Total votes 123: ↑88 and ↓35 +53
Views 3.3K
Comments 157

Новая сборка Оперы — линейные градиенты, WebP, декларативный UI

Opera
Барракуда наконец-то начала показывать зубки, теперь в ней действительно уже понемногу появляется то, на что реально можно посмотреть.

В этой сборке появилась поддержка CSS3 градиентов — одна из немногих фишек CSS3, которых в Опере действительно сильно не хватало.

Правда есть тут и минус. Пока что градиенты воспринимаются только в префиксной нотации, то есть вида -o-linear-gradient, что увеличивает и без того немалое дублирование в css файлах. Очень хочется верить, что к релизу от префикса избавятся.

Также, в этой сборке добавили поддержку WebP — нового формата сжатия статических изображений, будем надеется, что он станет убийцей jpeg.

Также добавлен Declarative UI — синтаксис управления внешним видом оперы через .ini файлы. За подробностями можно обращаться в dialog.ini или в оригинальную заметку в блоге разработчиков Оперы.

И ещё, как заметили в комментариях, в этой версии добавлена поддержка SOCKS Proxy, пока что, правда пока что можно настроить только через opera:config#Proxy

Скачать

Total votes 30: ↑25 and ↓5 +20
Views 617
Comments 37

Расширенный HTML

Ajax *Website development *JavaScript *HTML *
Sandbox
Tutorial

В этой статье хотел бы рассказать немного про библиотеку, первую версию которой я создал еще в конце прошлого года. Суть очень простая — расширить возможности языка HTML, чтобы можно было без JavaScript'а писать простые и рутинные вещи: отправка формы в json формате, загрузка HTML тимплейтов на определенную страницу(по сути модульная система для HTML через http/s запросы), турболинки(привет пользователям RoR), простая шаблонизация на основе ответов ajax запросов и немного еще.


image


Библиотека называется EHTML или Extended HTML. Основана она на небезызвестной идее веб компонентов. Она доступна на гитхабе, там довольно таки структурированная документация с примерами. В этой статье я просто опишу основные идеи, возможно кому-то это зайдет.

Читать дальше →
Total votes 29: ↑26 and ↓3 +23
Views 12K
Comments 21

Litho: лучшие практики для создания эффективного UI в Android

JUG Ru Group corporate blog Development of mobile applications *Development for Android *
🔥 Technotext 2020
Litho — UI-фреймворк от Facebook, который отвечает за быстрый рендеринг тяжелого UI в топовых приложения с миллиардами загрузок.

Как его использовать, что происходит под капотом, и действительно ли с UI можно работать только из одного потока?


Cookbook по Litho в расшифровке моего доклада с конференции Mobius 2019 Moscow под катом.
Total votes 19: ↑19 and ↓0 +19
Views 7.1K
Comments 8

Compose. Jetpack Compose

EPAM corporate blog Development of mobile applications *Development for Android *Kotlin *
image

Благодаря стремительному развитию мобильной индустрии каждые несколько лет мы наблюдаем появления новых технических решений, призванных усложнить упростить жизнь разработчикам. Некоторые из них, не сыскав популярности у пользователей, остаются лишь частью истории, другие – плотно укореняются в повседневной разработке, становясь в определенной области стандартом де-факто.

Пожалуй, главным трендом мобильной разработки за последние несколько лет стал декларативный UI. Такое решение уже давно успешно применяется в веб и кроссплатформенных решениях и, наконец, добралось и до нативной разработки. На iOS существует SwiftUI (представленный на WWDC 2019), а на Android – Jetpack Compose (представленный месяцем ранее на Google I/O 2019). И именно о последнем мы сегодня и поговорим.

Примечание: в данной статье мы не будем рассматривать поэтапное создание первого проекта на Compose, так как этот процесс прекрасно описан в других материалах. Моя цель – лишь рассказать о преимуществах и недостатках, которые дает android-разработчикам переход на Jetpack Compose, а решение использовать или нет всегда остаётся за вами.
Читать дальше →
Total votes 7: ↑6 and ↓1 +5
Views 10K
Comments 12