GLib
  • Initial page
  • I. Концепция
    • Background
    • Типы данных и программирование
  • Динамическая система типов Glib
    • Введение
    • Функции копирования
    • Соглашения
    • Неинстанциируемые не классифицированные базовые типы
    • Инстанциируемые классифицируемые типы: объекты
    • Неинстанциированные классифицированные типы: Интерфейсы.
  • Основной класс GObject
    • Введение
    • Инстанциация объекта
    • Объектное управление памятью
    • Свойства объекта
  • Система сообщений GObject
    • Замыкания
    • Сигналы
  • II. Описание API
    • GType
    • GTypePlugin
    • GTypeModule
    • GObject часть 1
    • GObject часть 2
    • Enums and Flags
    • GBoxed
    • Generic Values
    • Parameters and Values часть 1
    • Parameters and Values часть 2
    • Parameters and Values часть 3, ага
    • Value arrays
  • III. Описание инструментов
    • glib-mkenums
    • glib-genmarshal
    • gobject-query
  • IV. Руководство
    • Как определить и реализовать новый GObject?
    • Объектные методы
    • Как определять и реализовывать Интерфейсы?
    • Как создавать и использовать сигналы
    • Как пользователи могут злоупотреблять сигналами (и почему некоторые думают что это хорошо)
  • V. Об инструментах
    • Об инструментах
  • GTK 4
    • GtkApplication и GtkApplicationWindow
    • Widgets
Powered by GitBook
On this page

Was this helpful?

Initial page

Введение

Большинство современных языков программирования идут с собственной объектной системой и дополнительными базовыми языковыми алгоритмическими конструкциями. Так же как GLib предоставляет реализацию таких базовых типов и алгоритмов (связанные списки, хэш таблицы и т.д.), объектная система GLib Object System обеспечивает необходимую реализацию гибкой, расширяемой и преднамеренно лёгкой (для других языков) объектно-ориентированной оболочки (framework) для C. Подытожить обеспечиваемые существенные элементы можно так:

  • Родная система типов для регистрации произвольных прямых наследников и глубоко унаследованных типов а также интерфейсы для структурных типов. Она отвечает за создание, инициализацию и управление памятью различных объектов и классовых структур, поддерживает взаимоотношения родитель/наследник и всё что связанно с динамической реализацией таких типов. То есть, их типо-специфичная реализация является перераспределяемой/не загружаемой в течение выполнения.

  • Коллекция реализованных базовых типов, таких как integers, doubles, enums и структурные типы.

  • Простая реализация базового типа для основной объектной иерархии - базовый тип GObject.

  • Система сигналов которая позволяет очень гибкую пользовательскую настройку виртуальных/перезаписываемых объектных методов и может служить как мощный механизм уведомления.

  • Расширяемая система параметр/значение, поддерживает все обеспечиваемые базовые типы, которая может быть использована для общей обработки объектных свойств или иначе параметризованных типов.

NextBackground

Last updated 6 years ago

Was this helpful?