Skip to content

Latest commit

 

History

History
102 lines (83 loc) · 3.3 KB

betaREADME.md

File metadata and controls

102 lines (83 loc) · 3.3 KB

Qt MOOC BETA material

Here is a brief summary of the topics of the planned beta course.

Introduction - Introduction to the course

  • Everything required for starting the course
  • Workspace setup
  • Documentation
  • Help channels
  • Workflow introduction
  • Course tools introduction

Part 1 - Qt Essentials

  • Introductory topics:
  1. Creating and debugging Qt projects
    Hello world!
  2. String handling and value types
    Basic string manipulation (min: QString + QChar + QCodec, creating, concatenation + light-weight use with QLatin1String
  3. QObject - Subclassing
    Custom QObjects with properties, enums
  4. Parent-Child relationship
    Qt memory management with object trees
  5. Object Communicating: Signals and Slots
    Observer pattern: Object communication with signals and slots
  • Short basic assignments that account for 50%ish of the assignments of the week
  • One bigger assignment completed step by step trough implementing the required topics of learning from Week 1 resulting in a complete application

Part 2 - Qt Quick UI:s

  • User Interface creation using Qt Quick:
  1. QML Hello World
    Hello world v2! To be able to develop, build and run a simple QML application
  2. Rectangle, Image, BorderImage, Text
    Basic QML items
  3. Key Handling
    Controlling focus and handling key presses
  4. Mouse Handling
    Mouse handling with MouseArea
  5. Handlers
    Handling multiple touch events in a single item
  6. Positioners
    Grouping items with positioners
  7. Anchors
    UI scaling with anchors
  8. Components: Properties, Signals
    Creating components and component interfaces
  9. Re-usable Components
    How to create good, re-usable components
  10. Qt Quick Controls
    The Qt Quick Controls module
  • Short basic assignments that account for 50%ish of the assignments of the week
  • TBA

Part 3 - Data-centric Apps

  • Manipulating and presenting data using QML:
  1. List model manipulation
    Basic QML model and JS manipulation
  2. ListView vs TreeView
    List vs Tree
  3. Standard Item Model
    Model/View framework basics
  4. Basic Delegate
    TBA
  5. Grid vs TableView
    Use Cases
  6. Dynamic Delegate - Loader
    Good delegate implementation
  • Short basic assignments that account for 50%ish of the assignments of the week
  • TBA

Part 4 - C++ and QML

  • Combining C++ with QML:
  1. Context Properties
    How to communicate between C++ and QML
  2. Context Objects
    TBA
  3. Calling QML from C++ and vice versa
    TBA
  4. Registration
    TBA
  5. QML Plugins
    Right way of doing registration
  6. Custom QObjects
    Deriving good types for QML

Here are our plans and outlines for the Qt Mooc materials.

This is the original material outline repository which contains the work in progress that is the Qt Mooc material.
These pages are used for content creation and do not in all cases represent a finished product. In most cases they represent a construction site where we recommend you take the stairs, instead of the elevator. The elevator will be implemented in 2020. This is also the repository where the completed course exercises can be found.

https://github.com/TestMyQt/material-outline/wiki