Журнал LinuxFormat - перейти на главную

LXF139:WMEvolution

Материал из Linuxformat
Перейти к: навигация, поиск

Содержание

Эво­лю­ция ра­бо­чих сто­лов

Джо­но Бэ­кон изучает происхождение видов… ра­бо­чих сто­лов.


В 1998 го­ду, когда я на­чал поль­зо­вать­ся ОС Linux, изя­ще­ст­ва тут бы­ло ма­ло. Для уста­нов­ки вы скарм­ли­ва­ли ком­пь­ю­те­ру штук 40 дис­кет, непре­рыв­но мо­лясь, что­бы сре­ди них не за­те­са­лась би­тая и не при­шлось бы на­чи­нать все за­но­во. По­сле дли­тель­но­го ожи­дания вы обыч­но по­лу­ча­ли не осо­бо ин­туи­тив­ный ин­тер­фейс ти­па

darkstar login:
_

В те вре­ме­на до­минирую­щей ОС бы­ла Windows 95; Windows 98 еще рас­кру­чи­ва­лась, а при­клю­чения в Linux в сти­ле «Не­дет­ских игр» не прель­ща­ли по­ко­ление поль­зо­ва­те­лей, вы­росших на GUI. [Тут автор сам себе противоречит - откуда могло взяться "поколение пользователей, выросших на GUI" в 98м году?]]

Когда на­ши бо­ро­да­тые дру­зья из ми­ра яд­ра Linux со­об­ра­зи­ли, как до­бить­ся ра­бо­ты гра­фи­че­­ских карт, все боль­ше уси­лий ста­ли при­ла­гать к воссоз­данию по­всем­ст­но зна­ко­мой гра­фи­че­­ской сре­ды. Эта ра­бо­та на­ча­лась с пор­ти­ро­вания на Linux сре­ды X – ПО для от­ри­сов­ки изо­бра­жений на эк­ране, но од­но­го это­го бы­ло недоста­точ­но. Что­бы по­лу­чить ре­аль­но по­лез­ный GUI, необ­хо­дим был еще и хо­ро­ший окон­ный менед­жер.

В от­ли­чие от ми­ра Windows, сре­да X по­зво­ля­ла за­пускать мно­же­ст­во окон­ных менед­же­ров, и их поя­ви­лась про­рва – от чу­да­че­­ских до чу­дес­ных. Одни бы­ли про­сты­ми, дру­гие – слож­ны­ми, часть пы­та­лась эму­ли­ро­вать ин­тер­фейс Windows, а часть бы­ла от­кро­вен­но бе­зум­ной. Но в ито­ге это­го взры­ва твор­че­­ской ак­тив­но­сти по­пу­ляр­ность об­ре­ли две гра­фи­че­­ские сре­ды: KDE и Gnome.

Хо­тя и KDE, и Gnome пре­достав­ля­ли удоб­ную для поль­зо­ва­те­лей пол­но­цен­ную функ­цио­наль­ную сре­ду, это бы­ли раз­ные вот­чи­ны, с крайне уз­кой «об­ла­стью пе­ре­се­чения». Оба ре­шали одни и те же про­бле­мы – на­при­мер, по­иск спо­со­ба за­пуска фай­лов или управ­ления шриф­та­ми – но де­ла­ли это каждый по-сво­ему.

Тре­бо­ва­лись пе­ре­ме­ны. Со­об­ще­ст­во росло, и когда два раз­ра­бот­чи­ка ре­ша­ли од­ну и ту же про­бле­му дву­мя раз­ны­ми спо­со­ба­ми, это бы­ло су­щим бе­зу­ми­ем. К сча­стью, си­туа­ция по­до­шла к рез­ко­му улуч­шению.

Унифи­ка­ция ра­бо­че­го сто­ла

На фоне на­рас­тания бол­товни про взаи­мо­дей­ст­вие ра­бо­чих сто­лов был анон­си­ро­ван про­ект freedesktop.org – в ка­че­­ст­ве неза­ви­си­мой от сре­ды зо­ны для раз­ра­бот­ки ПО, спо­соб­но­го по­ла­дить с лю­бым ра­бо­чим сто­лом. Сайт про­ек­та пре­доста­вил по­се­ти­те­лям wiki-страницу, хостинг для ко­да, дис­кусси­он­ные поч­то­вые спи­ски, IRC-ка­на­лы и мно­гое дру­гое. И этот про­ект ока­зал ко­лоссаль­ное влияние на раз­ви­тие ра­бо­чих сто­лов.

