Nieuws voor ontwikkelaars
De Gnome-ontwikkeltechnologieën zijn verbeterd voor 3.0. Door een grote consolidatie is een aanzienlijke hoeveelheid modules verouderd of achterhaald geraakt. Verder zijn vele componenten versimpeld en gemoderniseerd. Ook zijn diverse technologieën vervangen door superieure alternatieven.
- 3.1. Moderne graphics
- 3.2. Omgang met geavanceerde invoerapparaten
- 3.3. Verbeterde ondersteuning voor thema's
- 3.4. Ondersteuning voor meerdere platforms
- 3.5. Eenvoudig toepassingen maken
- 3.6. Hoge kwaliteit bindings
- 3.7. Snelle en simpelere instellingen
- 3.8. Hippere en flexibelere gebruikersinterfaces
- 3.9. De geïntegreerde ontwikkelomgeving Anjuta
- 3.10. Upgraden naar Gnome 3
3.1. Moderne graphics
GTK+, de grafische toolkit van Gnome, heeft schoon schip gemaakt op het gebied van de drawing API's. Dit heeft een consolidatie rondom moderne grafische faciliteiten mogelijk gemaakt, waardoor GTK+ niet alleen sneller, maar ook beter portable is geworden.
3.2. Omgang met geavanceerde invoerapparaten
GTK+ maakt gebruik van XInput2 als dat beschikbaar is. Dit biedt een aantal significante voordelen, zoals ondersteuning voor het ‘hot-pluggen’ (direct inprikken) van invoerapparaten en ondersteuning voor complexe invoerapparaten zoals tablets. Integratie met XInput2 biedt ook ondersteuning voor meerdere (muis)aanwijzers, wat betekent dat Gnome gereed is voor een toekomst met multitouch-ondersteuning in X11.
3.3. Verbeterde ondersteuning voor thema's
In Gnome 3.0 doet ook een nieuw systeem voor visuele thema's zijn intrede. Thema's zijn beter te begrijpen door het gebruik van CSS-syntaxis. Ook kunnen meer effecten zoals curves, kleurverlopen en alpha-kleuren in thema's gebruikt worden. Het nieuwe systeem ondersteunt tevens impliciete animaties en RGBA-kleuren.
3.4. Ondersteuning voor meerdere platforms
GTK+ 3.0 heeft nieuwe mogelijkheden voor de ondersteuning van meerdere platforms: deze kunnen tegenwoordig tegelijk gebouwd worden en vervolgens tijdens run-time gekozen worden. Dit maakt de overstap naar nieuwe platforms, zoals bijvoorbeeld Wayland, een stuk gemakkelijker.
3.5. Eenvoudig toepassingen maken
De nieuwe klasse GtkApplication zorgt automatisch voor integratie van de toepassing, zoals het bijhouden van de geopende vensters, zorgen voor een unieke instantie en acties voor exporteren. Dit betekent niet alleen dat het maken van een Gnome-toepassing prettiger is geworden, maar dat een toepassing ook met minder code af kan. Deze functionaliteit zal in de 3.x-cyclus verder uitgebreid worden.
3.6. Hoge kwaliteit bindings
Gnome bood traditioneel ondersteuning voor een hele reeks ‘high level’-programmeertalen. De invoering van GObject Introspection in Gnome 3.0 heeft tot gevolg dat deze bindings dynamisch worden bijgewerkt, wat de betrouwbaarheid ten goede komt en ontwikkelaars toegang geeft tot de volledige functionaliteit die in de ‘core’-technologieën aanwezig is.
3.7. Snelle en simpelere instellingen
De oudere faciliteiten voor het opslaan van instellingen zijn in 3.0 vervangen door twee nieuwe componenten. Beide bieden grote voordelen over hun voorgangers. GSettings biedt een simpele en effectieve API voor instellingen en maakt het makkelijk om ‘class properties’ aan instellingen te koppelen. Het pijlsnelle opslag- en bevragingssysteem dconf (met kleine letter) maakt dit nieuwe duo compleet.
3.8. Hippere en flexibelere gebruikersinterfaces
De interface toolkit van Gnome biedt diverse nieuwe mogelijkheden voor verbeterde lay-outs. Hiermee kan de ruimte voor interface-elementen en de daadwerkelijke ‘content’ efficiënter ingedeeld worden. 3.0 biedt ook diverse nieuwe interface-elementen, zoals een schakelaar en een keuzevenster voor toepassingen.
3.9. De geïntegreerde ontwikkelomgeving Anjuta
Anjuta, de in Gnome geïntegreerde ontwikkelomgeving, kent een aantal verbeteringen in versie 3.0, zoals het automatisch verbinden van ‘signals’ naar interface-widgets, verbeterde ondersteuning voor autotools en pkg-config en een nieuw systeem voor de integratie met Git (versiebeheer).
3.10. Upgraden naar Gnome 3
De ‘Porting guide’ biedt instructies over het ‘porten’ (ombouwen) van bestaande Gnome-software naar de vernieuwde ontwikkeltechnologieën.