C++ дайджест № 3: Управління пам’яттю та алгоритми

Про управління пам’яттю, алгоритми та структури даних, а також трошки історії алгоритмів та ОС Unix, CppCon 2015 та інше.

Алгоритми та структури даних

Як написати константний вираз для обчислення натурального логарифма на C++.

Gorilla — архітектура швидкої, масштабованої бази даних для роботи з часовими рядами в пам’яті — наукова стаття від працівників Facebook Inc.

Відео

Jonathan Blow — роздуми про те, яким повинна бути нова мова програмування для ігор. Відео достатньо старе, але варте уваги. Автор дискутує про фундаментальні проблеми C++, а також аналізує, які альтернативи пропонують «нові» мови програмування.

CppCon 2015: Scott Wardle: «Пам’ять та відлагоджування коду на C++ в Electronic Arts».

Frameworks, Tools & Services

Amazon випустив AWS SDK для C++ після багатьох років розробки. Як заявляють програмісти — для розробників ігор. SDK інтегрується з STL, підтримує стандарт C++11 та багато іншого.

ConcurrencyKit — бібліотека, що реалізує примітиви, неблокуючі структури даних та безпечний доступ до пам’яті на С.

Jim Springfield про те, як Microsoft збирається «омолодити» свій C/C++ компілятор.

Модульне тестування Embedded C додатків за допомогою Ceedling.

Нарешті і в C++ світі почали з’являтись достойні менеджери пакетів. Прикладом є свіжий qpm.io — Qt Package Manager. А тут — анонс.

Object-Oriented Design

Реалізація шаблону проектування Dependency Injection на C++ з використанням Variadic Templates.

Техніки об’єктно-орієнтованої розробки на С, а також генератор boilerplate-коду.

Stupid Template Tricks: Template Assembler.

Управління пам’яттю

ManagedC — цікава наукова стаття про те, як організувати memory-safe виконання C коду на JVM.

Joint Allocations in C++ - стаття про те, як уникати сегментації пам’яті при роботі з комплексними об’єктами.

Нові елементи С++ - конструктори переміщення та оператор присвоєння з переміщенням.

Eli Bendersky про організацію видалення деструкторів та віртуальну таблицю операторів в картинках.

Linux Insights — як Linux запускає і виконує програму. Четверта стаття циклу. Там же є посилання на інші статті (будуть корисні системним розробникам та просто розробникам додатків під Linux).

buldozer00: Stack, Heap, and Pool — реалізація пула пам’яті на C++11.

Alexander Krizhanovskiy: Швидкі алокатори пам’яті: Boost, nGinX, та Tempesta FW.

Nicole Hemsoth про те, що немає такої речі, як продуктивність роботи пам’яті.

Pet Monster Projects

Pierre Langlois з презентацією про те, як інтегрувати KDBus в Android.

Folly Futures — реалізація Futures для concurrency від Facebook.

Вступ до розробки ядра Linux, або стаття про те, як долучитись до проекту.

На Cassandra Summit показали ScyllaDB — Cassandra, переписана на С++, що працює в 10 разів швидше.

Трошки історії

Кращі алгоритми 20-го століття: топ-10 за версією редакції SIAM.

Для цінувальників антикваріату: «відреставровані» коди першої версії ОС Unix.

Інше

C++ Frequently asked Questions & Answers опубліковані на Github.

C++ Core Guidelines — рекомендації по розробці на C++ під редакцією Bjarne Stroustrup та Herb Sutter.

Andrew Chambers: Calling Conventions are hard та невеличка утиліта ABIFUZZ.

Часткове виконання байт-коду з використанням C++ шаблонів.

Herb Sutter: CppCon 2015, day 2: «Writing Good C++14... By Default».

Benny Kerr для MSDN magazine про корутіни в Visual C++ 2015.

Шютки

— Why do you call this version of software ’beta’?

— Coz it’s beta than nothing.

Bud представив холодильник, в якому не закінчується пиво :)


← Попередній випуск: C++ дайджест #2

Похожие статьи:
Узнали у ИТ-компаний историю появления животных в офисе, как им живется и что думают о питомцах ИТ-специалисты. Спойлер — все...
Ежегодно мы составляем портрет украинского айтишника — узнаём профессиональный опыт, привычки, образ жизни. Пришло время...
Цього року в Українському католицькому університеті (УКУ), що очолив рейтинг IT-вишів 2023 року від DOU, з’явиться докторська...
ASP.NET Новогоднее обновление в WebHooks. ASP.NET 5 переименовывают в ASP.NET Core 1.0. Разработка приложения на ReactJS + ASP.NET Web API в...
[Об авторе: Павел Обод — CEO Sloboda Studio, организатор бизнес IT конференции Outsource People] В конце апреля с нашей командой...
Яндекс.Метрика