Бы­ло соз­да­но ог­ром­ное ко­ли­че­­ст­во про­грамм – часть их бы­ст­ро достиг­ла уров­ня зре­ло­сти и ре­ша­ла ре­аль­ные про­бле­мы, а неко­то­рые на­ча­тые про­ек­ты так и не за­вер­ши­лись. Но неза­ви­си­мо от вы­жи­вае­мо­сти про­ек­тов, сайт http://freedesktop.org нес в со­об­ще­ст­во важней­ший по­сыл: ра­бо­чие сто­лы долж­ны как мож­но боль­ше со­трудничать. Этот по­сыл был воспри­нят боль­шин­ст­вом, и эво­лю­ция ра­бо­чих сто­лов про­дол­жи­лась.

Важней­шим про­грамм­ным ком­понен­том, соз­дан­ным в рам­ках про­ек­та freedesktop.org, яви­лась унифи­ци­ро­ван­ная сис­те­ма об­ме­на со­об­щения­ми. На том эта­пе глав­ной про­бле­мой раз­ра­бот­чи­ков ра­бо­чих сто­лов бы­ло обес­пе­чение взаи­мо­свя­зи при­ло­жений: web-брау­зер дол­жен был об­щать­ся с сис­тем­ной связ­кой клю­чей [system keyring], се­те­вой де­мон – со знач­ком на панели, и т. д.

В KDE по­пы­та­лись ре­шить эту про­бле­му с по­мо­щью сис­те­мы, на­зван­ной DCOP. Она пре­достав­ля­ла при­ло­жениям на­гляд­ный спо­соб об­ме­на со­об­щения­ми. Хо­ро­шо ра­бо­тая в KDE, эта сис­те­ма, к со­жа­лению, не ре­ша­ла бо­лее ши­ро­кой про­бле­мы об­ме­на со­об­щения­ми ме­ж­ду мно­же­ст­вом ра­бо­чих сто­лов. И тогда поя­вил­ся про­ект D-BUS.

В двух сло­вах, D-BUS – это эк­ви­ва­лент DCOP, пе­ре­но­си­мый ме­ж­ду ра­бо­чи­ми сре­да­ми. Он пре­достав­ля­ет ме­ханизм, бла­го­да­ря ко­то­ро­му при­ло­жения взаи­мо­дей­ст­ву­ют друг с дру­гом че­рез об­щую ши­ну, ис­поль­зуя об­щий язык. Про­ект D-BUS ли­хо­ра­доч­но раз­ви­вал­ся, по­ка не до­бил­ся со­от­вет­ст­вия стан­дар­ту freedesktop.org, по­сле че­го дан­ная тех­но­ло­гия бы­ла встрое­на и в KDE, и в Gnome. Это был ог­ром­ный ска­чок в раз­ви­тии ра­бо­чих сто­лов, ко­то­рый вы­вел их на но­вую сту­пень эво­лю­ции.

От­дел­ка ра­бо­че­го сто­ла

По ме­ре тру­дов над со­вмес­ти­мо­стью ра­бо­чих сто­лов мы на­блю­да­ли ко­лоссаль­ные из­менения ра­бо­че­го сто­ла Linux. Мно­гие из бо­лезнен­ных про­блем про­шло­го бы­ли ре­ше­ны – уст­рой­ст­ва USB ав­то­ма­ти­че­­ски рас­по­зна­ют­ся при под­клю­чении, связь с бес­про­вод­ны­ми се­тя­ми уста­нав­ли­ва­ет­ся одним щелч­ком мы­ши, пе­ча­тать те­перь лег­че лег­ко­го, про­стой ста­ла уста­нов­ка ПО; де­ла яв­но шли к луч­ше­му. Мы на­конец-то за­ша­га­ли в но­гу со вре­менем, и мы об­ла­да­ли тем, че­го не бы­ло у кон­ку­рен­тов: гло­баль­ным со­об­ще­ст­вом со­трудников.

В ми­ре Ubuntu мы изо всех сил ста­ра­лись быть на пе­реднем крае достав­ки этих ин­но­ва­ций поль­зо­ва­те­лям. Мы бра­ли сво­бод­ное ПО и ин­тег­ри­ро­ва­ли его в Ubuntu; на­шей це­лью бы­ло по­мочь конеч­ным по­тре­би­те­лям ре­шить их по­все­днев­ные про­бле­мы, будь то воспро­из­ве­дение му­зы­ки, под­клю­чение к Internet или что-то дру­гое.

