SObjectizer je relativno mali okvir za pojednostavljenje razvoja složenih višedretvenih aplikacija u C++. SObjectizer omogućuje programerima izgradnju svojih programa na temelju asinkrone razmjene poruka koristeći pristupe poput Aktorskog modela, Objavljivanja-pretplate i CSP. To je OpenSource projekt pod BSD-3-CLAUSE licencom. Kratak dojam o SObjectizer-u može se steći pregledavanjem ove prezentacije.
Verzija 5.6.0 je prvi veći izdanje nove grane SObjectizer-5.6. Što također znači završavanje razvoja grane SObjectizer-5.5, koja je trajala više od četiri godine.
Budući da verzija 5.6.0 otvara novo poglavlje razvoja SObjectizer-a, nema novih značajki u usporedbi s onim što je promijenjeno i/ili uklonjeno iz SObjectizer-a. Konkretno:
- koristi se C++17 (ranije se koristilo podskup C++11);
- projekt se preselio i sada se nalazi na BitBucket-u s službenim, a ne eksperimentalnim, zrcalom na GitHub-u;
- agenti više nemaju string imena;
- podrška za sinkrono međusobno djelovanje među agentima uklonjena je iz SObjectizer-a (njegov pandan implementiran je u pratećem projektu so5extra);
- uklonjena je podrška za ad-hoc agente;
- za slanje poruka sada se koriste samo slobodne funkcije send, send_delayed, send_periodic (stare metode deliver_message, schedule_timer, single_timer iz javnog API-a su uklonjene);
- funkcije send_delayed i send_periodic sada imaju jedinstven format bez obzira na tip primatelja poruke (bilo da se radi o mbox-u, mchain-u ili referenci na agenta);
- dodana je klasa message_holder_t za pojednostavljenje rada s prethodno alociranim porukama;
- uključeno je mnogo stvari koje su označene kao zastarjele još u grani 5.5;
- pa i razne druge.
Detaljan popis promjena može se naći ovdje. Tamo, u Wiki projektu, možete pronaći dokumentaciju za verziju 5.6.
Arhive s novom verzijom SObjectizer mogu se preuzeti s BitBucket-u ili s SourceForge.
PS. Posebno za skeptike koji smatraju da SObjectizer nikome nije potreban i da ga nitko ne koristi. To je netočno.
Izvor: linux.org.ru
