SlideShare a Scribd company logo
1 of 8
Download to read offline
Sebastian Kügler <sebas@kde.org>, FrOSCon 2006
Albert Astals Cid <aacid@kde.org>
Qt Quick
An Introduction to Qt Quick
Albert Astals Cid
Sebastian Kügler <sebas@kde.org>, FrOSCon 2006
Albert Astals Cid <aacid@kde.org>
Qt Quick
Who is Albert Astals Cid?
 It's me!
 Computer Engineer by UPC
 Using Qt since 2002
 KDE developer since 2003
 A TOTAL Qt Quick newbie
Sebastian Kügler <sebas@kde.org>, FrOSCon 2006
Albert Astals Cid <aacid@kde.org>
Qt Quick
A bit of history
 Qt development starts in 1990
 Qt prototype in 1993
 Qt 1.0 is released in 1996
 KDE 1.0 is releaed in 1998
 Qt adds support for Mac in 2001
 Apple introduces the iPhone in 2007
 Nokia adquires Trolltech in 2008
 December 2009 Qt 4.6 is releaed with Symbian support
Sebastian Kügler <sebas@kde.org>, FrOSCon 2006
Albert Astals Cid <aacid@kde.org>
Qt Quick
What is Qt Quick?
Qt Quick is a collection of technologies that are designed to help developers create
the kind of intuitive, modern-looking, fluid user interfaces that are increasingly
used on mobile phones, media players, set-top boxes and other portable devices.
Who let Marketing write that?
Qt Quick is the marketing name for QML and some tools around it
QML is a declarative language designed to describe the user interface of a
program: both what it looks like, and how it behaves.
Sebastian Kügler <sebas@kde.org>, FrOSCon 2006
Albert Astals Cid <aacid@kde.org>
Qt Quick
Declarative? What's that?
 You say what you want and not what to do
Example 1 – declarative
Example 2 – imperative
 More or less the same
 Example 3
 still would be “Ok” with imperative programming
 Example 4
 Binding properties
 Example 5
 Would be a huge pain to do in regular imperative programming
Sebastian Kügler <sebas@kde.org>, FrOSCon 2006
Albert Astals Cid <aacid@kde.org>
Qt Quick
Bigger Examples
 Flickr
 SameGame
 PhotoViewer
Sebastian Kügler <sebas@kde.org>, FrOSCon 2006
Albert Astals Cid <aacid@kde.org>
Qt Quick
Benefits
 Clear separation between interface and business logic
 Designer friendly
 CSS/Javascript-like