В 2008 го­ду Марк Шатт­л­ворт [Mark Shuttleworth], осно­ва­тель Ubuntu, пы­лая ре­ши­мо­стью внедрять в Ubuntu ин­но­ва­ции, осно­вал про­ект Ayatana. Идея его бы­ла про­ста: на­брать ко­ман­ду ква­ли­фи­ци­ро­ван­ных ди­зайнеров и ин­женеров, что­бы улуч­шить и рас­ши­рить поль­зо­ва­тель­ский ин­тер­фейс, обес­пе­чив вы­со­кое ка­че­­ст­во ди­зай­на.

Этот под­ход был нов для всех: для са­мо­го Мар­ка, для ком­пании (Canonical) и для ко­ман­ды Ubuntu. У нас имел­ся об­шир­ный опыт по ин­те­гра­ции и по­став­ке ПО, но эта но­вая инициа­ти­ва, с упо­ром на ди­зайн, бы­ла «тер­ра ин­когнита».

Ayatana

Под Ayatana ком­пания Canonical на­ня­ла боль­шую ко­ман­ду ди­зайнеров. Ее чле­ны име­ли са­мое раз­но­об­раз­ное про­шлое: кто-то раз­ра­ба­ты­вал брен­ды, кто-то – про­дук­ты; кто-то занимал­ся гра­фи­че­­ским ди­зай­ном или ди­зай­ном ин­тер­фей­са, и т. д. «Пла­виль­ным кот­лом ин­ди­ви­ду­аль­но­стей» на­звать ее бы­ло бы ма­ло; мно­гие впер­вые встре­ти­лись с от­кры­тым ко­дом; но у всех вы­зы­ва­ла эн­ту­зи­азм идея под­кре­пить от­лич­ный ди­зайн под­держ­кой со­об­ще­ст­ва.

Пер­вый про­ект этой ко­ман­ды был на­зван Notify OSD; он по-но­во­му обо­шел­ся со всплы­ваю­щи­ми ок­на­ми уве­дом­лений, зна­ко­мы­ми поль­зо­ва­те­лям Ubuntu. Го­да­ми мы тер­пе­ли эти на­до­ед­ли­вые жел­тые пу­зы­ри, всплы­ваю­щие в пра­вом верхнем уг­лу ра­бо­че­го сто­ла Gnome ка­ж­дый раз, когда ка­ко­му-ли­бо при­ло­жению при­спи­чи­ва­ло что-то по­ве­дать поль­зо­ва­те­лю.

Про­ект Notify OSD пе­реосмыс­лил эту ба­зо­вую кон­цеп­цию. Те­перь уве­дом­ления при­об­ре­ли бо­лее при­вле­ка­тель­ный вид про­зрач­но­го чер­но­го ок­на. Вме­сто за­кры­тия уве­дом­ления щелч­ком мы­ши те­перь доста­точ­но за­дер­жать над ним кур­сор, что­бы оно вы­цве­ло, дав вам воз­мож­ность взаи­мо­дей­ст­во­вать с при­ло­жением под ним. Та­кой ди­зайн обосно­вы­ва­ет­ся тем, что всплы­ваю­щие уве­дом­ления долж­ны пре­достав­лять поль­зо­ва­те­лю ин­фор­ма­цию нена­вяз­чи­вым об­ра­зом.

По­сле вклю­чения пер­вой вер­сии Notify OSD в Ubuntu раз­ра­бот­чи­ки KDE то­же за­хо­те­ли при­менить эту тех­но­ло­гию. К сча­стью, ко­ман­да Ayatana соз­да­ла спе­ци­фи­ка­цию Notify OSD с тем, что­бы она мог­ла при­ла­гать­ся к раз­лич­ным сре­дам ра­бо­че­го сто­ла, и раз­ра­бот­чи­кам Kubuntu оста­лось толь­ко сде­лать GUI бо­лее ор­ганич­ным в KDE. Тех­но­ло­гия Notify OSD и здесь бы­ла при­ня­та бла­го­же­ла­тель­но, как ум­ное усо­вер­шен­ст­во­вание ра­бо­че­го сто­ла.

Ин­ди­ка­то­ры

Ко­ман­да Ayatana не ог­раничи­лась одними всплы­ваю­щи­ми уве­дом­ления­ми. Они на­це­ли­лись на улуч­шение всей об­лас­ти уве­дом­лений сис­те­мы и при­ло­жений – об­лас­ти, ко­то­рая на ра­бо­чем сто­ле Linux яв­ля­лась чем-то вро­де по­мой­ки.

