Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>I have used parts of POCO now and again and found it to be a very nice lib. I largely abandoned ACE a number of years ago but POCO contains some of the same patterns - Task, Reactor, etc. I have never had any problems with it so I have to assume it is stable.</p> <p>Some aspects that I like:</p> <ul> <li><p>it is a pretty well integrated OOP hierarchy so the components work well with each other. It has a much more cohesive feel than something like Boost which is rather piece-meal.</p></li> <li><p>the source code is available and very clear. You don't need to devote large blocks of time to understand what it is doing (ACE, at least last I looked at the source) or be a template wizard (Boost).</p></li> <li><p>Components stick close to standard C++. Exceptions are derived from std::exception; they didn't reinvent yet-another-string class, etc.</p></li> <li><p>It is surprising comprehensive. There is a lot more there than appears at first glance.</p></li> </ul> <p>The downside:</p> <ul> <li><p>A matter of personal preference but the authors stick pretty much to a one class per header file model so you end up including a lot of different files.</p></li> <li><p>Limited documentation. Mostly doxygen type API pages and a couple of PDFs pointing to source examples. It's usable but considering the size of the lib it is initially difficult to figure if you are making the best use of the components.</p></li> <li><p>If there is an active community built around it, I never found it. The package is maintained by some European based company and they had a wiki but I didn't find it that active or useful.</p></li> </ul> <p>All things considered, the downside is pretty minor. I think it is a very good library and would definitely recommend it.</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload