[Development] [Announce] Qt 5.7.0 Beta released

md at rpzdesign.com md at rpzdesign.com
Mon Apr 25 14:52:50 CEST 2016


On 4/25/2016 2:31 AM, Simon Hausmann wrote:
>
> Hi,
>
>
> Thank you for your feedback.
>
>
> Could you please elaborate what kind of changes you'd like to see to the QQmlComponent API? It is not clear to me what you mean by "compiling loaded QML from a byte array".
>
>
> Similarly, could you please explain what you mean within loading definitions into the component cache? Are you referring to the ability to populate the component cache on application start up?
>
> Regarding the qmldir files I conceptually agree that it would be nice to get rid of them, but it is not an easy task and not a task that I think of being of high priority (unless somebody convinces me otherwise). However one thing I would like to see as an initial step in the same direction would be to generate the content of the files automatically from meta-information for example in the build system. Such a step would potentially allow for replacing these files with a superior mechanism.
>
> Could you please explain what you mean by an array of plugin bytes?
>
> I also don't see a tight coupling between the QML engine and the network access manager. What coupling are you referring to? Is it the ability to compile the engine when the network access manager is disabled from the build?
>
> Regarding internationalization support: I invite you to contribute the work towards allowing different mechanisms for translations. It would probably make most sense if you could attend the Qt conference to discuss the topic in person.
>
>
> Simon
>

Simon:

I have a bunch of comments to offer.

Regarding QQmlComponent, The best answer I can give is to suggest different API calls:

QQmlComponent.setData( Array of Human Readable QML Bytes )
QQmlComponent.BindImportName("import name","version major","version minor") -> Binds an import Name
QQmlComponent.BindLibary("import name", compiled QQuickItem dynamic library) -> Binds an import Name  (NO MORE PLUGINS! IOS shared library issues here)

QQmlEngine->CheckForImportCollisions( "import name","version major","version minor",QQmlComponent& gcomp)
QQmlEngine->LoadComponentIntoCache( "import name",bla-bla, QQmlComponent& gcomp)
QQmlEngine->UnloadLoadComponentFromCache( "import name",bla-bla)

Possible optimizations:

QQmlComponent.CompiletoByteArray() -> Output an array of "Compiled QML" bytecode + dynamic (5.8 QML Compiler but NOT to C++ class files, to bytecode)
QQmlComponent.LoadCompiledByteArray() -> Load a previously Compiled QML bytecode into the Component

filename.QML -> normal human readable QML
filename.QMC -> compiled qml byte file

Also, I think the day is fast coming where Qt Creator is no longer viable, only the C++ code will have developer value.

Already, you cannot debug QML and C++ on Xcode for simulator/Device.  There are severe limitations and the support is tepid at best. Why fight that battle?

Android Studio 2.x series will have integrated C++ NDK debugging along with acclerated Java debugging.

Why be content with KDAB 7 episode Jedi Knight series for Android & QT?  Make the jump to concentrate QT/Android development inside Android Studio 2.+

Microsoft has its own tools and deprecated Visual Studio 2010/12/13 Plugin and QT is scrambling to try to support Visual Studio 2015 with some sort of plugin replacement.

My recommendation is that Qt Creator resources be reduced massively to only support the Yocto embedded targets on linux.  The rest of the platforms should seek to work with native tooling.

Also, the Meta Object compiler needs review because when you open the Qt project in XCode, the metaobjects are major human readable problems
yet Xcode is the only environment that can actually debug QT C++ code on Simulator and Device. Not Qt Creator.    The generated projects need to have much cleaner code.

Internationalization should be an open hook that the Qr(" ") is re-factored to tap into. Then anybody could tap into the hook with their own internationalization mechnanism.  I would like to build the base library without the network manager, but I think there are too many links to the network manager header file in GUI.

I would love to come to a conference, but I am just way too busy and have a baby on the way, the wife will NEVER let me go to Europe to talk like a geek for 4 days.  Every spare dollar
is for domestic operations.

Cheers,

md


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/development/attachments/20160425/bf7f6f15/attachment.html>


More information about the Development mailing list