[Development] Qt - connected first. Your takes? Feedback?
vladimir.minenko at qt.io
Fri Mar 18 17:03:09 CET 2022
as it was mentioned in https://www.qt.io/blog/qt-roadmap-for-2022, there are more topics in development at the moment.
We once called one of those "Connected First" (https://bugreports.qt.io/browse/QTBUG-98086). In this email, I wanted to list a few use cases which we like to cover and ask for your feedback or suggestions for any alternative approaches or technologies which you see as more important. Hm… Might be a bit longer email. Please do not TL;DR too soon ;-)
Our long-term goal is to ensure that Qt developers can use API provided by services on the network and even create such services in a simple way. It is possible to do this with Qt today on the client side, but a lot of boilerplate code should be written or additional libraries are required. The server side would require a lot of work.
There are two directions for “in a simple way”. One is to reduce the amount of boilerplate code needed when using existing services, like https://reqres.in which is available for testing. This would be a must for all those who need to use the existing service API. The second “simple way” is to use IDL and code generation when both the server and the client sides are in development and API can be (re)defined.
Despite the “bare-metal” REST and OpenAPI as its API management and code generation counterpart, there is also gRPC / Protocol Buffers and GraphQL.
Our current plan is to start with reviving and finishing the Lightweight HTTP-Server (https://bugreports.qt.io/browse/QTBUG-60105) and provide basic support for gRPC with Protocol Buffers (https://bugreports.qt.io/browse/QTBUG-98027).
Later on, we want to explore what can be simplified when using Qt with existing REST-based services and with those which are based on OpenAPI
Some of this was already mentioned in https://wiki.qt.io/Qt_Network_Workshop_2016, see the "REST details” section. Well. almost 6 years passed after this.
Additionally, we want to integrate the old and new Qt Interface Framework (https://doc-snapshots.qt.io/interfaceframework/index.html) as an element in Connected First.
It is more open, if and how GraphQL fits these needs and if there will be a sufficient value for Qt users to support GraphQL in Qt directly. GraphQL is an advanced and certainly fascinating technology and growing fast. First 3rd-party API are already available, e.g. https://github.com/APIs-guru/graphql-apis lists some of those.
What is your view on these use cases? Feedback and comments about choices as listed? Missing ones?
vladimir.minenko at qt.io
+49 171 90 61 461
Senior Product Manager, Qt Foundation
The Qt Company - https://qt.io
More information about the Development