@MihiCherub ගෙ පයිතන් ත්රෙඩ් එකත් එක්ක පයිතන් ගොඩ දාගන්න ගමන් Qt ටිකකුත් ගොඩ දාගන්න කියලා බැලුවේ. C++ මම දන්න නිසා ඒක එච්චර අමාරු වෙන එකක් නෑ කියලා හිතනවා.
මම Qt සයිට් එකට (https://www.qt.io/?hsLang=en) ගිහිල්ලා ඒකෙ තියෙන සිලබස් එකක් ( Qt වලට exams තියෙනවා) අරගෙන තමයි මේ වගේ ප්ලෑන් එකක් හදාගත්තෙ.
දැන් හිතන් ඉන්නෙ මේ දෙකම කරලා PyQt5 එක ගොඩදාගන්න.
@MihiCherub ගෙ පයිතන් ත්රෙඩ් එක
https://elakiri.com/threads/python-bootcamp-100-days-of-code.1994705/
#Week 1
1. QT SW PROJECTS
Know how to organize the source tree of a large project
Know that Qt can be used with other libraries like STL, boost, ACE
#Week 2
1.1 QT TEST
Know how to write and compile unit tests
Test macros
Asynchronous tests
Auto tests
#Week 3
1.2 QT LIBRARIES AND PLUGINS
Know how to create custom libraries
Understand private implementation pattern and how to use it for binary compatibility
Know how to write Qt plugins using low- and high-level APIs
Know how to deploy and load/unload libraries and plugins using QLibrary and QPluginLoader
#Week 4
2 WIDGETS AND PAINTING
Concept of widget
Top-level widgets
Window and widget flags and attributes (no need to remember each flag or attribute by heart)
#Week 5
2.1 DIALOGS
Various standard dialog types
The usage of standard dialogs
Event processing with QProgressDialog
Learn how to subclass a QDialog
Be able to launch dialogs (not-) modal
Know the deletion options for dialogs
Be able to set input masks on line edits
Understand the format for input masks
Know that QCompleter offer popup completion
#Week 6
2.2 WRITING CODE FOR EFFICIENT INTERNATIONALIZATION
Know how a text constant containing non-Latin characters can be read into a QString
Know how to wrap strings which need to be translated
Be able to extract strings to be translated from a Qt project
Know how to take the encoding of the source file into account
Know how to use Qt Linguist to translate extracted strings
Be able to save the translated strings in a .qm file
Know how to find all string constants which are not marked for translation
Know how to use locale-specific icons
Know how dates and currencies can be translated
#Week 7
2.3 CUSTOM WIDGETS
Know how custom painted widgets can be made style aware
Be able to design custom widgets in different ways: aggregation, sub-classing, custom painting
Subclass QWidget, subclass QxxxWidget, aggregate widgets
Know when it is better to write a custom widget
Be able to develop a custom painted widget using QPainter (OpenGL language itself is not required)
#Week 8
2.4 PAINTING
Know QPainter paint operations and their performance in the raster paint engine
Understand the difference between QWindow and QWidget painting
Backing store
Paint devices
#Week 9
2.5 STYLING
Know how widgets are styled
Know how to use a style sheet
#Week 10
3 MODEL/VIEW FRAMEWORK
Know what the purpose of model/view programming is
Know how a view communicates with the model
Know what widgets Qt provides to display model data
#Week 11
3.1 MODELS
Be able to use Qt's predefined models
Know why a view calls a model several times to render one single cell
Know how to locate a specific item in a model
Be able to write custom models
Understand different ways to optimize custom model usage (simplified data structure, lazy loading)
Know how to work with a selection
Know how the view recognizes the changes that have been made to the model's data
Drag and drop
Sorting and filtering
Proxy models
#Week 12
3.2 VIEWS
Essential view classes
Know what the purpose of a delegate is and how it can be used
Know when to use roles and delegates
Be able to write custom delegates
#Week 13
4 PROCESSES AND THREADS
4.1 INTER-PROCESS COMMUNICATION
Process creation and startup
Using standard input, output, and error
Shared memory
Qt DBus basics
#Week 14
4.2 MULTITASKING
Thread affinity
Thread creation, interruption, and cleanup
Event handling in threads
Inter-thread communication
Thread storage
Mutual exclusion and synchronization
Re-entrant and thread safe classes
#Week 15
4.3 RUNNABLES
Understand the concept of a thread pool
Queuing and executing runnables
Thread reserve and release
#Week 16
4.4 QT CONCURRENT
Concept of the future
Mapping and filtering
Result reduction
#Week 17
5 NETWORKING
Sockets and secure sockets
Web sockets
Understand network access manager
Know how to make network requests and handle the replies properly
Know how Qt manages cookies
Be able to set network proxies
#Week 18
5.1 QT WEBENGINE
WebEngine essential C++ classes
QWebEngineView
Asynchronous functions
Exposing QObjects to the script engine
#Week 19
6 DATA I/O
6.1 DATABASES
Database connection
Know how to make queries and transactions efficiently
Know how to use database model classes
Principles of database drivers
6.2 XML
XML stream readers and writers
Know how to use XQuery and XPath – the syntax is not required in the exam
XML schema
6.3 JSON
JSON documents
Parsing JSON
Generating JSON data
#Week 20
7 MISCELLANEOUS TOPICS
7.1 DESKTOP INTEGRATION
Be able to use the QDesktopWidget
Know how to put an icon into the system tray
Know how to open an URL using the default browser
7.2 HELP SYSTEM
Adding "Help" functionality to widgets
Dynamic help
QTextBrowser as a help viewer
Know the different possibilities to provide help
Understand the concept of the system tray icon
Learn how to support dynamic help
------ Post added on Sep 11, 2021 at 9:18 AM
මම Qt සයිට් එකට (https://www.qt.io/?hsLang=en) ගිහිල්ලා ඒකෙ තියෙන සිලබස් එකක් ( Qt වලට exams තියෙනවා) අරගෙන තමයි මේ වගේ ප්ලෑන් එකක් හදාගත්තෙ.
දැන් හිතන් ඉන්නෙ මේ දෙකම කරලා PyQt5 එක ගොඩදාගන්න.
@MihiCherub ගෙ පයිතන් ත්රෙඩ් එක
https://elakiri.com/threads/python-bootcamp-100-days-of-code.1994705/
#Week 1
1. QT SW PROJECTS
Know how to organize the source tree of a large project
Know that Qt can be used with other libraries like STL, boost, ACE
#Week 2
1.1 QT TEST
Know how to write and compile unit tests
Test macros
Asynchronous tests
Auto tests
#Week 3
1.2 QT LIBRARIES AND PLUGINS
Know how to create custom libraries
Understand private implementation pattern and how to use it for binary compatibility
Know how to write Qt plugins using low- and high-level APIs
Know how to deploy and load/unload libraries and plugins using QLibrary and QPluginLoader
#Week 4
2 WIDGETS AND PAINTING
Concept of widget
Top-level widgets
Window and widget flags and attributes (no need to remember each flag or attribute by heart)
#Week 5
2.1 DIALOGS
Various standard dialog types
The usage of standard dialogs
Event processing with QProgressDialog
Learn how to subclass a QDialog
Be able to launch dialogs (not-) modal
Know the deletion options for dialogs
Be able to set input masks on line edits
Understand the format for input masks
Know that QCompleter offer popup completion
#Week 6
2.2 WRITING CODE FOR EFFICIENT INTERNATIONALIZATION
Know how a text constant containing non-Latin characters can be read into a QString
Know how to wrap strings which need to be translated
Be able to extract strings to be translated from a Qt project
Know how to take the encoding of the source file into account
Know how to use Qt Linguist to translate extracted strings
Be able to save the translated strings in a .qm file
Know how to find all string constants which are not marked for translation
Know how to use locale-specific icons
Know how dates and currencies can be translated
#Week 7
2.3 CUSTOM WIDGETS
Know how custom painted widgets can be made style aware
Be able to design custom widgets in different ways: aggregation, sub-classing, custom painting
Subclass QWidget, subclass QxxxWidget, aggregate widgets
Know when it is better to write a custom widget
Be able to develop a custom painted widget using QPainter (OpenGL language itself is not required)
#Week 8
2.4 PAINTING
Know QPainter paint operations and their performance in the raster paint engine
Understand the difference between QWindow and QWidget painting
Backing store
Paint devices
#Week 9
2.5 STYLING
Know how widgets are styled
Know how to use a style sheet
#Week 10
3 MODEL/VIEW FRAMEWORK
Know what the purpose of model/view programming is
Know how a view communicates with the model
Know what widgets Qt provides to display model data
#Week 11
3.1 MODELS
Be able to use Qt's predefined models
Know why a view calls a model several times to render one single cell
Know how to locate a specific item in a model
Be able to write custom models
Understand different ways to optimize custom model usage (simplified data structure, lazy loading)
Know how to work with a selection
Know how the view recognizes the changes that have been made to the model's data
Drag and drop
Sorting and filtering
Proxy models
#Week 12
3.2 VIEWS
Essential view classes
Know what the purpose of a delegate is and how it can be used
Know when to use roles and delegates
Be able to write custom delegates
#Week 13
4 PROCESSES AND THREADS
4.1 INTER-PROCESS COMMUNICATION
Process creation and startup
Using standard input, output, and error
Shared memory
Qt DBus basics
#Week 14
4.2 MULTITASKING
Thread affinity
Thread creation, interruption, and cleanup
Event handling in threads
Inter-thread communication
Thread storage
Mutual exclusion and synchronization
Re-entrant and thread safe classes
#Week 15
4.3 RUNNABLES
Understand the concept of a thread pool
Queuing and executing runnables
Thread reserve and release
#Week 16
4.4 QT CONCURRENT
Concept of the future
Mapping and filtering
Result reduction
#Week 17
5 NETWORKING
Sockets and secure sockets
Web sockets
Understand network access manager
Know how to make network requests and handle the replies properly
Know how Qt manages cookies
Be able to set network proxies
#Week 18
5.1 QT WEBENGINE
WebEngine essential C++ classes
QWebEngineView
Asynchronous functions
Exposing QObjects to the script engine
#Week 19
6 DATA I/O
6.1 DATABASES
Database connection
Know how to make queries and transactions efficiently
Know how to use database model classes
Principles of database drivers
6.2 XML
XML stream readers and writers
Know how to use XQuery and XPath – the syntax is not required in the exam
XML schema
6.3 JSON
JSON documents
Parsing JSON
Generating JSON data
#Week 20
7 MISCELLANEOUS TOPICS
7.1 DESKTOP INTEGRATION
Be able to use the QDesktopWidget
Know how to put an icon into the system tray
Know how to open an URL using the default browser
7.2 HELP SYSTEM
Adding "Help" functionality to widgets
Dynamic help
QTextBrowser as a help viewer
Know the different possibilities to provide help
Understand the concept of the system tray icon
Learn how to support dynamic help
------ Post added on Sep 11, 2021 at 9:18 AM

