Zum Inhalt springen

GLib

aus Wikipedia, der freien Enzyklopädie
{{#if: | {{{Name}}} | {{#invoke:WLink|getArticleBase}} }}

{{#if: |

colspan="2" class="notheme" style="text-align:center; background:#Vorlage:Standardfarbe; color:#202122;" | {{{Logo}}} |
 {{#if: {{#invoke:Wikidata|claim|P154}} | 
[[Datei:{{#invoke:Wikidata|claim|P154}}|150px]]
 }}

}}{{#if: |

{{#if: |
}}|

}}

Basisdaten

{{#if: |

Hauptentwickler
 {{#if: {{#invoke:Wikidata|claim|P126}} | 
Maintainer claim|P126|parameter=link|references=ja|list=, }}
 }}

}}{{#if: Das GTK+-Team |

Entwickler
 {{#if: {{#invoke:Wikidata|claim|P178}} | 
Entwickler claim|P178|parameter=link|references=ja|list=, }}
 }}

}}{{#if: |

Erscheinungsjahr
 {{#if: {{#invoke:Wikidata|claim|P577}} | 
Erscheinungsjahr claim|P577|references=ja|list=, }} |
   {{#if: {{#invoke:Wikidata|claim|P571}} | 
Erscheinungsjahr claim|P571|references=ja|list=, }}
   }}
 }}

}}{{#ifeq: | KEINE_ANGABE || {{#if: |

Aktuelle Version
({{#if: | Vorlage:Datum – die Form mit drei unbenannten Parametern oder anderen einzelnen Zeiteinheiten ist veraltet und wird nicht mehr unterstützt. Bitte gib das Datum einfach im Klartext an.
format | {{#timefl:now|date}}}} {{{2}}} | T._Monat JJJJ}} lang= {{#switch: -|=de #default=de-AT
            }}
   }}

}}) }}

 {{#if: {{#invoke:Wikidata|claim|P348|P548|!Q3295609,Q51930650,Q2122918,Q21727724,Q1072356,Q6736813}} | 
Aktuelle Version claim|P348|P548|!Q3295609,Q51930650,Q2122918,Q21727724,Q1072356,Q6736813|references=ja}} {{#if: {{#invoke:Wikidata|claim|P348|P548|!Q3295609,Q51930650,Q2122918,Q21727724,Q1072356,Q6736813|qualifier=P577}} |
({{#invoke:Wikidata|claim|P348|P548|!Q3295609,Q51930650,Q2122918,Q21727724,Q1072356,Q6736813|qualifier=P577}}) }}}}}}

}}{{#ifeq: {{{AktuelleVorabVersion}}} | KEINE_ANGABE || {{#if: |

Aktuelle Vorabversion
({{#if: | Vorlage:Datum – die Form mit drei unbenannten Parametern oder anderen einzelnen Zeiteinheiten ist veraltet und wird nicht mehr unterstützt. Bitte gib das Datum einfach im Klartext an.
format {{{AktuelleVorabVersionFreigabeDatum}}} | {{#timefl:now|date}}}} {{{2}}} | T._Monat JJJJ}} lang= {{#switch: -|=de #default=de-AT
            }}
   }}

}}) }}

 {{#if: {{#invoke:Wikidata|claim|P348|P548|Q1072356,Q51930650,Q3295609,Q2122918,Q21727724}} | 
Aktuelle Vorabversion claim|P348|P548|Q1072356,Q51930650,Q3295609,Q2122918,Q21727724|references=ja}} {{#if: {{#invoke:Wikidata|claim|P348|P548|Q1072356,Q51930650,Q3295609,Q2122918,Q21727724|qualifier=P577}} |
({{#invoke:Wikidata|claim|P348|P548|Q1072356,Q51930650,Q3295609,Q2122918,Q21727724|qualifier=P577}}) }}}}}}

}}{{#if: |

Ausführungsumgebung
 {{#if: Unix, Windows, OS/2, BeOS | 
Betriebssystem Unix, Windows, OS/2, BeOS |
   {{#if: {{#invoke:Wikidata|claim|P306}} | 
Betriebssystem claim|P306|parameter=link|references=ja|list=, }}
   }}
 }}

}}{{#if: |

Programmier­sprache
 {{#if: {{#invoke:Wikidata|claim|P277}} | 
Programmier­sprache claim|P277|parameter=link|references=ja|list=, }}
 }}

}}{{#if: Komponentenbibliothek |

Kategorie Komponentenbibliothek

}}{{#if: LGPL (Freie Software) |

Lizenz LGPL (Freie Software) |
 {{#if: {{#invoke:Wikidata|claim|P275}} | 
Lizenz claim|P275|parameter=link|references=ja|list=, }}
 }}

}}{{#if: ja |

deutschsprachig faculty|ja}} | ja | nein }}

}}{{#if: |

Sonstiges {{{Sonstiges}}}Vorlage:Infobox Software/Wartung/Sonstiges

}}{{#if: gtk.org |

gtk.org |
 {{#if: {{#invoke:Wikidata|claim|P856|notdeprecated=1}} | 
{{#invoke: WLink | formatURL | {{#invoke:Wikidata|claim|P856|parameter=link|notdeprecated=1}}}}
 }}

}}{{#if: |

Dateien [[c:Category:Created with {{{Dateien}}}|{{{Dateien}}}]]

}}

GLib ist eine in C geschriebene Bibliothek, welche verschiedene Funktionen bereitstellt, die normalerweise in C nur mit sehr viel Aufwand möglich sind. So wird das objektorientierte Programmieren erheblich vereinfacht und komplexe Datenstrukturen wie binäre Bäume und verkettete Listen und die Behandlungsroutinen für den Umgang mit Threads, Dateien, Strings (auch Unicode-Umwandlungen), Zeitfunktionen, Speicherzugriff und mehr bereitgestellt.

Die Funktionssammlung ist unter vielen Unix-artigen Plattformen, Windows, OS/2 und BeOS verfügbar. Entwickelt hat sich die GLib aus GTK+, welches ihre Funktionen selbst intensiv nutzt. Nicht zu verwechseln ist der Name GLib mit der glibc, der freien GNU-Implementierung der Standard C Library.

Eigenschaften

GLib bietet Unterstützung für

Zum GLib-Projekt zugehörig, aber in eine eigene Bibliothek ausgelagert, ist das GObject-Objektsystem, das objektorientierte Programmierung in C vereinfacht und unter anderem auch ein Signalsystem bietet, mit dem sich Objekte über Ereignisse benachrichtigen können.

Ebenfalls zum GLib-Projekt gehört die Bibliothek GIO (GLib Interfaces and Objects). GIO ist der auf GObject basierende Teil des GLib-Projektes und bietet Datei- und Datenstromobjekte, Netzwerkfunktionalität, Klassen für Datenkompression und -konvertierung, Schnittstellen zum Interprozess-Kommunikationssystem D-Bus und eine Schnittstelle zum Speichern von Anwendungseinstellungen.

Weitere Bibliotheken, die auf dem GLib-GObject-Gespann basieren, sind beispielsweise das Widget-Toolkit GTK+, das Multimediaframework GStreamer, das Animationsframework Clutter und die HTTP-Bibliothek Soup.

Die Programmiersprache Vala verwendet GLib als Standardbibliothek und GObject als Objektsystem.

Weblinks

Einzelnachweise

<references />