GLib: различия между версиями
[отпатрулированная версия] | [непроверенная версия] |
Спасение 2 источников и отметка 0 мёртвыми. #IABot (v1.5.1) |
Alter73 (обсуждение | вклад) Нет описания правки Метки: с мобильного устройства из мобильной версии через расширенный мобильный режим |
||
(не показано 16 промежуточных версий 9 участников) | |||
Строка 1: | Строка 1: | ||
{{Карточка программы |
{{Карточка программы |
||
| developer |
| developer = [[Проект GNOME]] |
||
| operating_system |
| operating_system = [[Кроссплатформенное программное обеспечение|кроссплатформенная]] |
||
| latest_release_version = 2.50.3 |
|||
| latest_preview_version = 2.52.0 |
|||
}} |
}} |
||
'''GLib''' — низкоуровневая [[библиотека (программирование)|библиотека]], расширяющая возможности, предоставляемые стандартной библиотекой [[libc]] языка C. |
'''GLib''' — низкоуровневая [[библиотека (программирование)|библиотека]], расширяющая возможности, предоставляемые стандартной библиотекой [[libc]] языка C. |
||
Разрабатываемая в рамках и лежащая в основах проектов [[GTK+]] и [[GNOME]], GLib широко используется в приложениях, в том числе и неграфических. Выпуск очередной версии библиотеки по времени обычно совпадает с выпуском новой версии GTK |
Разрабатываемая в рамках и лежащая в основах проектов [[GTK+|GTK]] и [[GNOME]], GLib широко используется в приложениях, в том числе и неграфических. Выпуск очередной версии библиотеки по времени обычно совпадает с выпуском новой версии GTK. |
||
GLib предоставляет основную объектную систему, используемую в GNOME, реализацию основного цикла, а также обширный набор вспомогательных функций для строк и типовых структур данных<ref> |
GLib предоставляет основную объектную систему, используемую в GNOME, реализацию основного цикла, а также обширный набор вспомогательных функций для строк и типовых структур данных<ref>{{Cite web |url=http://library.gnome.org/devel/glib/ |title=GLib Reference Manual — GNOME Library<!-- Заголовок добавлен ботом --> |access-date=2008-10-13 |archive-date=2010-05-10 |archive-url=https://web.archive.org/web/20100510070350/http://library.gnome.org/devel/glib/ |deadlink=no }}</ref>. |
||
На данный момент GLib способна работать на многих UNIX-подобных операционных системах, а также MS Windows, OS/2 и BeOS. |
На данный момент GLib способна работать на многих UNIX-подобных операционных системах, а также MS Windows, OS/2 и BeOS. |
||
Строка 37: | Строка 35: | ||
* синтаксический анализатор файлов, содержащих закладки; |
* синтаксический анализатор файлов, содержащих закладки; |
||
* средства работы с регулярными выражениями типа Glob. |
* средства работы с регулярными выражениями типа Glob. |
||
GLib реализует функции, которые обеспечивают потоки, программирование потоков и связанные с ними средства, такие как примитивный доступ к переменным, мьютексы, асинхронные очереди, защищенные пулы памяти, передача и регистрация сообщений, функции ловушек (регистрация обратного вызова) и таймеры. GLib также включает средства передачи сообщений, такие как преобразование порядка байтов и каналы ввода-вывода. |
|||
=== Типы данных === |
=== Типы данных === |
||
Строка 47: | Строка 46: | ||
# Тип GString, который похож на стандартные С строки, за исключением того, что они автоматически расширяются, когда текст добавляется или вставляется. Также, он хранит длину строки, так что может быть использован для двоичных данных с нулевыми байтами. |
# Тип GString, который похож на стандартные С строки, за исключением того, что они автоматически расширяются, когда текст добавляется или вставляется. Также, он хранит длину строки, так что может быть использован для двоичных данных с нулевыми байтами. |
||
== Примечания == |
== Примечания == |
||
{{примечания}} |
{{примечания}} |
||
== Ссылки == |
== Ссылки == |
||
{{Навигация |
|||
|Тема = |
|||
|Портал = Свободное программное обеспечение |
|||
|Викисловарь = |
|||
|Викиучебник = |
|||
|Викицитатник = |
|||
|Викитека = |
|||
|Викивиды = |
|||
|Викиновости = |
|||
|Викисклад = |
|||
|Метавики = |
|||
|Проект = |
|||
}} |
|||
* {{cite web |
* {{cite web |
||
|url = http://developer.gnome.org/glib/stable/ |
|url = http://developer.gnome.org/glib/stable/ |
||
|title = Glib Reference Manual |
|title = Glib Reference Manual |
||
|lang = en |
|lang = en |
||
|accessdate = |
|accessdate = 2011-09-29 |
||
|description = Руководство пользователя GLib |
|description = Руководство пользователя GLib |
||
|archiveurl = https://www.webcitation.org/65Bo5x2S3?url=http://developer.gnome.org/glib/stable/ |
|archiveurl = https://www.webcitation.org/65Bo5x2S3?url=http://developer.gnome.org/glib/stable/ |
||
Строка 78: | Строка 64: | ||
|title = Справочное описание GLib (уже недоступно) |
|title = Справочное описание GLib (уже недоступно) |
||
|lang = ru |
|lang = ru |
||
|accessdate = |
|accessdate = 2014-03-24 |
||
|description = Русский перевод API GLib версии 2.13.0 |
|description = Русский перевод API GLib версии 2.13.0 |
||
|archiveurl = https://www.webcitation.org/61AN5nYEu?url=http://lserv.deg.gubkin.ru/docs/glib/ru/index.html |
|archiveurl = https://www.webcitation.org/61AN5nYEu?url=http://lserv.deg.gubkin.ru/docs/glib/ru/index.html |
||
Строка 89: | Строка 75: | ||
| title = Справочное описание GLib |
| title = Справочное описание GLib |
||
| lang = ru |
| lang = ru |
||
| accessdate = |
| accessdate = 2014-03-24 |
||
| description = Русский перевод API GLib версии 2.13.0 |
| description = Русский перевод API GLib версии 2.13.0 |
||
}} |
}} |
||
* {{cite web |
* {{cite web |
||
|url = http://docstore.mik.ua/manuals/ru/gobject_api/index.html |
|url = http://docstore.mik.ua/manuals/ru/gobject_api/index.html |
||
|title = Справочное описание GObject |
|title = Справочное описание GObject |
||
|lang = ru |
|lang = ru |
||
|accessdate = |
|accessdate = 2008-10-13 |
||
|description = Русский перевод API GObject (версия GLib 2.13.7) |
|description = Русский перевод API GObject (версия GLib 2.13.7) |
||
}} |
}} |
||
⚫ | |||
{{freesoftware-stub}} |
{{freesoftware-stub}} |
||
{{GNOME-stub}} |
{{GNOME-stub}} |
||
⚫ | |||
[[Категория:Библиотеки Си]] |
[[Категория:Библиотеки Си]] |
Текущая версия от 11:28, 29 июня 2024
GLib | |||
---|---|---|---|
Тип | библиотека функций | ||
Разработчик | Проект GNOME | ||
Написана на | Си[2] | ||
Операционная система | кроссплатформенная | ||
Последняя версия |
|
||
Репозиторий | gitlab.gnome.org/GNOME/g… | ||
| |||
| |||
Лицензия | LGPLv2.1+[вд][3] | ||
Сайт | gitlab.gnome.org/… (англ.) |
GLib — низкоуровневая библиотека, расширяющая возможности, предоставляемые стандартной библиотекой libc языка C.
Разрабатываемая в рамках и лежащая в основах проектов GTK и GNOME, GLib широко используется в приложениях, в том числе и неграфических. Выпуск очередной версии библиотеки по времени обычно совпадает с выпуском новой версии GTK.
GLib предоставляет основную объектную систему, используемую в GNOME, реализацию основного цикла, а также обширный набор вспомогательных функций для строк и типовых структур данных[4].
На данный момент GLib способна работать на многих UNIX-подобных операционных системах, а также MS Windows, OS/2 и BeOS.
Возможности
[править | править код]GLib предоставляет следующие возможности:
- большой набор базовых и производных типов данных;
- макросы и развитый механизм отладочных сообщений;
- строковые функции;
- функции для преобразования кодировок и поддержки юникода;
- встроенные макросы gettext для интернационализации;
- средства для работы с динамической памятью;
- средства для динамической загрузки модулей;
- атомарные операции;
- программные потоки и средства их синхронизации;
- порождение новых процессов;
- таймеры, функции для работы с датой и временем;
- генератор псевдо-случайных чисел;
- универсальный лексический сканер;
- синтаксический анализатор параметров командной строки;
- синтаксический анализатор подмножества данных типа XML;
- синтаксический анализатор .ini-подобных конфигурационных файлов;
- средства ввода-вывода;
- функции перехвата;
- Shell-related Utilities;
- синтаксический анализатор файлов, содержащих закладки;
- средства работы с регулярными выражениями типа Glob.
GLib реализует функции, которые обеспечивают потоки, программирование потоков и связанные с ними средства, такие как примитивный доступ к переменным, мьютексы, асинхронные очереди, защищенные пулы памяти, передача и регистрация сообщений, функции ловушек (регистрация обратного вызова) и таймеры. GLib также включает средства передачи сообщений, такие как преобразование порядка байтов и каналы ввода-вывода.
Типы данных
[править | править код]Базовые типы данных GLib предназначены для удобства программиста и переносимости приложения. Они делятся на следующие группы:
- Целые типы с фиксированным размером — gint8, guint8, gint16, guint16, gint32, guint32, gint64, guint64. Размер переменной любого из этих типов одинаков для каждой используемой аппаратной платформы. Для gint8, например, он всегда равен 8 бит.
- Псевдонимы стандартных типов языка C — gpointer (аналог void *), gconstpointer, guchar (аналог unsigned char), guint, gushort, gulong, gchar (аналог char), gint, gshort, glong, gfloat и gdouble.
- Тип gboolean со значениями TRUE и FALSE, типы gsize и gssize для представления размеров структур данных.
- Тип GString, который похож на стандартные С строки, за исключением того, что они автоматически расширяются, когда текст добавляется или вставляется. Также, он хранит длину строки, так что может быть использован для двоичных данных с нулевыми байтами.
Примечания
[править | править код]- ↑ 2.82.4 · GNOME / GLib · GitLab (англ.)
- ↑ The glib Open Source Project on Open Hub: Languages Page — 2006.
- ↑ Free Software Directory
- ↑ GLib Reference Manual — GNOME Library . Дата обращения: 13 октября 2008. Архивировано 10 мая 2010 года.
Ссылки
[править | править код]- Glib Reference Manual (англ.). — Руководство пользователя GLib. Дата обращения: 29 сентября 2011. Архивировано из оригинала 4 февраля 2012 года.
- Справочное описание GLib (уже недоступно) . — Русский перевод API GLib версии 2.13.0. Дата обращения: 24 марта 2014. Архивировано из оригинала 24 августа 2011 года.
- Справочное описание GLib . — Русский перевод API GLib версии 2.13.0. Дата обращения: 24 марта 2014.
- Справочное описание GObject . — Русский перевод API GObject (версия GLib 2.13.7). Дата обращения: 13 октября 2008.
Это заготовка статьи о программном обеспечении. Помогите Википедии, дополнив её. |
Это заготовка статьи о программном обеспечении. Помогите Википедии, дополнив её. |