awesome-modern-cpp README

The project's README from github.com/rigtorp/awesome-modern-cpp. As one markdown file: README.md.



Awesome Modern C++

A collection of resources on modern C++.

The goal is to collect a list of resources to help people learn about and leverage modern C++11 and beyond.

Contributing

To add, remove or change things on the list: please submit a pull request to the GitHub repository.

Books

For a comprehensive guide to C++ books see the Stackoverflow Definitive C++ Book Guide and List.

Community

Find the latest C++ news and updates:

Listen to the latest C++ podcasts:

Read the latest C++ standard proposals:

Discuss everything related to C++:

Ask your C++ questions:

Maybe your question was already answered in a FAQ?:

Go to one of the many C++ conferences:

Find C++ user groups:

Talks

TODO curate list of good talks on how to simplify code using C++11/17/20 features

Start with SG20 Education and Recommended Videos for Teaching C++.

Blogs

Websites

Project Starter Templates

Libraries

This is not supposed to be a comprehensive list of all C and C++ libraries. It is a list of high-quality modern libraries with general applicability (serialization, database, testing, etc) or high-quality libraries with novel use of new C++ features.

Kitchensink / Framework

Testing

Benchmarking

Libraries and frameworks for creating micro-benchmarks.

Logging

Threading

Parsing & Serialization

String formatting & templating

Scripting

Web / HTTP

Database

BioC++

Misc

awesome-modern-cpp (rigtorp/awesome-modern-cpp)

Searching Database…

Что это такое?Подборка ресурсов для изучения и использования современного C++ (C++11 и новее): книги, доклады, блоги, сайты, стартовые шаблоны проектов и качественные библиотеки.
Это учебник или просто список ссылок?Это awesome-список: подобранный каталог внешних книг, докладов, блогов, сайтов и библиотек, а не сам учебник.
Как устроен список?Он разбит на разделы: Книги, Сообщество, Доклады, Блоги, Сайты, Стартовые шаблоны проектов и Библиотеки (которые, в свою очередь, делятся на Тестирование, Бенчмаркинг, Логирование, Многопоточность, Парсинг и сериализация, Веб/HTTP, База данных, Разное и т. д.).
С чего новичку начать?В разделе «Книги» есть базовые издания, например «A Tour of C++» и «The C++ Programming Language» Бьярне Страуструпа, а также «Effective Modern C++» Скотта Мейерса для практических советов.
Проверяются ли записи и обновляется ли список?Записи добавляются через пул-реквесты от участников, поэтому качество подборки зависит от вкладчиков; в разделе «Доклады» даже есть открытая пометка TODO о том, что нужно подобрать больше материалов, что намекает на неполноту отдельных частей.
Для кого этот список?Для разработчиков на C++, которые хотят перейти от старых стилей программирования к современным идиомам C++11/14/17/20, библиотекам и инструментам.
Какие библиотеки есть в разделе «Библиотеки»?Там есть тестирование (Catch, doctest, Googletest), бенчмаркинг (Google Benchmark, nanobench), логирование (spdlog), многопоточность (Cpp-Taskflow, TBB), JSON и сериализация (nlohmann/json, cereal, simdjson), веб- и HTTP-фреймворки (Drogon, Crow, cpr), базы данных (sqlpp11, libpqxx) и другие.
Есть ли здесь доклады и видео?Да, там есть ссылки на доклады с CppCon и C++Now от таких спикеров, как Бьярне Страуструп, Герб Саттер и Скотт Мейерс, а также на серию видео C++ Weekly от Джейсона Тёрнера.
Есть ли здесь стартовые шаблоны проектов?Да, есть шаблоны ModernCppStarter, modern-cpp-template и cmaketemplate, которые создают каркас проекта на C++ с уже настроенными CMake, CI и clang-format.
Где я могу обсудить современный C++ с другими разработчиками?В разделе «Сообщество» указаны r/cpp, рабочее пространство C++ в Slack, подкасты CppCast и Cpp.chat, а также различные пользовательские группы и конференции по C++.
Creator
rigtorp
Size
0.2 MB
Stars
13.2K
Updated
CommitOct 05
Age
10y
Commits · 90 Days