[Alexandria-list] Alexandria on KDE
Henry de Valence
hdevalence at gmail.com
Fri Feb 1 23:32:14 EST 2008
On Friday 01 February 2008 6:32:54 pm Cathal Mc Ginley wrote:
> On Fri, 1 Feb 2008 13:11:07 -0500
>
> Henry de Valence <hdevalence at gmail.com> wrote:
> > On Friday 01 February 2008 1:04:51 pm Joseph Method wrote:
> > > I think it's fine. If you put in a check for the current window
> > > manager, it could even have the same executable.
>
> The (abandoned) OSX GUI did that, and ended up tangling GNOME &
> Ruby/COCOA code throughout several files (I disentangled it just
> before the 0.6.2 release). If the core is cleanly designed, a separate
> application for each GUI front-end would probably be best.
>
> > > I'm actually
> > > strongly in favor of this simply because it will help us with
> > > getting cleaner separation of concerns.
>
> Domain analysis would also serve that end. However, I agree that if we
> create a well-factored "Application Facade" layer, then both a GNOME
> and a KDE front-end could be supported, preferably as a thin display
> layer on top of common application code.
>
> I have been developing a proof-of-concept application (in a different
> application domain) to try out very clean separation of domain and GUI.
> Perhaps a small-scale test of attaching a KDE GUI to a common
> application core would be helpful. Perhaps I can ping a few people when
> I have my sample app ready to try this out.
>
> > And also, just pointing out, I don't have lots of free time, so it
> > would take a while. Also while I know there are QT4 bindings for
> > ruby, I don't know what the state of KDE4 bindings for ruby
> > (is/are?).
>
> Korundum and QtRuby only mention KDE/Qt 3.x support on their web page:
> http://developer.kde.org/language-bindings/ruby/index.html
> But apparently 4.x support is possible, or at least in progress:
> http://dot.kde.org/1189467731/1189482359/
>
> There's also some talk of QtRuby being used with Kross, the scripting
> framework for KDE 4:
> http://www.kdedevelopers.org/node/3187
>
>
> - C.
AFAIK Kross is supposed to be used to script with a normal Qt/C++ application,
but I might be wrong. It would, IMO, be worth looking into whether one could
use Kross so that the frontend would be written in C++ and it would talk to
the main alexandria ruby app using Kross. I have no idea if this is possible,
but it seems like something Kross is supposed to do.
Before I get flamed for suggesting C++, I'd like to point out that I'm not
against using Qt/Ruby, I just think this is worth considering.
* Most KDE programs are written in C++. This means there are a lot more people
who would be willing to contribute than if they were deterred by having to
learn the Qt/Ruby bindings.
* A binary Qt/C++ program will probably run slightly faster than a Ruby
program, although nowadays this isn't as big of a factor, because computers
are, in general, faster.
* Related to the first point, since most KDE programs are written in C++, you
will have more up-to-date tools.
Keep in mind that I'm not suggesting you rewrite any of Alexandria to use Qt,
I'm just saying that if you're writing a new frontend/backend architecture
anyways, you should probably write the KDE frontend (if there is one) in C++,
because of the reasons I listed above.
--
Harry de Valence
More information about the Alexandria-list
mailing list