Faculty of Information Technology, BUT

Course details

User Interface Programming (in English)

ITUe Acad. year 2018/2019 Winter semester 5 credits

Communication between computers and humans, information throughput of the interfaces, different ways to implement the interfaces, history of user interfaces and development tools, user interfaces of the current operation systems - Windows, iOS, X-Window. and others, event controlled interfaces in detail, tools for application and user interface programming, traditional, object, and component models of the interface, elements of the user interfaces - buttons, listboxes, editboxes, etc., properties of the user interface building blocks, future development in user interface design.

Guarantor

Deputy Guarantor

Language of instruction

English

Completion

Classified Credit (written+oral)

Time span

26 hrs lectures, 12 hrs pc labs, 13 hrs projects

Assessment points

20 half-term test, 25 exercises, 55 projects

Department

Lecturer

Beran Vítězslav, Ing., Ph.D. (DCGM FIT BUT)
Dobeš Petr, Ing. (DCGM FIT BUT)
Herout Adam, prof. Ing., Ph.D. (DCGM FIT BUT)
Kapinus Michal, Ing. (DCGM FIT BUT)
Mlích Jozef, Ing. (DCGM FIT BUT)
Zemčík Pavel, prof. Dr. Ing. (DCGM FIT BUT)

Instructor

Bambušek Daniel, Ing. (DCGM FIT BUT)
Beran Vítězslav, Ing., Ph.D. (DCGM FIT BUT)
Dobeš Petr, Ing. (DCGM FIT BUT)
Chlubna Tomáš, Ing. (DCGM FIT BUT)
Nosko Svetozár, Ing. (DCGM FIT BUT)
Švec Tomáš, Ing. (DCGM FIT BUT)

News

* This course is prepared for incoming Erasmus+ students only, and it is instructed in English.
* This course will be open if a certain/sure minimum of enrolled students is at least five students.


The GTK lecture will take place on Wednesday 14. 11. 2018 12-14 at D105.

Subject specific learning outcomes and competences

The students will learn and understand the importance of user interfaces for efficient computer usage. They will learn basic principles and stucture of the application and user interface development tools; get acquainted with the history of such development tools and the probable future development. They will experience the user interface development on a series of examples, learn about the common building blocks of the user interfaces, and get familiar with properties of the building blocks in Windows, and understand the differences in X-Window or iOS implementations. They will also get the important skills needed in development of applications.

Generic learning outcomes and competences

The students will learn to search team partners and to work in team. They will also improve their skills in development tools usage and also in practical C/C++ programming.

Learning objectives

To learn and understand the importance of user interfaces for efficient computer usage. To learn basic principles and stucture of the application and user interface development tools. To get acquainted with the history of such development tools and the probable future development. To experience the user interface development on a series of examples. To learn about the common building blocks of the user interfaces. To get familiar with properties of the building blocks in Windows, and understand the differences in X-Window or iOS implementations. To get the important skills needed in development of applications for the real-life and student projects.

Prerequisite kwnowledge and skills

Basic knowledge of C/C++ programming.

Study literature

  • Dix, A., Finlay, J., Abowd, G., D.,  Beale, R.: Human-Computer Interaction. Prentice Hall, ISBN 0130461091, 2004.
  • Steve Krug: Don't Make Me Think, Revisited: A Common Sense Approach to Web Usability. New Riders, ISBN 978-0321965516, 2014.
  • Yu-kai Chou: Actionable Gamification - Beyond Points, Badges, and Leaderboards. Octalysis Media, ISBN 978-1511744041, 2015.
  • Rubin, J., Chisnell, D., Spool, J.: Handbook of Usability Testing: How to Plan, Design, and Conduct Effective Tests. Wiley, ISBN 978-0470185483, 2008.

Fundamental literature

  • Preece J.: Human-Computer Interaction. Addison-Wesley, Wokingham, ISBN 0-201-62769-8, 1995.
  • Lee Zhi Eng: Hands-On GUI Programming with C++ and Qt5: Build stunning cross-platform applications and widgets with the most powerful GUI framework. Packt Publishing, ISBN 978-1788397827, 2018.
  • Sheridan Yuen: Mastering Windows Presentation Foundation: Master the art of building modern desktop applications on Windows. Packt Publishing, ISBN 978-1785883002, 2017.

Syllabus of lectures

  1. Introduction to course and GUI (organizationintroduction)
  2. GUI design and testing (materials)
  3. Principles, applications, inputs and dialogs in Windows (Principles,DialogsInputsDialog demo C++Builder5/6)
  4. Advanced tools and libraries for Windows (WPF and .NET)
  5. Qt (presentationexamples)
  6. QML (presentationdemonstration)
  7. Web interfaces (presentation)
  8. GUI on iOS (presentation)
  9. GTK (Carlos Soriano Sanchez, Red Hat, in english, presentationdemos)
  10. Mobile platforms (presentation)
  11. Web interfaces - advanced technologies (presentation)
  12. Gamification (presentation)
  13. Final test, Conclusion
  14. The lecture order might be updated during the term.

Syllabus - others, projects and individual work of students

  • individual project assignment - one project for the whole duration of the course

Progress assessment

  • Final test - up to 20 points
  • Evaluated computer laboratories - up to 25 points
  • Individual projects - up to 55 points

Controlled instruction

The monitored activities include individual project, mid-term test and evaluated computer laboratories. The mid-term test does not have correction term.

Exam prerequisites

successful project

Schedule

DayTypeWeeksRoomStartEndLect.grpGroupsInfo
Frilecturelectures A112 12:0013:50 INTE
Fricomp.lablectures N204 N205 14:0015:50 INTE
Back to top