Информация об изменениях

Сообщение Re[2]: Haters gonna hate but with proofs от 13.01.2019 18:56

Изменено 13.01.2019 19:18 ononim

Re[2]: Haters gonna hate but with proofs
scf>- бедная стандартная библиотека. Хочется нормальную юникодную строку
std::wstring

scf>с поддержкой кодировок,

std::codecvt&co

scf>регулярок

std::regex&co

scf>и богатого набора операций.

http://memesmix.net/media/created/8hjlm0.jpg

scf>Хочется качественные многопоточные коллекции.

Берем обычный качественный set, оборачиваем операции с ним mutex-ом и получаем качественный многопоточный set.

scf>Хочется нормальные функции для работы со временем с поддержкой часовых поясов. и т.д. и т.п.

std::chrono::time_zone

scf>- феерическая сложность языка и сложность написания качественного (устойчивого к утечкам памяти и exception-safe) кода

Решается RAII и умными указателями, правда постоянно приходится объяснять шериданам что они не правы.

scf>- значительно меньшая терпимость программы к ошибкам программиста — где managed язык отделается exception-ом, программу на C++ лучше прибить. Это ограничивает применимость в серверных приложениях

В результата java приложения этими ошибками сыпят. Ну а че — ведь можно же не прибиваться.

scf>- типы ошибок, которых нет в managed языках: порча памяти,

Подавляющее ошибок порча памяти в современном С++ коде (см через пункт выше) происходят изза race condition. И тут java ничем не лучше С++.

scf>утечки памяти

Ну да конечно. А потом удивляются.

scf>- менее развитый тулинг для отладки, логгирования и обнаружения проблем

На вкус и цвет.. Я раньше юзал 100500 логгеров, писал свои, с преферансом и поэтессами, теперь все больше довольствуюсь стандартным выводом.
Re[2]: Haters gonna hate but with proofs
scf>- бедная стандартная библиотека. Хочется нормальную юникодную строку
std::wstring

scf>с поддержкой кодировок,

std::codecvt&co

scf>регулярок

std::regex&co

scf>и богатого набора операций.

http://memesmix.net/media/created/8hjlm0.jpg

scf>Хочется качественные многопоточные коллекции.

Берем обычный качественный set, оборачиваем операции с ним mutex-ом и получаем качественный многопоточный set. Ну и подсказывают выше что в С++17 оно есть, но я еще это не юзал.

scf>Хочется нормальные функции для работы со временем с поддержкой часовых поясов. и т.д. и т.п.

std::chrono::time_zone

scf>- феерическая сложность языка и сложность написания качественного (устойчивого к утечкам памяти и exception-safe) кода

Решается RAII и умными указателями, правда постоянно приходится объяснять шериданам что они не правы.

scf>- значительно меньшая терпимость программы к ошибкам программиста — где managed язык отделается exception-ом, программу на C++ лучше прибить. Это ограничивает применимость в серверных приложениях

В результата java приложения этими ошибками сыпят. Ну а че — ведь можно же не прибиваться.

scf>- типы ошибок, которых нет в managed языках: порча памяти,

Подавляющее ошибок порча памяти в современном С++ коде (см через пункт выше) происходят изза race condition. И тут java ничем не лучше С++.

scf>утечки памяти

Ну да конечно. А потом удивляются.

scf>- менее развитый тулинг для отладки, логгирования и обнаружения проблем

На вкус и цвет.. Я раньше юзал 100500 логгеров, писал свои, с преферансом и поэтессами, теперь все больше довольствуюсь стандартным выводом.