On Sun, Oct 9, 2011 at 11:32 AM, Uwe Rathmann <uwe.rathm...@tigertal.de> wrote:
> On Sun, 09 Oct 2011 12:35:12 +0200, Peter Kümmel wrote:
>
>> Maybe it isn't that bad in Qt because only the GUI is implemented in
>> QML, business logic could still be C++.
>
> Yes and it looks like the idea of having different teams with different
> skills for these tasks ( something I don't believe in, because for non
> developers QML isn't easy enough ).

I have to disagree, some designers are already using QML/JS for
prototyping instead of Flex.

> But where is this business logic separated from the GUI in applications
> like these: http://www.youtube.com/watch?v=j5FQmKPqhwg or http://
> www.youtube.com/watch?v=84SpU0OLSew

This case just shows a custom data provider integrated with a custom
widget. In the end, you just need to develop the widget and the data
provider in C++, as you already do, and expose them to QML as plugins,
providing configurable properties like the following:

import CustomWidgets 1.0

Oscilloscope {
    width: 300
    height: 300
    xLineColor: "red"
    yLineColor: "blue"
    zLineColor: "green"

    provider: SerialDataProvider {
        source: "/dev/ttyS0"
    }
}

This Oscilloscope plugin could also accept custom data providers in
order to handle different inputs.

I have a real use case that could also be addressed. I've created a
game (http://circus.indt.org) in pure C++ using QGraphicsView, but
I've decided to port to QML (keeping some parts in C++). That reduced
a lot the complexity of the code regarding screen
flows/states/animations, giving me more time to focus on the game
engine. In the end, the game canvas, the sound mixer and the level
provider are written in C++ and are used in the QML side as plugins or
global objects.
The developer must decide what makes sense to be kept in C++ and what
could be easily handled in Javascript.

Br,
Adriano
_______________________________________________
Qt5-feedback mailing list
Qt5-feedback@qt.nokia.com
http://lists.qt.nokia.com/mailman/listinfo/qt5-feedback

Reply via email to