Про­блем с этой об­ла­стью хва­та­ло. Во-пер­вых, в ней обыч­но си­де­ло несколь­ко знач­ков уве­дом­лений от при­ло­жений, ис­поль­зо­вав­ших ее, и нель­зя бы­ло одним щелч­ком про­брать­ся к нуж­но­му знач­ку – ка­ж­дый тре­бо­вал от­дель­но­го щелч­ка мы­шью, что­бы им поль­зо­вать­ся. Кро­ме то­го, ин­тер­фей­сы этих знач­ков час­то бы­ли раз­но­ма­ст­ны­ми. Одни име­ли ме­ню ле­во­го щелч­ка, дру­гие, на­обо­рот, реа­ги­ро­ва­ли на пра­вую кноп­ку мы­ши; или име­ли эк­зо­ти­че­­ские вид­же­ты и про­чие стран­но­сти.

Знач­ки в об­лас­ти уве­дом­лений бы­ли та­ки­ми же, как знач­ки за­пуска при­ло­жений – как пра­ви­ло, пол­но­цвет­ные – и в раз­ных те­мах оформ­ления ра­бо­че­го сто­ла смот­ре­лись пло­хо­ва­то. На­при­мер, при тем­ной те­ме поль­зо­ва­те­лю обыч­но хо­чет­ся, что­бы знач­ки в об­лас­ти уве­дом­лений бы­ли од­но­тон­ны­ми, а про­грам­ма за­пуска при­ло­жений со­хра­ня­ла бы обыч­ные яр­кие знач­ки.

Все это соз­да­ва­ло про­бле­мы для поль­зо­ва­те­лей с ог­раничен­ны­ми воз­мож­но­стя­ми и сла­бо­ви­дя­щих, и за­труд­ня­ло на­ви­га­цию по об­лас­ти уве­дом­лений с по­мо­щью кла­виа­ту­ры.

Ко­ман­да Ayatana за­ду­ма­ла ре­шить эти про­бле­мы неза­ви­си­мо от ра­бо­че­го сто­ла. Для это­го они по­строи­ли свою ра­бо­ту на осно­ве спе­ци­фи­ка­ции сис­тем­ных уве­дом­лений [System Notifier Specification], соз­дан­ной и при­ме­няе­мой в рам­ках про­ек­та KDE, и раз­ра­бо­та­ли но­вый ин­тер­фейс при­клад­но­го про­грам­ми­ро­вания [API], че­рез ко­то­рый раз­ра­бот­чи­ки мог­ли бы по­мес­тить зна­чок в об­ласть уве­дом­лений для при­ло­жений Gnome.

Эта тех­но­ло­гия име­ла ряд пре­иму­ществ, и в том чис­ле да­ла воз­мож­ность щелк­нуть мы­шью по лю­бо­му из знач­ков в панели и по­сле это­го про­кру­чи­вать в об­лас­ти уве­дом­лений все знач­ки с вы­па­даю­щи­ми ме­ню (по ана­ло­гии с про­крут­кой мы­шью ме­ню при­ло­жений). Вдо­ба­вок при­ло­жения смог­ли уста­нав­ли­вать в об­лас­ти уве­дом­лений от­дель­ные знач­ки, и ста­ло ре­аль­ным сде­лать их од­но­цвет­ны­ми, от­ве­дя пол­но­цвет­ный ва­ри­ант на за­пуск при­ло­жений.

Ме­ню об­лас­ти уве­дом­лений ста­ли бо­лее со­гла­со­ван­ны­ми. Ис­чез­ла нераз­бе­ри­ха ме­ню, вы­во­ди­мых то ле­вой, то пра­вой кноп­кой мы­ши; при­ня­то толь­ко на­жа­тие ле­вой кноп­ки, по ко­то­ро­му по­яв­ля­ют­ся стан­дарт­ные эле­мен­ты, флаж­ки и пе­ре­клю­ча­те­ли. В ито­ге ра­бо­та поль­зо­ва­те­лей серь­ез­но уп­ро­сти­лась и ста­ла бо­лее удоб­ной.

Был уп­ро­щен доступ поль­зо­ва­те­лей бу­к­валь­но к всем оп­ци­ям, а функ­ция­ми, доступ­ны­ми че­рез об­ласть уве­дом­лений, те­перь мож­но управ­лять с кла­виа­ту­ры. Это силь­но об­лег­ча­ет жизнь поль­зо­ва­те­лей с фи­зи­че­­ски­­ми недостат­ка­ми.

