Cross-Plattform-Entwicklung: POCO C++ Libraries 1.11 führen ActiveRecord ein

Das jüngste Release der portablen C++-Bibliotheken zur Entwicklung von netzwerkbasierten Applikationen löst außerdem über 100 Probleme früherer Versionen.

In Pocket speichern vorlesen Druckansicht 10 Kommentare lesen

(Bild: Blackboard/Shutterstock.com)

Lesezeit: 3 Min.
Von
  • Silke Hahn

Die portablen C++-Bibliotheken des Projekts POCO sind nach längerer Entwicklungspause in Version 1.11 erschienen. Das Release führt als Highlight POCO ActiveRecord ein, ein als leichtgewichtig geltendes objektrelationales Mapping-Framework (ORM), dem das Active Record Pattern und eine Data Library zugrundeliegen. Entwicklerinnen und Entwickler sollen sich dadurch bei allgemeinen Datenbankabrufen wie dem Auffinden eines Objekts nach dessen ID oder dem Löschen von Objekten das Schreiben einer Menge von Boilerplate-Code sparen.

Wie die Projektherausgeber auf GitHub mitteilen, schließe Version 1.11 auch eine Reihe von Lücken und Problemen vorheriger Ausgaben. Laut GitHub hat das aktuelle Release 118 bekannte Probleme behoben. Eine Reihe externer Bibliotheken hat Aktualisierungen erfahren, so unterstützt POCO C++ Libraries 1.11 folgende externe Bibliothekspakete: expat in Version 2.4.1, PCRE in Version 8.44, die aktuellste Master-Version von pdjson und SQLite in Version 3.35.5.

Unter anderem gelten zahlreiche Probleme mit dem Compiler Clang als behoben, Zip und SevenZip sind nicht länger abhängig von Util, XML oder JSON und das Iterieren über Var mit leeren Containern mündet nicht länger in einer "Out of range"-Exception. Die Dokumentation ist laut GitHub-Eintrag von einer Reihe von Rechtschreibfehlern befreit, und auch einige inhaltliche Fehler konnte das POCO-Team beseitigen beziehungsweise die Inhalte auf den neuesten Stand bringen. Das betrifft die Dokumentation für Poco/JSON/Parser.h und ein Update im Bereich der Konstanten im setContentType.

An Verbesserungen führt das Team auf, dass Poco/Crypto nicht länger SSL23 unterstützt, die feat(SharedLibrary) bietet Nutzern eine detailliertere Fehlerbeschreibung und der JSON-Parser soll nun ganze JSON-Dokumente in den Speicher kopieren, wenn er aus einem Stream heraus parst. An anderer Stelle ist undefiniertes Verhalten entsorgt worden, insgesamt soll die Funktionalität durch die zahlreichen Bugfixes nun verbessert sein. Auf GitHub lässt sich eine umfassende Liste der behobenen Probleme einsehen.

Wer sich für das Release 1.11 interessiert, findet eine Zusammenfassung mit weiterführenden Links im Blogeintrag der Website des POCO-Projekts. Ein Blick in die überarbeitete Dokumentation könnte sich auch lohnen, insbesondere für die neu eingeführten Active Record Patterns.

Die POCO C++ Libraries sind eine Sammlung von C++-Bibliotheken zur Cross-Plattform-Entwicklung von Anwendungen, die netzwerk- oder browsergestützt sein können und sowohl auf dem Desktop als auch auf Servern, mobilen Geräten, im Bereich des IoT (Internet of Things) und in Embedded-Systemen laufen können. Ziel der Herausgeber ist es nach eigenen Angaben, die C++-Entwicklung durch die POCO-Bibliotheken-Sammlung zu vereinfachen. POCO ist Open Source und auf GitHub verfügbar. Neben der kostenfreien Grundversion bietet das Projekt auch eine erweiterte Pro-Version, insbesondere für die Remote-Arbeit mit C++ beim Implementieren von REST-APIs, Microservices, Webdiensten und verteilten Anwendungen. Einen Überblick über das gesamte Projekt bietet die Website von POCO.

(sih)