●Shiny
Problems
 No common style between applications (Qt Components might fix this 4.x?.8?.9?
 Different way of thinking
 New/Untested/buggy
 Reduced use case
Sebastian Kügler <sebas@kde.org>, FrOSCon 2006
Albert Astals Cid <aacid@kde.org>
Qt Quick
Questions?

More Related Content

Similar to Introducción a QML

Qt Technical Presentation
Qt Technical PresentationQt Technical Presentation
Qt Technical PresentationDaniel Rocha
 
Qt user interface
Qt user interfaceQt user interface
Qt user interfacemeriem sari
 
Qt quick at Cybercom Developer Day 2010 by Alexis Menard 7.9.2010
Qt quick at Cybercom Developer Day 2010 by Alexis Menard 7.9.2010Qt quick at Cybercom Developer Day 2010 by Alexis Menard 7.9.2010
Qt quick at Cybercom Developer Day 2010 by Alexis Menard 7.9.2010CybercomChannel
 
Epam mobile meetup 2014 10-15 qt cross-platform solution for mobile development
Epam mobile meetup 2014 10-15 qt cross-platform solution for mobile developmentEpam mobile meetup 2014 10-15 qt cross-platform solution for mobile development
Epam mobile meetup 2014 10-15 qt cross-platform solution for mobile developmentIvan Marinov
 
Qt S60 Technical Presentation Fn Stripped
Qt S60 Technical Presentation Fn StrippedQt S60 Technical Presentation Fn Stripped
Qt S60 Technical Presentation Fn StrippedNokia
 
Smalltalk speaks dot net
Smalltalk speaks dot netSmalltalk speaks dot net
Smalltalk speaks dot netESUG
 
Andreas Jakl Software Development on Nokia Deviceswith Qt
Andreas Jakl Software Development on Nokia Deviceswith QtAndreas Jakl Software Development on Nokia Deviceswith Qt
Andreas Jakl Software Development on Nokia Deviceswith QtNokiaAppForum
 
So I Downloaded Qt, Now What?
So I Downloaded Qt, Now What?So I Downloaded Qt, Now What?
So I Downloaded Qt, Now What?Janel Heilbrunn
 
So I downloaded Qt, Now What?
So I downloaded Qt, Now What?So I downloaded Qt, Now What?
So I downloaded Qt, Now What?ICS
 
Open frameworks 101_fitc
Open frameworks 101_fitcOpen frameworks 101_fitc
Open frameworks 101_fitcbenDesigning
 
The Ring programming language version 1.5.3 book - Part 186 of 194
The Ring programming language version 1.5.3 book - Part 186 of 194The Ring programming language version 1.5.3 book - Part 186 of 194
The Ring programming language version 1.5.3 book - Part 186 of 194Mahmoud Samir Fayed
 
Qt Technology Overview for: MedAcuity
Qt Technology Overview for: MedAcuityQt Technology Overview for: MedAcuity
Qt Technology Overview for: MedAcuityQt
 
Intro to QML / Declarative UI
Intro to QML / Declarative UIIntro to QML / Declarative UI
Intro to QML / Declarative UIOpenBossa
 
Qt Software Development Framework - Medical
Qt Software Development Framework - Medical Qt Software Development Framework - Medical
Qt Software Development Framework - Medical Qt
 
Contribuire al Qt Project
Contribuire al Qt ProjectContribuire al Qt Project
Contribuire al Qt ProjectQT-day
 
QT 프로그래밍 기초(basic of QT programming tutorial)
QT 프로그래밍 기초(basic of QT programming tutorial)QT 프로그래밍 기초(basic of QT programming tutorial)
QT 프로그래밍 기초(basic of QT programming tutorial)Hansol Kang
 

Similar to Introducción a QML (20)

Meet Qt
Meet QtMeet Qt
Meet Qt
 
Qt introduction
Qt introductionQt introduction
Qt introduction
 
Qt Technical Presentation
Qt Technical PresentationQt Technical Presentation
Qt Technical Presentation
 
Qt user interface
Qt user interfaceQt user interface
Qt user interface
 
Qt quick at Cybercom Developer Day 2010 by Alexis Menard 7.9.2010
Qt quick at Cybercom Developer Day 2010 by Alexis Menard 7.9.2010Qt quick at Cybercom Developer Day 2010 by Alexis Menard 7.9.2010
Qt quick at Cybercom Developer Day 2010 by Alexis Menard 7.9.2010
 
Epam mobile meetup 2014 10-15 qt cross-platform solution for mobile development
Epam mobile meetup 2014 10-15 qt cross-platform solution for mobile developmentEpam mobile meetup 2014 10-15 qt cross-platform solution for mobile development
Epam mobile meetup 2014 10-15 qt cross-platform solution for mobile development
 
Qt S60 Technical Presentation Fn Stripped
Qt S60 Technical Presentation Fn StrippedQt S60 Technical Presentation Fn Stripped
Qt S60 Technical Presentation Fn Stripped
 
Smalltalk speaks dot net
Smalltalk speaks dot netSmalltalk speaks dot net
Smalltalk speaks dot net
 
Qt
QtQt
Qt
 
Andreas Jakl Software Development on Nokia Deviceswith Qt
Andreas Jakl Software Development on Nokia Deviceswith QtAndreas Jakl Software Development on Nokia Deviceswith Qt
Andreas Jakl Software Development on Nokia Deviceswith Qt
 
So I Downloaded Qt, Now What?
So I Downloaded Qt, Now What?So I Downloaded Qt, Now What?
So I Downloaded Qt, Now What?
 
So I downloaded Qt, Now What?
So I downloaded Qt, Now What?So I downloaded Qt, Now What?
So I downloaded Qt, Now What?
 
了解 Qt
了解 Qt了解 Qt
了解 Qt
 
Open frameworks 101_fitc
Open frameworks 101_fitcOpen frameworks 101_fitc
Open frameworks 101_fitc
 
The Ring programming language version 1.5.3 book - Part 186 of 194
The Ring programming language version 1.5.3 book - Part 186 of 194The Ring programming language version 1.5.3 book - Part 186 of 194
The Ring programming language version 1.5.3 book - Part 186 of 194
 
Qt Technology Overview for: MedAcuity
Qt Technology Overview for: MedAcuityQt Technology Overview for: MedAcuity
Qt Technology Overview for: MedAcuity
 
Intro to QML / Declarative UI
Intro to QML / Declarative UIIntro to QML / Declarative UI
Intro to QML / Declarative UI
 
Qt Software Development Framework - Medical
Qt Software Development Framework - Medical Qt Software Development Framework - Medical
Qt Software Development Framework - Medical
 
Contribuire al Qt Project
Contribuire al Qt ProjectContribuire al Qt Project
Contribuire al Qt Project
 
QT 프로그래밍 기초(basic of QT programming tutorial)
QT 프로그래밍 기초(basic of QT programming tutorial)QT 프로그래밍 기초(basic of QT programming tutorial)
QT 프로그래밍 기초(basic of QT programming tutorial)
 

More from kdeespana

Desarrollando software libre sin ser informático akademy es 2017
Desarrollando software libre sin ser informático akademy es 2017Desarrollando software libre sin ser informático akademy es 2017
Desarrollando software libre sin ser informático akademy es 2017kdeespana
 
Slimbook - Welcome to Freedom - Akademy-es 2017
Slimbook - Welcome to Freedom - Akademy-es 2017Slimbook - Welcome to Freedom - Akademy-es 2017
Slimbook - Welcome to Freedom - Akademy-es 2017kdeespana
 
valgrind y ASAN Dos formas de instrumentar código en busca de errores
valgrind y ASAN Dos formas de instrumentar código en busca de erroresvalgrind y ASAN Dos formas de instrumentar código en busca de errores
valgrind y ASAN Dos formas de instrumentar código en busca de erroreskdeespana
 
KDE España: Qué es y para que sirve
KDE España: Qué es y para que sirve KDE España: Qué es y para que sirve
KDE España: Qué es y para que sirve kdeespana
 
Qtquick, interfaces con animaciones fluídas en Qt5
Qtquick, interfaces con animaciones fluídas en Qt5Qtquick, interfaces con animaciones fluídas en Qt5
Qtquick, interfaces con animaciones fluídas en Qt5kdeespana
 
Descubre plasma 5, el escritorio de la Comunidad KDE
Descubre plasma 5, el escritorio de la Comunidad KDEDescubre plasma 5, el escritorio de la Comunidad KDE
Descubre plasma 5, el escritorio de la Comunidad KDEkdeespana
 
Clazy, mejorando tu código en tiempo de compilación
Clazy, mejorando tu código en tiempo de compilaciónClazy, mejorando tu código en tiempo de compilación
Clazy, mejorando tu código en tiempo de compilaciónkdeespana
 
La potencia del Terminal
La potencia del TerminalLa potencia del Terminal
La potencia del Terminalkdeespana
 
Novedades de C++11
Novedades de C++11Novedades de C++11
Novedades de C++11kdeespana
 
10 formas de colaborar akademy es 2016
10 formas de colaborar akademy es 201610 formas de colaborar akademy es 2016
10 formas de colaborar akademy es 2016kdeespana
 
Kool Desktop Environment
Kool Desktop EnvironmentKool Desktop Environment
Kool Desktop Environmentkdeespana
 
openQA y Open Build System
openQA y Open Build SystemopenQA y Open Build System
openQA y Open Build Systemkdeespana
 
KDE Frameworks, cuando Qt se nos queda corto
KDE Frameworks, cuando Qt se nos queda corto KDE Frameworks, cuando Qt se nos queda corto
KDE Frameworks, cuando Qt se nos queda corto kdeespana
 
Qt5 en distintas plataformas
Qt5 en distintas plataformasQt5 en distintas plataformas
Qt5 en distintas plataformaskdeespana
 
Next gen Desktop Apps
Next gen Desktop AppsNext gen Desktop Apps
Next gen Desktop Appskdeespana
 
KDE España: Qué es y para qué sirve
KDE España: Qué es y para qué sirveKDE España: Qué es y para qué sirve
KDE España: Qué es y para qué sirvekdeespana
 
KDE connect - Akademy-es 2014 por Albert Vaca
KDE connect - Akademy-es 2014 por Albert VacaKDE connect - Akademy-es 2014 por Albert Vaca
KDE connect - Akademy-es 2014 por Albert Vacakdeespana
 
Next gen-apps
Next gen-appsNext gen-apps
Next gen-appskdeespana
 
Kde experience - Akademy-es 2014
Kde experience - Akademy-es 2014Kde experience - Akademy-es 2014
Kde experience - Akademy-es 2014kdeespana
 

More from kdeespana (20)

Desarrollando software libre sin ser informático akademy es 2017
Desarrollando software libre sin ser informático akademy es 2017Desarrollando software libre sin ser informático akademy es 2017
Desarrollando software libre sin ser informático akademy es 2017
 
Slimbook - Welcome to Freedom - Akademy-es 2017
Slimbook - Welcome to Freedom - Akademy-es 2017Slimbook - Welcome to Freedom - Akademy-es 2017
Slimbook - Welcome to Freedom - Akademy-es 2017
 
valgrind y ASAN Dos formas de instrumentar código en busca de errores
valgrind y ASAN Dos formas de instrumentar código en busca de erroresvalgrind y ASAN Dos formas de instrumentar código en busca de errores
valgrind y ASAN Dos formas de instrumentar código en busca de errores
 
KDE España: Qué es y para que sirve
KDE España: Qué es y para que sirve KDE España: Qué es y para que sirve
KDE España: Qué es y para que sirve
 
Qtquick, interfaces con animaciones fluídas en Qt5
Qtquick, interfaces con animaciones fluídas en Qt5Qtquick, interfaces con animaciones fluídas en Qt5
Qtquick, interfaces con animaciones fluídas en Qt5
 
Descubre plasma 5, el escritorio de la Comunidad KDE
Descubre plasma 5, el escritorio de la Comunidad KDEDescubre plasma 5, el escritorio de la Comunidad KDE
Descubre plasma 5, el escritorio de la Comunidad KDE
 
Clazy, mejorando tu código en tiempo de compilación
Clazy, mejorando tu código en tiempo de compilaciónClazy, mejorando tu código en tiempo de compilación
Clazy, mejorando tu código en tiempo de compilación
 
La potencia del Terminal
La potencia del TerminalLa potencia del Terminal
La potencia del Terminal
 
Novedades de C++11
Novedades de C++11Novedades de C++11
Novedades de C++11
 
10 formas de colaborar akademy es 2016
10 formas de colaborar akademy es 201610 formas de colaborar akademy es 2016
10 formas de colaborar akademy es 2016
 
Kool Desktop Environment
Kool Desktop EnvironmentKool Desktop Environment
Kool Desktop Environment
 
openQA y Open Build System
openQA y Open Build SystemopenQA y Open Build System
openQA y Open Build System
 
Plasma Next
Plasma NextPlasma Next
Plasma Next
 
KDE Frameworks, cuando Qt se nos queda corto
KDE Frameworks, cuando Qt se nos queda corto KDE Frameworks, cuando Qt se nos queda corto
KDE Frameworks, cuando Qt se nos queda corto
 
Qt5 en distintas plataformas
Qt5 en distintas plataformasQt5 en distintas plataformas
Qt5 en distintas plataformas
 
Next gen Desktop Apps
Next gen Desktop AppsNext gen Desktop Apps
Next gen Desktop Apps
 
KDE España: Qué es y para qué sirve
KDE España: Qué es y para qué sirveKDE España: Qué es y para qué sirve
KDE España: Qué es y para qué sirve
 
KDE connect - Akademy-es 2014 por Albert Vaca
KDE connect - Akademy-es 2014 por Albert VacaKDE connect - Akademy-es 2014 por Albert Vaca
KDE connect - Akademy-es 2014 por Albert Vaca
 
Next gen-apps
Next gen-appsNext gen-apps
Next gen-apps
 
Kde experience - Akademy-es 2014
Kde experience - Akademy-es 2014Kde experience - Akademy-es 2014
Kde experience - Akademy-es 2014
 

Introducción a QML

  • 1. Sebastian Kügler <sebas@kde.org>, FrOSCon 2006 Albert Astals Cid <aacid@kde.org> Qt Quick An Introduction to Qt Quick Albert Astals Cid
  • 2. Sebastian Kügler <sebas@kde.org>, FrOSCon 2006 Albert Astals Cid <aacid@kde.org> Qt Quick Who is Albert Astals Cid?  It's me!  Computer Engineer by UPC  Using Qt since 2002  KDE developer since 2003  A TOTAL Qt Quick newbie
  • 3. Sebastian Kügler <sebas@kde.org>, FrOSCon 2006 Albert Astals Cid <aacid@kde.org> Qt Quick A bit of history  Qt development starts in 1990  Qt prototype in 1993  Qt 1.0 is released in 1996  KDE 1.0 is releaed in 1998  Qt adds support for Mac in 2001  Apple introduces the iPhone in 2007  Nokia adquires Trolltech in 2008  December 2009 Qt 4.6 is releaed with Symbian support
  • 4. Sebastian Kügler <sebas@kde.org>, FrOSCon 2006 Albert Astals Cid <aacid@kde.org> Qt Quick What is Qt Quick? Qt Quick is a collection of technologies that are designed to help developers create the kind of intuitive, modern-looking, fluid user interfaces that are increasingly used on mobile phones, media players, set-top boxes and other portable devices. Who let Marketing write that? Qt Quick is the marketing name for QML and some tools around it QML is a declarative language designed to describe the user interface of a program: both what it looks like, and how it behaves.
  • 5. Sebastian Kügler <sebas@kde.org>, FrOSCon 2006 Albert Astals Cid <aacid@kde.org> Qt Quick Declarative? What's that?  You say what you want and not what to do Example 1 – declarative Example 2 – imperative  More or less the same  Example 3  still would be “Ok” with imperative programming  Example 4  Binding properties  Example 5  Would be a huge pain to do in regular imperative programming
  • 6. Sebastian Kügler <sebas@kde.org>, FrOSCon 2006 Albert Astals Cid <aacid@kde.org> Qt Quick Bigger Examples  Flickr  SameGame  PhotoViewer
  • 7. Sebastian Kügler <sebas@kde.org>, FrOSCon 2006 Albert Astals Cid <aacid@kde.org> Qt Quick Benefits  Clear separation between interface and business logic  Designer friendly  CSS/Javascript-like ●Shiny Problems  No common style between applications (Qt Components might fix this 4.x?.8?.9?  Different way of thinking  New/Untested/buggy  Reduced use case
  • 8. Sebastian Kügler <sebas@kde.org>, FrOSCon 2006 Albert Astals Cid <aacid@kde.org> Qt Quick Questions?