Please check for accuracy and if there  is anything that needs to be added,
please edit and send back to me:

1. What advantages does GNOME 3 offer to application developers?

Well I think it depends on where you are coming from.   For the purpose of
this question, let's restrict ourselves from moving a GNOME 2 application to
a GNOME 3.

For the most part, a GNOME 2 application can exist in a GNOME 3 environment.
 We continue to maintain the same GTK+ api from GTK+ 2 although they are
deprecated while providing newer API for application programmers to use.
 The advantage is that applications developers can move to GNOME 3 at their
discretion.  This is in contrast to the GNOME 1.x to GNOME 2.x where we
broke all APIs and application writers had to re-write their applications
from scatch.

The number of libraries that are required for a typical GNOME 3 has been cut
down.  A lot of the GNOME UI libraries and the VFS library have been moved
into GTK+ proper.   If you're code in GObject, then the new GOBject
introspection will enable much easier bindings integration.  No longer will
there be a discrepency between the different language bindings of a library.
 Providing a consistent experience in whatever language bindings you use
across all GNOME related libraries.

We have integrated Cairo as a new display backend over the more primitive
GDK.  Cairo gives us flexibility in how we want to display our windows.  We
can now draw GTK+ windows on any number of hardware devices from smart
phones to flat screen displays to touch screen.  Cairo is the free software
version of "Display Postscript" popularized by NeXT computers.

GTK Theming has changed to use css style syntax rather than the confusing
gtkrc system that was used before.  This provide a much improved theming
experience for those who want to create new themes.

GTK+ improves how applications stores the configurations by using the
GSettings which you can access through a number of backends, DConf being the
most popular although you can use anything you want including a simple disk
backend.

These are just a number of changes that will be visible to developers.


2. In your work with Rhythmbox, does GNOME 3 require you to do things
differently than they have been done in the past?

This is the response from Jonathan Matthews maintainer of Rhythmbox:
GNOME 3 offers better defined ways for applications to work with the
desktop, which means you don't need to spend time worrying about
whether you want a panel applet or whether close-to-tray makes sense.
Since there's less emphasis on custom themes and user appearance
settings, you can be more confident that end users see things the way
you designed them, and you can worry less about poor interactions with
obscure gtk themes.

So far, moving to GNOME 3 hasn't involved much of a change in how I do
things. It's a different environment for an application to live in, so
there is some adjustment involved, but at least in my case it's
forcing me to do things I wanted to do anyway. I'm also using it as an
opportunity to make more drastic internal changes, and to update to
newer glib and gtk APIs without having to think about backwards
compatibility.
-- 
marketing-list mailing list
marketing-list@gnome.org
http://mail.gnome.org/mailman/listinfo/marketing-list

Reply via email to