Когда но­вая тех­но­ло­гия бы­ла доста­точ­но про­ра­бо­та­на, ее вклю­чи­ли в оче­ред­ной ре­лиз Ubuntu, и поль­зо­ва­те­лям она по­нра­ви­лась. Ин­ди­ка­то­ры пол­но­стью от­кры­ты и доступ­ны че­рез API для та­ких язы­ков про­грам­ми­ро­вания, как C, Python и Mono, так что раз­ра­бот­чи­ки при­ло­жений по­лу­чи­ли воз­мож­ность по­рез­вить­ся в но­вой тех­но­ло­гии, бла­го­да­ря че­му она бы­ла адап­ти­ро­ва­на мно­ги­ми при­ло­жения­ми, реа­ли­зо­вав­ши­ми ее под­держ­ку.

С точ­ки зрения раз­ра­бо­ток, неза­ви­си­мых от ра­бо­че­го сто­ла, осо­бен­но ин­те­рес­но то, что дан­ная тех­но­ло­гия осно­ва­на на стан­дарт­ной пе­ре­но­си­мой спе­ци­фи­ка­ции KDE, и те­перь при­ло­жения KDE, ра­бо­таю­щие в сре­де Gnome, по­лу­ча­ют ме­ню, ви­зуа­ли­зи­руе­мые ин­ст­ру­мен­та­ри­ем GTK, с «род­ны­ми» знач­ка­ми Gnome. То же спра­вед­ли­во и для при­ло­жений Gnome, ра­бо­таю­щих в KDE: в дан­ном слу­чае ви­зуа­ли­за­цию вы­пол­ня­ет Qt. Та­ким об­ра­зом, при­ло­жения, из­на­чаль­но раз­ра­бо­тан­ные для од­ной сре­ды, не вы­гля­дят чу­жеродны­ми в дру­гой.

Сис­тем­ные ин­ди­ка­то­ры

Еще один ас­пект но­вой тех­но­ло­гии – кон­цеп­ция сис­тем­ных ин­ди­ка­то­ров: знач­ки уве­дом­лений, груп­пи­рую­щих оп­ре­де­лен­ный тип кон­тен­та (на­при­мер, со­об­щения) или сис­тем­ную ин­фор­ма­цию (на­при­мер, об уровне за­ря­да ба­та­реи, пи­тании и зву­ке).

Здесь клю­че­вой тех­но­ло­ги­ей яв­ля­ет­ся ме­ню со­об­щений – неболь­шой зна­чок в фор­ме кон­вер­та, щел­чок по ко­то­ро­му по­з­во­ля­ет вам ра­зом уви­деть всю по­лу­чен­ную вхо­дя­щую ин­фор­ма­цию. При­ло­жения мо­гут со­би­рать здесь все: вновь по­лу­чен­ные пись­ма, со­об­щения из со­ци­аль­ных се­тей или ча­тов, и мно­гое дру­гое. Опять-та­ки бла­го­да­ря то­му, что спе­ци­фи­ка­ция под­дер­жи­ва­ет мно­же­ст­во ра­бо­чих сто­лов, по­ме­щать ин­фор­ма­ци­он­ное со­дер­жи­мое в дан­ное ме­ню мо­жет лю­бое при­ло­жение, и мно­гие про­ек­ты вклю­ча­ют под­держ­ку Zimbra, Gmail и про­че­го.

В Ayatana соз­да­ны и дру­гие сис­тем­ные ин­ди­ка­то­ры. Хо­ро­ший при­мер – ме­ню зву­ка, по­зво­ляю­щее не толь­ко на­стро­ить гром­кость воспро­из­ве­дения ва­шей зву­ко­вой кар­той, но и уви­деть, ка­кой му­зыкаль­ный но­мер вы сей­час слу­шае­те, а так­же про­пустить при про­слуш­ке от­дель­ные но­ме­ра. Это удоб­но, по­то­му что мно­гие пред­по­чи­та­ют слу­шать му­зы­ку в слу­чай­ном по­ряд­ке, и им неза­чем взаи­мо­дей­ст­во­вать с му­зыкаль­ным плей­е­ром ина­че, чем за­да­вая про­пуск от­дель­ных до­ро­жек. Бла­го­да­ря этой функ­ции мож­но скрыть свой плей­ер и поль­зо­вать­ся для про­пуска тре­ков толь­ко зву­ко­вым ин­ди­ка­то­ром.

Ме­ню при­ло­жений

