GNOME
![]() | |
Среда рабочего стола GNOME 2.28 | |
Тип | Среда рабочего стола |
Разработчик | Проект GNOME |
ОС | Unix-подобные ОС |
Последняя версия | 2.30.2 (23 июня 2010) |
Тестовая версия | 2.31.6[1] (5 августа2010) |
Лицензия | GNU GPL, GNU LGPL |
Сайт | www.gnome.org |
GNOME (gnoʊm) — свободная среда рабочего стола для Unix-подобных операционных систем. GNOME является частьюпроекта GNU.
Разработчики GNOME ориентируются на создание полностью свободной среды, доступной всем пользователям вне зависимости от их уровня технических навыков, физических ограничений и языка, на котором они говорят. В рамках проекта GNOME разрабатываются как приложения для конечных пользователей, так и набор инструментов для создания новых приложений, тесно интегрируемых в рабочую среду.
GNOME — акроним от англ. GNU Network Object Model Environment («сетевая объектная среда GNU»).
Цели
Цели проекта:
- создание полностью свободной рабочей среды;
- простота пользовательского интерфейса, доступность для пользователей вне зависимости от их технических навыков и физических ограничений;
- интернационализация и локализация;
- обеспечение простой разработки приложений, интегрируемых со средой, на различных языках программирования;
- постоянный цикл разработки и выпуска новых версий.
[править]Практичность и простота интерфейса
Начиная с GNOME версии 2.0, большую важность в развитии проекта принимают соображения практичности, простоты и удобства использования среды, в том числе для неопытных или физически ограниченных пользователей. Эта тенденция нашла своё выражение в статье Хэвока Пеннингтона «Пользовательский интерфейс свободных программ» (англ. «Free Software UI»). Ключевым моментом в этой статье стала идея о том, что каждая функциональная нагрузка и каждая опция настройки в программе имеет свою цену: зачастую лучше выбрать один, оптимальный вариант поведения программы, чем реализовывать множество вариантов и заставлять пользователя выбирать один из них.
Результатом стала разработка «Руководства по созданию человеческого интерфейса GNOME» (англ. GNOME Human Interface Guidelines, сокращённо HIG). HIG — руководство, призванное помочь разработчикам в создании высококачественных, непротиворечивых и удобных графических интерфейсов.[7] Как одно из последствий применения HIG, многие настройки, ранее доступные в GNOME, были признаны разработчиками проекта не нужными или малозначительными для большинства пользователей и удалены из основных диалоговых окон настройки.
Локализация
За локализацию среды GNOME отвечает проект перевода GNOME (англ. GNOME Translation Project). Перевод пользовательского интерфейса и документациипроизводится с помощью инструментария gettext.
Статистика для GNOME 2.30:
- на 32 языка переведено более 90 % строк пользовательского интерфейса;
- ещё на 33 языка переведено от 50 % до 90 % строк;
- на русский язык переведено 99 % строк пользовательского интерфейса и 46 % строк документации.
Происхождение
Проект GNOME был основан в августе 1997 года Мигелем де Иказа и Федерико Мена как попытка создать полностью свободную рабочую среду для операционной системыGNU/Linux.
В то время единственной альтернативой для неискушённого пользователя являлась среда KDE. Но KDE основана на инструментарии Qt фирмы Trolltech, который тогда былсобственническим продуктом. Чтобы не допустить ухудшения ситуации, была инициирована разработка GNOME — новой свободной рабочей среды на основе инструментария GTK+, созданного ранее для графического редактора The GIMP и распространяемого на условиях GNU LGPL.
В 2000 году версия Qt 2.2 была выпущена на условиях GNU GPL, в результате чего лицензионные проблемы KDE были ликвидированы. Однако проект GNOME, к тому времени уже достаточно развитый, продолжил своё существование.
Организация
Как и большинство свободного ПО, проект GNOME не имеет строгой и чёткой организации. Обсуждение разработки GNOME происходит в нескольких списках рассылки, доступных для всех.
В августе 2000 года был создан GNOME Foundation (фонд GNOME) для решения административных задач, общения с прессой и как точка взаимодействия с организациями, заинтересованными в разработке приложений для GNOME.
Платформы
Несмотря на то, что GNOME изначально была средой для GNU/Linux, сейчас она может быть запущена на большинстве UNIX-подобных систем: AIX, IRIX, разновидностяхBSD, HP-UX; а также частично была адаптирована фирмой Sun Microsystems для ОС Solaris вместо устаревшего CDE. Sun Microsystems также выпустила Java Desktop System — рабочую среду на базе GNOME. Существует порт GNOME для Cygwin, способный работать под управлением Microsoft Windows.
Архитектура
В основе среды GNOME лежит ряд библиотек и технологий. Некоторые из них разрабатываются как часть самого проекта GNOME, иные же являются результатом работы других проектов (например, freedesktop.org) и используются в других рабочих средах (KDE, Xfce).
В основном GNOME написана на языке Си, однако для библиотек GNOME существуют механизмы (так называемые привязки, англ. bindings), позволяющие использовать их из других языков. Поэтому многие приложения для GNOME пишутся на языках C++, Python, C# и других.
GTK+
Центральную роль в GNOME играет инструментарий GTK+, который предоставляет средства для создания графических интерфейсов. В состав GTK+ также входят вспомогательные библиотеки:
- GLib — библиотека удобных функций для программирования на Си;
- GObject — объектно-ориентированный каркас для программирования на Си;
- ATK — библиотека специальных возможностей для пользователей c физическими ограниченениями ;
- Pango — библиотека для вывода текста в широком спектре письменностей.
GTK+ написан на Си, однако в последнее время всё больше GNOME-приложений разрабатываются на языках более высокого уровня. Это стало возможным благодаря тому, что в GTK+ изначально предусмотрена возможность относительно простого построения интерфейсов для других языков. Официальными надстройками над GTK+ являютсяgtkmm, PyGTK, gtk2-perl и java-gnome.