Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Learning
  3. Qt Certification
  4. Curriculum Block for QT Essentials
Forum Updated to NodeBB v4.3 + New Features

Curriculum Block for QT Essentials

Scheduled Pinned Locked Moved Qt Certification
17 Posts 6 Posters 11.5k Views 2 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • A Offline
    A Offline
    AcerExtensa
    wrote on last edited by
    #2

    Have you at least googled for learning materials? There is also a lot information on this forum!

    "Training Materials":http://qt.digia.com/Product/Learning/Education/elearning/online-training/
    "Qt in Education Course Materials":http://qt.digia.com/Product/Learning/Education/course-materials/

    God is Real unless explicitly declared as Integer.

    1 Reply Last reply
    0
    • M Offline
      M Offline
      Mario84
      wrote on last edited by
      #3

      If I was too lazy to learn, I wouldn't take the exam and wouldn't ask for the curriculum!

      I know the learning materials, that's not the problem. What I need to know, is which topics are relevant for the exam. I just want to know what to learn (and when I scheduled the exam, this list was online at qt-project.org)

      1 Reply Last reply
      0
      • M Offline
        M Offline
        mlong
        wrote on last edited by
        #4

        bq. Or you are too lazy to learn?

        This condescending tone is uncalled for. Mr.Universe was asking a very specific and reasonable question, as the old certification curriculum pages that were posted on the qt.nokia.com site are no longer available. I had tried, myself, to search for them to offer up a cached version to him, but had no luck.

        Software Engineer
        My views and opinions do not necessarily reflect those of anyone -- living or dead, real or fictional -- in this universe or any other similar multiverse node. Void where prohibited. Your mileage may vary. Caveat emptor.

        1 Reply Last reply
        0
        • M Offline
          M Offline
          mlong
          wrote on last edited by
          #5

          Mr.Universe: I can't find the official curriculum list, but "this thread":/forums/viewthread/12675 can give some insight into topics and items to be comfortable with.

          Software Engineer
          My views and opinions do not necessarily reflect those of anyone -- living or dead, real or fictional -- in this universe or any other similar multiverse node. Void where prohibited. Your mileage may vary. Caveat emptor.

          1 Reply Last reply
          0
          • A Offline
            A Offline
            AcerExtensa
            wrote on last edited by
            #6

            Sorry, was thinking you are looking for old examples from peoples who has already done this exam. Just for study this pages and got through exam like peoples do with CCNA exams. My bad. Don't be angry to me :)

            God is Real unless explicitly declared as Integer.

            1 Reply Last reply
            0
            • M Offline
              M Offline
              Mario84
              wrote on last edited by
              #7

              thanks mlong,
              I also tried to get the pages via google cache or archive.org, but couldn't find it.
              The thread you posted isn't exactly what I was looking for, but it looks like a suitable alternative...
              Can you tell me wether the links posted there by Rahul Das cover all topics that are part of the essentials-exam? (From my memory I'd guess they do)

              1 Reply Last reply
              0
              • G Offline
                G Offline
                giesbert
                wrote on last edited by
                #8

                Hi Mr. Universe,

                There are even more threads with topics, like "this one":http://qt-project.org/forums/viewthread/20507/

                Aditionally, here is the link to the "certification page":http://qt.digia.com/product/learning/certification/ . Currently it only says: we are collecting data and will post it soon....

                Nokia Certified Qt Specialist.
                Programming Is Like Sex: One mistake and you have to support it for the rest of your life. (Michael Sinz)

                1 Reply Last reply
                0
                • M Offline
                  M Offline
                  Mario84
                  wrote on last edited by
                  #9

                  thanks gerolf, I already knew the thread you posted, but its for the core c++ exam, not for the essentials. But I'll try to contact digia through the certification page, perhaps they can give me a copy...

                  1 Reply Last reply
                  0
                  • M Offline
                    M Offline
                    mlong
                    wrote on last edited by
                    #10

                    Mr.Universe,

                    Those topics, as I recall, seem to be pretty comprehensive. The most important part, though, is that you're already comfortable with Qt development in general. The purpose of certification is to indicate that you're genuinely knowledgeable in the area, so just make sure that you're comfortable with those general types of topics. If you're comfortable with the given topics in that list, then you've probably done enough development with Qt to handle any other related topics which may or may not be listed there.

                    Software Engineer
                    My views and opinions do not necessarily reflect those of anyone -- living or dead, real or fictional -- in this universe or any other similar multiverse node. Void where prohibited. Your mileage may vary. Caveat emptor.

                    1 Reply Last reply
                    0
                    • M Offline
                      M Offline
                      Mario84
                      wrote on last edited by
                      #11

                      Thanks mlong,
                      I guess you're right. I am working with Qt every day in my job, so I'm sure I can answer most of the questions without problems, but I remember some topics in the curriculum I never came in touch with during my work... But from my memory I think the list in the other thread covers those topics...
                      I also sent an e-mail to digia, if they can send me a copy of the old page, if they do, I'll post it here, if not, I'll probably pass the exam anyway!

                      1 Reply Last reply
                      0
                      • M Offline
                        M Offline
                        mlong
                        wrote on last edited by
                        #12

                        Good luck with your exam! Looking forward to seeing a certification badge below your name soon!

                        Software Engineer
                        My views and opinions do not necessarily reflect those of anyone -- living or dead, real or fictional -- in this universe or any other similar multiverse node. Void where prohibited. Your mileage may vary. Caveat emptor.

                        1 Reply Last reply
                        0
                        • B Offline
                          B Offline
                          broadpeak
                          wrote on last edited by
                          #13

                          Recommended books and chapters for Essentials:

                          @
                          C++ GUI Programming with Qt 4, 1st and 2nd Edition, by Jasmin Blanchette, Mark Summerfield. The 1st Edition is also available online.
                          Part I Basic Qt
                          Part II Intermediate Qt
                          Section 6: Layout Management
                          Section 7: Event Processing
                          Section 11: Container Classes
                          Section 12: Input/Output
                          Section 16: Providing Online Help
                          Section 17: Internationalization

                          Foundations of Qt Development, by Johan Thelin
                          Part 1: Getting to Know Qt
                          Part 2: The Qt Building Blocks
                          Chapter 6: Creating Widgets
                          Chapter 7: Drawing and Printing (excluding Graphics View)
                          Chapter 8: Files, Streams, XML (XML in basics only)
                          Chapter 9: Providing Help
                          Chapter 10: Internationalization and Localization
                          Chapter 15: Building Qt Projects, basic use of qmake, cmake is not in scope

                          An Introduction to Design Patterns in C++ with Qt 4, by Alan Ezust, Paul Ezust
                          Part I: Introduction to C++ and Qt 4
                          Section 3: Introduction to Qt
                          Section 4: Lists
                          Part II: High-Level Programming
                          Section 9: QObject
                          Section 10: Generics and Containers
                          Section 11: Qt GUI Widgets

                          The Book of Qt 4: The Art of Building Qt Applications by Daniel Molkentin
                          Chapter 1: Basics, Tools, and First Code
                          Chapter 2: The Tools Needed to Create Dialogs
                          Chapter 3: GUI Design Using the Qt Designer
                          Chapter 4: Developing a GUI Application Based on a Main Window
                          Chapter 5: Laying Out Widgets (only Basics)
                          Chapter 6: Dialogs (only Basics)
                          Chapter 7: Events, Drag and Drop, and the Clipboard (only Events)
                          Chapter 10: The Graphics Library "Arthur" (only Basics)
                          Chapter 11 Input/Output Interfaces
                          @

                          1 Reply Last reply
                          0
                          • B Offline
                            B Offline
                            broadpeak
                            wrote on last edited by
                            #14

                            Topics:

                            Qt Essentials Curriculum Block

                            Version 1.1

                            Fundamentals of Qt programming

                            UI and cross-platform libraries

                            • Learn the difference between a native APIs and cross platform APIs
                            • Know the difference between toolkits and frameworks
                            • Understanding the reasoning for portable software

                            First development steps

                            • Learn how to write a simple Qt application
                            • Understand the need for layout management
                            • Be able to find answers to questions about Qt
                            • Learn how to use qmake

                            QObject basics

                            • Understand the fundamentals of QObject
                            • Be able to use Qt properties and other core features provided by the Qt's meta-type system

                            Memory management

                            • Understand where and when Qt deletes objects
                            • Know when a developer is responsible for providing code deleting allocated objects
                            • Understand when heap and stack allocation are used in Qt

                            Edit and build

                            • Be able to create and manage a Qt project via *.pro files
                            • Know key facts about the Qt build process and the tools used (qmake, moc, Makefiles)
                            • Learn how to use Qt with Qt Creator and supported IDEs

                            Signals and slots

                            • Learn the advantages of signals/slots
                            • Understand the concept of signal/slots
                            • Learn how to connect signals to slots
                            • Be able to use and define your own signals/slots

                            Overview of modules and classes

                            • Be able to list major Qt modules
                            • Understand the concept and functionality of a Qt module
                            • Understand the major APIs provided by different Qt modules

                            Some thoughts about portability

                            • Understand the advantages of portable software
                            • Know the concepts of making software more portable
                            • Know the limitations of Qt's portability
                            • Understand how to make your project portable

                            Developing an application

                            Events

                            • Understand the concept of events
                            • Understand the difference between events and signal/slots
                            • Be able to implement event handling
                            • Understand the role of events in painting
                            • Understand the role of event filters and be able to use them
                            • Understand the concept of event propagation
                            • Learn how to post/send events
                            • Be able to create/send/handle custom events

                            Basic drawing

                            • Learn how to draw on widgets
                            • Understand the difference between QPixmap, QImage and QPicture
                            • Be able to load an image from a file

                            Main windows and actions

                            • Know how to use QMainWindow
                            • Know how to implement a menu
                            • Be able to use tool bars and status bars
                            • Understand the concept of Actions
                            • Know how to use QVariant to store data in Actions
                            • Understand the usage of scrolled areas

                            Settings

                            • Know how to store application settings in different formats with the help of QSettings
                            • Be aware of and be able to control the storage location of settings on different platforms

                            Qt debugging aids

                            • Be able to write debug messages
                            • Understand the usage of asserts
                            • Be able to use GDB with Qt
                            • Understand why event filters can be helpful for debugging

                            Writing your own widgets

                            • Know when it is better to write a custom widget
                            • Be able to re-implement event handler methods
                            • Understand when to use signals
                            • Be able to decide which internal variables should be made accessible
                            • Understand the importance of clean constructors
                            1 Reply Last reply
                            0
                            • B Offline
                              B Offline
                              broadpeak
                              wrote on last edited by
                              #15

                              Topics continued:

                              Using dialogs and handling UI Layout

                              Geometry management

                              • Learn how to manipulate the geometry of a widget
                              • Understand the concepts behind a layout manager in Qt
                              • Know and understand the various layout managers
                              • Learn how to use widgets with layout a managers
                              • Be able to develop own dialog with layouts

                              Standard dialogs

                              • Know the various standard dialog types
                              • Understand the usage of standard dialogs
                              • Be able to use these dialogs
                              • Understand how processing of events works with QProgressDialog
                              • Understand the structure of wizards
                              • Be able to create your own wizards with pages

                              Creating your own (custom) dialogs

                              • Learn how to subclass a QDialog
                              • Understand the usage of buttons in a dialog
                              • Be able to launch dialogs (not-) modal
                              • Know the deletion options for dialogs
                              • Be able to create your own dialogs with user interactions

                              Using Qt Designer and Qt Creator for UI development

                              • Understand how designer can help in creating widgets
                              • Understand the concept of designer files
                              • Be able to load designer code inside your code
                              • Be able to connect designer elements with business functions
                              • Know how to manage custom widgets in designer
                              • Be able to load designer files in runtime
                              • Be able to write a dialog using the designer tool

                              Strings, Resources and Help

                              Strings, URLs and regular expressions

                              • Learn how to create strings with QString
                              • Know how to extract data from strings
                              • Know how to test strings
                              • Know useful utility functions in QString
                              • Know the basics about Qt support of translation of strings into other languages
                              • Understand QUrl and the components of an URL
                              • Learn how to use QRegExp for regular expression and shell globing

                              Validating Input

                              • Be able to set input masks on line edits
                              • Understand the format for input masks
                              • Know that QCompleter offer pop-up completion

                              Resources

                              • Understand the advantage of resource files over ordinary files
                              • Learn how to add resource files to a project
                              • Know the resource XML file structure
                              • Be able to access resources from the application
                              • Know that resource files can be localized
                              • Learn how to load a resource file dynamically

                              Help system

                              • Know the different possibilities to provide help
                              • Understand the concept of the system tray icon
                              • Learn how to support dynamic help

                              Container and other non-GUI classes

                              Container classes

                              • Understand the concept of containers
                              • Know the difference between Java and STL styled APIs
                              • Know the different container types
                              • Be able to identify the best suited container type for your needs
                              • Know the requirements for a type to be storable in a container
                              • Be able to iterate of containers
                              • Know the difference standard and mutable iterators
                              • Be able to use the for each keyword on containers
                              • Know the utility container algorithms offered by Qt
                              • Understand the concept of implicit shared classes

                              QVariant

                              • Understand the central role of QVariant for many other container classes
                              • Know which types are supported by default and be able to store new data types

                              QSignalMapper

                              • Understand the concept of signal mapper
                              • Be able to use QSignalMapper

                              QTimer

                              • Understand the concept of QTimer
                              • Be able to use QTimer
                              • Understand the different operation modes of timers

                              Generic IO, files and printing

                              • Understand the usage of QFile
                              • Be able to identify the difference between QDataStream and QTextStream
                              • Know the related classes for file and directory access
                              • Be able to read/write from/to files using Qt
                              • Understand the issue of text encoding and files
                              • Understand when better to use QDataStream instead of QTextStream
                              • Be able to print a widget or text document in PDF format using QPrinter
                              1 Reply Last reply
                              0
                              • M Offline
                                M Offline
                                mlong
                                wrote on last edited by
                                #16

                                Thanks for the info, broadpeak! I touched up the formatting a bit in your posts. Hope you don't mind.

                                Software Engineer
                                My views and opinions do not necessarily reflect those of anyone -- living or dead, real or fictional -- in this universe or any other similar multiverse node. Void where prohibited. Your mileage may vary. Caveat emptor.

                                1 Reply Last reply
                                0
                                • M Offline
                                  M Offline
                                  Macro
                                  wrote on last edited by
                                  #17

                                  Thanks for the Info broadpeak & mlong... :)

                                  1 Reply Last reply
                                  0

                                  • Login

                                  • Login or register to search.
                                  • First post
                                    Last post
                                  0
                                  • Categories
                                  • Recent
                                  • Tags
                                  • Popular
                                  • Users
                                  • Groups
                                  • Search
                                  • Get Qt Extensions
                                  • Unsolved