По­следнее, что ка­са­ет­ся ин­ди­ка­то­ров, ко­то­ры­ми занима­ет­ся ко­ман­да Ayatana – то, что основ­ное ме­ню при­ло­жений то­же ис­поль­зу­ет эту спе­ци­фи­кацию. Здесь силь­ное влияние ока­зал мир нетбу­ков. На нетбу­ках и дру­гих уст­рой­ст­вах с неболь­шим форм-фак­то­ром вер­тикаль­ное про­стран­ст­во ценит­ся осо­бо, и раз­ме­щение ме­ню при­ло­жений на верхней панели эко­но­мит про­стран­ст­во. Эта кон­цеп­ция раз­ви­ва­лась в рам­ках ра­бот над Unity, но­вым ин­тер­фей­сом для нетбу­ков, бо­лее под­роб­но опи­сан­ным во врез­ке «Unity на на­столь­ном ком­пь­ю­те­ре».

Бы­ла раз­ра­бо­та­на тех­но­ло­гия ме­ню при­ло­жений с ин­ди­ка­ци­ей, при­менимая прак­ти­че­­ски ко всем при­ло­жениям: ее пре­иму­ще­ст­ва­ми мо­гут восполь­зо­вать­ся при­ло­жения KDE и Gnome, осно­ван­ные на GTK и Qt, без внесения ка­ких-ли­бо из­менений в са­мо при­ло­жение. Сле­до­ва­тель­но, при за­пуске при­ло­жения при вклю­чен­ных но­вых ин­ди­ка­то­рах ме­ню при­ло­жений ме­ню при­ло­жения поя­вит­ся на панели и бу­дет ра­бо­тать точ­но та­ким же об­ра­зом.

Как и знач­ки ин­ди­ка­то­ра уве­дом­лений, эта тех­но­ло­гия то­же пе­ре­но­си­ма ме­ж­ду ра­бо­чи­ми сто­ла­ми: за­пуск при­ло­жения KDE в сре­де Gnome оз­на­ча­ет, что ме­ню при­ло­жения бу­дут ви­зуа­ли­зи­ро­вать­ся в «род­ные» вид­же­ты и знач­ки GTK, и на­обо­рот. Раз­ве не чу­дес­но за­пустить KWord в сре­де Gnome и уви­деть, как все ме­ню при­ло­жения ото­бра­зят­ся в ви­де «род­ных» вид­же­тов? И сно­ва, при­ло­жения, раз­ра­бо­тан­ные для дру­гих ра­бо­чих сто­лов, бу­дут вы­гля­деть бо­лее ес­те­ст­вен­ны­ми, а так­же бу­дут удобнее в ис­поль­зо­вании.

За по­следние три го­да ко­ман­да Ayatana на­бра­ла си­лу, по­пут­но по­лу­чив и ряд важ­ных уро­ков. При за­пуске про­ек­та Notify OSD де­фи­цит взаи­мо­дей­ст­вия ме­ж­ду ди­зайнера­ми Canonical и со­об­ще­ст­вом ощу­щал­ся очень серь­ез­но, и это вы­зы­ва­ло по­нят­ное раз­дра­жение чле­нов со­об­ще­ст­ва. Од­на­ко урок был усво­ен: те­перь но­вые тех­но­ло­гии не толь­ко пред­ва­ри­тель­но об­су­ж­да­ют­ся с со­об­ще­ст­вом, но и доступ к ра­бо­таю­ще­му ко­ду пре­достав­ля­ет­ся сра­зу по ме­ре вы­пуска. На­при­мер, в на­ча­ле ра­бо­ты над ин­ди­ка­то­ром при­ло­жений ра­бо­чий код был пре­достав­лен в те­чение несколь­ких недель, что­бы со­об­ще­ст­во мог­ло по­экс­пе­ри­мен­ти­ро­вать с ним, ис­сле­до­вать его и внести свой вклад в его улуч­шение и ис­прав­ление оши­бок.

По­вы­шение про­зрач­но­сти наи­бо­лее за­мет­но про­яв­ля­ет­ся в под­держ­ке при­ло­жений. Раз­ра­бот­чи­ки ря­да при­ло­жений встрои­ли в свои про­ек­ты под­держ­ку ин­ди­ка­то­ров при­ло­жений и Notify OSD, и все боль­ше при­ло­жений об­за­во­дит­ся дан­ны­ми функ­ция­ми, по­сколь­ку Ubuntu пре­достав­ля­ет так­же и са­мое тех­но­ло­гию.

Пер­спек­ти­вы

