Wykorzystałem wszystkie trzy, więc oto moje 0,02 dolara.
Naprawdę chcę głosować na Douga Schmidta i szanować całą jego pracę, ale szczerze mówiąc uważam, że ACE jest lekko wadliwy i trudny w użyciu. Myślę, że ta biblioteka wymaga ponownego uruchomienia. Trudno to powiedzieć, ale na razie unikałbym ACE, chyba że istnieje nieodparty powód, aby używać TAO lub potrzebujesz jednego kodu do uruchomienia C ++ na obu wariantach Uniksa i Windows. TAO świetnie radzi sobie z wieloma trudnymi problemami, ale krzywa uczenia się jest intensywna i nie bez powodu CORBA ma wielu krytyków. Myślę, że po prostu zrób swoją pracę domową, zanim podejmiesz decyzję o użyciu jednego z nich.
Jeśli piszesz w C ++, myślę o przyspieszeniu. Korzystam z wielu bibliotek niskiego poziomu i uważam je za niezbędne. Szybkie grep mojego kodu ujawnia shared_ptr, program_options, regex, bind, serialization, foreach, property_tree, filesystem, tokenizer, różne rozszerzenia iteratorów, alogrithm i mem_fn. Są to głównie funkcje niskiego poziomu, które naprawdę powinny znajdować się w kompilatorze. Niektóre biblioteki boost są bardzo ogólne; nakłonienie ich do zrobienia tego, co chcesz, może być pracą, ale warto.
Poco to zbiór klas narzędzi, które zapewniają funkcjonalność dla niektórych bardzo konkretnych, typowych zadań. Uważam, że biblioteki są dobrze napisane i intuicyjne. Nie muszę poświęcać dużo czasu na studiowanie dokumentacji lub pisanie głupich programów testowych. Obecnie używam Loggera, XML, Zip i Net / SMTP. Zacząłem używać Poco, kiedy libxml2 po raz ostatni mnie zirytowało. Są inne klasy, których mógłbym użyć, ale nie próbowałem, np. Data :: MySQL (jestem zadowolony z mysql ++) i Net :: HTTP (jestem zadowolony z libCURL). W końcu wypróbuję resztę Poco, ale w tym momencie nie jest to priorytet.