Tero Karvinen - Articles - Downloads - Courses - Contact

Table of Contents

Mobile Linux Development with QT

2011-01-14: Thanks for the course! Student projects published.

2010-12-17: Course is already an audience success! Amazing 41 students have enrolled this far. We’ll have a pre-exam (Linux and programming) on the beginning of the course, so the best ones will get a place. Welcome!

QT is a multiplatform toolkit for C++ programming on Mac OSX, Linux, Windows, Symbian and Maemo. It’s being used in Google Earth, Opera and KDE desktop.

Course description: http://www.haaga-helia.fi/fi/courses/tf/itp8tf500.html

Course was an audience success in 2010. Over fourty students enrolled the course, but we could only fit half of them in the course. 19 students returned a project and passed the course. Feedback was positive.

Thanks to Symbio, Timo, Juha-Matti, HH Linux Club and Nur for making this course possible.

Timetable

Pre-exam in Moodle.

2011 w1 and w2 Enroll in Winha when it opens, course code itp8tf500-2.

Class h5013. New 2011 QT slides (All QT slides and examples)

2011w1
2011-01-03 Mon  Pre-exam. QT overview. Development environment, Hello World
2011-01-04 Tue  GUI programming with Qt Quick / QML
2011-01-05 Wed  State of Mobile Linux
2011-01-06 Thu  (loppiainen, Epiphany, no teaching)
2011-01-07 Fri  Basics of Qt C++, integration with QML

w2
2011-01-10 Mon  Localization and unit testing
2011-01-11 Tue  (Individual work on project)
2011-01-12 Wed  (Individual work on project)
2011-01-13 Thu  (Individual work on project)
2011-01-14 Fri  Project presentations

Lab h5013 is available for project work for the whole work week Monday to Friday.

Mini programs

Game using main loop - click the box

Project

Individual project on QT. Project goal is to show that you can use the skills and techniques learned in the course. Deliver one web page with link to source tarball and a 5 minute presentation.

Link to ready project homepage should be in Moodle. Project presentations on w2 Fri 08:15.

Symbio will be present on Friday to view the project presentations.

Project Deliverables

  1. Project homepage
    1. Single page, html
    2. Download link to source code (tar.gz or zip)
    3. Source code tarball should contain all documentation
    4. Basic info: Name, short description, long description, status (alpha, beta, production)
    5. Screenshots
    6. Hacking: how the program works
    7. Link to course homepage http://terokarvinen.com/qt
    8. Return a link to your project homepage to Moodle
    9. License: if you want, use a Free license, such as “GNU General Public License, version 2 or later”
  2. Source code
    1. Must compile on Ubuntu 10.04 + qtcreator from repositories (extra packages can be considered)
    2. make clean
    3. English: variable names, comments...
  3. Presentation
    1. 5 minutes
    2. Program name and your name
    3. Show program screenshots, overview
    4. How it works
    5. What did you learn from it
    6. If you demonstrate the actual program, you must have a compiled binary that works on Ubuntu 10.04 amd64 - or have it compiled and ready on your laptop, that you have tested to work with this labs projector.
    7. Have the program running on your own computer to show it outside the presentation too
    8. Prepare while the previous presenter is speaking

Tips for Project

Success in small steps: create a simple program first. Once it’s good, create another if you still have time. A simple program will help you pass the course, a great one will get you a great grade.

You can publish where you want, like your own homepage. Free web space for this project in http://sulautetut.fi.

Start early - maybe today.

Good luck!

Published Student Projects

Learn words. Oppia Sanoja. n900 deb. Appears useful. QML+C++. Audience Vote Winner http://rybakoff.name/prog/learn_words.html

Driving diary. qml. Views. Database. ListView. Complete program. Pick http://myy.haaga-helia.fi/~a1003597/qt/

Memory game. QML. Flickr integration. Pick http://myy.haaga-helia.fi/~a0903049/QTproject/

2go.fi. C++. n900 deb. Has logo on n900. Web+database+c++ integration. Pick http://www.2go.fi/about/

LogicPorts. Innovative game. QML+js Pick http://myy.haaga-helia.fi/~a0803128/qt/

NavSlight. GPS integration, Google Maps. QML+C++ http://myy.haaga-helia.fi/~a0900378/NavSlight.html

Graffiti. Drawing program. QML. http://myy.haaga-helia.fi/~a0903093/graffiti

QBreakwall. C++. Animation. Playable. http://koti.mbnet.fi/valta/qt/

Adventure game, qml. States etc. http://myy.haaga-helia.fi/~a0802252/qt/

RSS reader. QML. http://myy.haaga-helia.fi/~a0800142/qt/

Calculator. QML+js eval(). http://myy.haaga-helia.fi/~a0903044/qt-project/calculator.htm

Timer, js+qml http://www.tornqvist.fi/itp8tf500/

Play shoutcast URL. http://myy.haaga-helia.fi/~a0703001/qt/

Puzzle. QML+JS. Not yet playable. Pieces movable. http://myy.haaga-helia.fi/~a1002203/game_page.htm

Qspace Invaders. Not yet playable. Collision, particle effect. http://myy.haaga-helia.fi/~a0804977/qt/

Published student projects of 2010

Feedback

Give some feedback!

Feedback Summary on Mobile Linux Development with QT itp8tf500-1

Feedback Summary on Mobile Linux Development with QT 2011 itp8tf500-2

Old course pages

First instance of the course: Mobile Linux Development with QT 1 on Spring 2010

Finnish Summary - Lyhyesti Suomeksi

Tämä QT-kurssi on Haaga-Helian ja Symbion yhteinen projekti. QT on monialustainen kirjasto C++-ohjelmointiin. QT-ohjelmille sopivia alustoja ovat Linux, Windows, Macintosh OSX, Symbian (esim Nokia S60), Maemo (esim. n900) ja Meego (esim Aava). Muutama muukin kännykkä tukee osittain QT:ta. QT:ta käytetään esimerkiksi Google Earthissa, Opera-weppiselaimessa ja KDE-työpöydällä.

Käyttöliittymä syntyy onnistuu helpoimmin QML-kielellä. Näin vain haastavammat osat tarvitsee ohjelmoida C++ -kielellä.

Kurssi järjestetään jo toisen kerran.

Last modified: 2011-01-14. Permanent url: http://www.iki.fi/karvinen/mobile_linux_development_with_qt.html

Tero Karvinen www.iki.fi/karvinen - Top - Validate HTML - Validate CSS