Раз­ви­тие ра­бо­че­го сто­ла Linux про­шло дол­гий путь. Еще вче­ра ка­за­лось, что уже на­ли­чие гра­фи­че­­ско­­го ра­бо­че­го сто­ла яв­ля­ет­ся важней­шим из но­ва­ций Linux, а та­кие роско­ши, как со­гла­со­ван­ные поль­зо­ва­тель­ские ин­тер­фей­сы, ог­ром­ное удоб­ст­во ис­поль­зо­вания и бы­ст­рый и лег­кий доступ к уст­рой­ст­вам и при­ло­жениям вы­гля­де­ли це­лью, в обо­зри­мом бу­ду­щем недости­жи­мой. Од­на­ко со­об­ще­ст­во воспла­менилось иде­ей соз­дания удоб­ной для всех ра­бо­чей сре­ды, и мы на­сла­ж­да­ем­ся эти­ми пре­иму­ще­ст­ва­ми се­го­дня.

Достиг­ну­тый про­гресс ве­лик, но бу­ду­щее обе­ща­ет еще боль­ший по­тен­ци­ал. По­бед­ное ше­ст­­вие Linux уже не оста­но­вить, и, в от­ли­чие от 1998 го­да, у нас есть об­шир­ное порт­фо­лио тех­но­ло­гий, спо­соб­ных ук­ра­с­ить жизни боль­шин­ст­­ва поль­зо­ва­те­лей ком­пь­ю­те­ров по все­му ми­ру. Под при­це­лом Linux ос­та­ет­ся ши­ро­кий диа­па­зон обо­ру­до­ва­ния: но­ут­бу­ки, на­столь­ные ком­пь­ю­те­ры, не­т­бу­ки, план­ше­ты, мо­биль­ные те­ле­фо­ны и мно­гое дру­гое. Мир нам от­крыт, и кто зна­ет, как ОС Linux, дви­жи­мая мо­щью со­об­ще­ст­ва, бу­дет вы­гля­деть го­ду этак в 2018?

Unity на на­столь­ном ком­пь­ю­те­ре

Тех­но­ло­гии, раз­ра­бо­тан­ные ко­ман­дой Ayatana, до­пол­ня­ют ра­бо­чие сто­лы Gnome и KDE. Хо­тя эти ра­бо­чие сто­лы чрез­вы­чай­но по­пу­ляр­ны на стан­дарт­ных но­ут­бу­ках и на­столь­ных ком­пь­ю­те­рах, по­яв­ление нетбу­ков по­ро­ди­ло но­вые за­да­чи.

Пло­щадь эк­ра­на у нетбу­ков неве­ли­ка, и хо­тя боль­шин­ст­во из них име­ют ши­ро­ко­эк­ран­ные дис­плеи, вер­тикаль­ное про­стран­ст­во пред­став­ля­ет боль­шую цен­ность.

К со­жа­лению, это про­стран­ст­во час­то ис­поль­зу­ет­ся непра­виль­но. На­при­мер, в Gnome в верхней час­ти эк­ра­на есть панель, под ко­то­рой на­хо­дят­ся эле­мен­ты оформ­ления ок­на при­ло­жения (стро­ка за­го­лов­ка и кноп­ки управ­ления ок­ном), а еще ниже – ме­ню при­ло­жения. Ко­ман­да Ayatana со­чла, что эти три эле­мен­та мож­но уме­стить в од­ной верхней панели. Это, и неко­то­рые дру­гие из­менения сли­лись в про­ек­те Unity, ори­ен­ти­ро­ван­ном имен­но на нетбу­ки.

При за­пуске при­ло­жения в Unity оно мак­си­ми­зи­ру­ет­ся на весь эк­ран, и эле­мен­ты оформ­ления ок­на ис­че­за­ют. Кноп­ки управ­ления ок­ном ока­зы­ва­ют­ся на па-нели, и ме­ню при­ло­жения то­же вы­но­сит­ся на панель. Вы немед­лен­но по­лу­чае­те до­ба­воч­ное ме­сто на эк­ране.

Од­на­ко Unity – нечто боль­шее, чем про­сто эк­ран­ная пло­щадь. Unity пред­ла­га­ет но­вое сред­ст­во за­пуска при­ло­жений и фай­лов; сред­ст­ва по­ис­ка встрое­ны в сис­те­му бла­го­да­ря при­менению про­ек­та Zeitgeist; и вклю­че­ны все про­чие улуч­шения от Ayatana. В Ubuntu 10.10 мож­но уста­но­вить ин­тер­фейс Unity ко­ман­да­ми

sudo apt-get update
sudo apt-get install unity

При­мер из жизни: GStreamer

