What Features Should A GUI toolkit have?
via Digitalmars-d
digitalmars-d at puremagic.com
Mon Mar 9 01:13:45 PDT 2015
On Saturday, 7 March 2015 at 07:33:03 UTC, Russel Winder wrote:
> I meant a user interface not using a browser as the
> infrastructure.
> Cocoa, Qt, GTK, JavaFX, etc. are all there already, and have
> everything
> browsers are still trying to get.
All I can say that you can cut down on development time, get
better portability, greater reuse and greater flexibility by
using HTML5. The only downside has been performance and toolkits,
but that is changing over time. Shadow DOM is an essential
component to that, by encapsulating GUI elements, and reactive
frameworks allows you to tie them together with effortless
two-way binding.
> but it's only real positive is that it is (supposed to be)
> pre-installed
> and the same on every machine. Sadly though, from what I can
> see, vast
> amounts of code and time is spent dealing with the differences
> between browsers.
That's in the past. The time spent referencing caniuse.com (about
once every 15 minutes for me) allows you to use new features
without having to reimplement for another browser. I spend less
than 1% on cross browser issues now that I am on IE10+. Before
that, 10-20%.
But that is not relevant here, since we are talking about
building Chromium into the app, as in statically.
> HTML and Javascript may have an edge on ease of deployment, but
> regarding the other dimensions, I fear you must have imbibed of
> the Kool-Aid.
No Kool-Aid, just a fair knowledge about usability, GUIs and the
cost of doing native development as well as what browser engines
now provide. Going native costs you twice as much in GUI work
than a design that fits HTML5.
HTML is by far the most stable and portable platform over time...
Because it is backed by an adopted standard. Without a standard,
it would be worth nothing. Low risk implies adoption.
Flexibility is also important for creating good UIs. Complex
applications never reuse much from existing GUIs, they create
their own for all the critical tasks. That applies to just about
all applications where screen estate and workflow matters:
audio-visual applications, CAD etc.
> Clearly
> new technology and new application require new things, but
> simply
> ignoring already known stuff is just wrong.
I am not ignoring anything. I am pragmatic, and I also know the
UI theory and what the portable UI frameworks has offered since
the 1980s.
HTML5 is an adopted agreed upon standard with backwards
compatible enhancements that works cross platform. Everything
else is not. Therefore HTML5 will grow more over time. Just like
C++ will grow more than D...
More information about the Digitalmars-d
mailing list