Што има ново за развивачите на софтвер

Развојната платформа на GNOME 2.22 овозможува цврста основа за креирање на самостојни апликации. GNOME и неговата платформа се лиценцирани да дозволуваат креирање и на слободен и на неслободен софтвер кој ќе се извршува врз GNOME.

Библиотеките на платформата на GNOME гарантираат дека ќе бидат API и ABI стабилни и во останатите изданија од серијата GNOME 2.x. Библиотеките на работната околина GNOME не го гарантираат тоа, но најчесто остануваат усогласени од едно до друго издание.

6.1. GVFS и GIO

GVFS е јузерспејс виртуелен датотечен систем со бекенди за протоколи како SFTP, FTP, DAV, SMB, ObexFTP. GVFS е замена за GNOME-VFS. GNOME-VFS отсега се смета за застарен и развивачите не треба да го користат во нови апликации.

GVFS се состои од два дела:

  • GIO, нова споделена библиотека која е дел од GLib и овозможува API за GVFS; и
  • самиот GVFS, нов пакет кој содржи бекенди за разни типови на датотечни системи и протоколи како SFTP, FTP, DAV, SMB и ObexFTP.

GVFS/GIO цели да обезбеди модерен VFS систем кој е лесен за употреба. Неговата цел е да обезбеди API кое развивачите ќе го преферираат над POSIX IO повиците. Наместо да го клонира POSIX IO API-то, GVFS овозможува интерфејс од повисоко ниво кој е центриран околу документи. Покрај читање и запишување на датотеки, GIO овозможува можности за надгледување на датотеки, асинхрон IO и довршување на имињата на датотеките.

GVFS работи со извршување на еден главен демон (gvfsd) кој што се грижи за тековните GVFS монтирања. Секое монтирање се извршува во посебен демон. (Некои монтирања споделуваат процес-демон, но повеќето не го прават тоа.) Клиентите комуницираат со монтирањата преку комбинација од D-Bus повици (на магистралата на сесијата и со користење на peer-to-peer D-Bus) и прилагоден протокол за содржини на датотеки. Преместувањето на бекендите надвор од процесот го минимизира нередот на зависности за апликациите и го прави целиот систем робустен.

GVFS исто така нуди и FUSE точка за монтирање во ~/.gvfs/ така што GVFS монтирањата може да се поврзат со стари апликации кои разбираат POSIX IO.

За разлика од GNOME-VFS, поврзувањата во GVFS се постојани. Тоа значи дека корисникот треба да ја внесе лозинката само еднаш во текот на една успешна врска.

Со преминувањето на GVFS, автоматското монтирање и стартување се управувани директно од Nautilus наместо преку gnome-volume-manager.

API документацијата за користење на GIO е достапна онлајн заедно со водичите за миграција од POSIX IO и GNOME-VFS на GIO.

6.1.1. Уназадувања

И покрај тоа што GVFS поправа многу проблеми кои претходно постоеjа во GNOME-VFS, моментално има некои уназадувања. Најзабележлив е недостатокот на fonts:// и themes://.

Овие проблеми ќе се поправат најскоро што може. Има некои апликации кои останува да се портираат на GVFS. Состојбата на ова портирање е документирана онлајн.

6.2. Anjuta ИРО (интегрирана развојна околина)

Интегрираната развојна околина Anjuta сега е дел од развојниот пакет на GNOME. Anjuta ИРО интегрирана во GNOME која на развивачите им овозможува многу опции како што се: вграден дебагер, интегриран уредувач на кориснички интерфејс и Valgrind интерфејс.

Figure 9Листа на задачи за Anjuta.