Еще один очень успеш­ный про­ект, спо­соб­ст­во­вав­ший эво­лю­ции сред ра­бо­че­го сто­ла – GStreamer, ин­фра­струк­ту­ра соз­дания и воспро­из­ве­дения ме­диа-фай­лов.

Когда основ­ным ин­тер­фей­сом Linux бы­ла команд­ная стро­ка, мы на всех уг­лах тру­би­ли о пре­иму­ще­ст­ве под­хо­да UNIX, при ко­то­ром ути­ли­ты для ча­ст­ных за­дач объ­е­ди­ня­ют­ся в це­поч­ку, что­бы вы­полнить боль­шое за­дание. Ко­ман­да раз­ра­бот­чи­ков GStreamer при­менила этот под­ход к об­ра­бот­ке муль­ти­ме­диа. Вы бе­ре­те один ком­понент, что­бы счи­тать зву­ко­вой файл; пе­ре­дае­те его вы­ход дру­го­му ком­понен­ту для де­ко­ди­рования; де­ко­ди­ро­ван­ное со­дер­жи­мое по­сту­па­ет на тре­тий ком­понент, ко­то­рый на­страи­ва­ет гром­кость и пе­ре­да­ет свой вы­вод чет­вер­то­му, а тот от­сы­ла­ет ау­дио­ин­фор­ма­цию зву­ко­вой сис­те­ме для вы­во­да на ди­на­ми­ки.

Ин­фра­струк­ту­ра GStreamer бы­ла доступ­на на мно­же­ст­ве язы­ков про­грам­ми­ро­вания, под­дер­жи­ва­ла мас­су ко­де­ков и по­став­ля­лась в ком­плек­те с боль­шим ко­ли­че­­ст­вом ком­понен­тов, что по­зво­ля­ло раз­ра­бот­чи­кам соз­да­вать ин­ди­ви­ду­аль­но на­стро­ен­ные, оп­ти­ми­зи­ро­ван­ные кон­вей­е­ры.

Ин­фра­струк­ту­ра GStreamer из­менила под­ход к об­ра­бот­ке муль­ти­ме­дий­ной ин­фор­ма­ции в Linux. Раз­ра­бот­чи­ки при­ло­жений получи­ли возможность обо­га­тить их муль­ти­ме­диа-при­моч­ка­ми, не по­гря­зая в ча­ст­но­стях ко­ди­ро­вания и де­ко­ди­ро­вания фор­ма­тов и про­чих слож­но­стях. GStreamer ис­поль­зу­ют Rhythmbox, Banshee, Pitivi, Jokosher и мно­гие дру­гие при­ло­жения.

Гар­мония знач­ков

Еще одним клю­чом к эво­лю­ции ра­бо­чих сто­лов яви­лось достиг­ну­тое в 2006 го­ду понима-ние то­го фак­та, что знач­ки – кри­ти­че­­ски важ­ный эле­мент ра­бо­че­го сто­ла. Поль­зо­ва­те­ли ожи­да­ют, что их «ок­рас» бу­дет со­от­вет­ст­во­вать об­ще­му сти­лю, а их ком­би­на­ция – смот­реть­ся эф­фект­но. Достичь это­го бы­ло непро­сто, при на­ли­чии ты­сяч при­ло­жений от ты­сяч ав­то­ров с непо­хо­жи­ми пред­став­ления­ми об эле­гант­но­сти.

Одним из пер­вых ре­шений этой про­бле­мы стал про­ект Tango (http://tango.freedesktop.org) – по­пыт­ка соз­дать стан­дарт­ный на­бор ука­заний по сти­лю знач­ков и вы­бо­ру цве­то­вой па­лит­ры для них, что­бы ка­ж­дый зна­чок ор­ганич­но смот­рел­ся на фоне осталь­ных ком­понен­тов ра­бо­че­го сто­ла.

Хо­тя из­на­чаль­но про­ект Tango раз­ви­вал­ся си­ла­ми ко­ман­ды Gnome, ко­ман­да KDE при­ня­ла ряд сход­ных уста­но­вок, в рам­ках про­ек­та Oxygen (http://oxygen-icons.org): знач­ки сде­ла­лись чуть бо­лее Mac-по­доб­ны­ми. Оба про­ек­та до­би­лись успе­ха, и сравнив вид ра­бо­че­го сто­ла 2005 го­да с со­вре­мен­ным, вы пой­ме­те, что кра­си­вые знач­ки рез­ко ме­ня­ют ва­ши ощу­щения от ра­бо­че­го сто­ла.

Персональные инструменты
купить
подписаться
Яндекс.Метрика