Hi all,

Thank you for the discussions at QtCS19!
The notes regarding the session on serialization are on the wiki:
https://wiki.qt.io/Rethinking_serialization_for_Qt6

To summarize:
- Although it seemed strange to many people, it is possible to provide an
API so that a single T::zap() method can read/write T instances to many
different Qt APIs : Json, Cbor, Xml, and even QAbstractItemModel to
interact with SQL tables, TableView and TreeView widgets.
- When QMetaObject is available, serialization to/from these Qt APIs can be
done automatically using reflection.
- This API is a little bit like an external protobuf schema except it does
not require external tools and does not need to generate intermediate data
structures.
- It provides simpler and safer read/write to these Qt APIs, easy
customization similar to Python list comprehensions, and a lot of
flexibility in choosing data formats, so that the very small runtime
overhead is usually negligible.

Action items :
- Thiago recognized that this kind of API would be valuable to Qt users but
at least the naming is problematic, so he should provide feedback before it
can be pushed to and reviewed on gerrit
- Other contributors can review the initial Qt proposal on github:
https://github.com/arnaud-clere/qtbase/compare/63a1a30a014eb75a67c390a16faa9aeb03a4a012...HEAD

or the proof of concept and benchmark on the original research project:
https://gricad-gitlab.univ-grenoble-alpes.fr/modmed/modmedLog/tree/master/tests/QBind


Cheers,
Arnaud

RépondreTransférer
_______________________________________________
Development mailing list
[email protected]
https://lists.qt-project.org/listinfo/development

Reply via email to