es
Feedback
C++ Academy

C++ Academy

Ir al canal en Telegram

По всем вопросам- @workakkk РКН: clck.ru/3FmxJF #VRHSZ

Mostrar más

📈 Análisis del canal de Telegram C++ Academy

El canal C++ Academy (@cpluspluc) en el segmento lingüístico de Ruso es un actor destacado. Actualmente la comunidad reúne a 15 688 suscriptores, ocupando la posición 8 342 en la categoría Tecnologías y Aplicaciones y el puesto 42 835 en la región Rusia.

📊 Métricas de audiencia y dinámica

Desde su creación el невідомо, el proyecto ha mostrado un crecimiento acelerado, reuniendo a 15 688 suscriptores.

Según los últimos datos del 04 junio, 2026, el canal mantiene una actividad estable. En los últimos 30 días la variación de miembros fue de -47, y en las últimas 24 horas de -2, conservando un alto alcance.

  • Estado de verificación: No verificado
  • Tasa de interacción (ER): El promedio de interacción de la audiencia es 32.28%. Durante las primeras 24 horas tras publicar, el contenido suele obtener 7.22% de reacciones respecto al total de suscriptores.
  • Alcance de las publicaciones: Cada publicación recibe en promedio 5 064 visualizaciones. En el primer día suele acumular 1 133 visualizaciones.
  • Reacciones e interacción: La audiencia responde de forma activa: el promedio de reacciones por publicación es 29.
  • Intereses temáticos: El contenido se centra en temas clave como c++, github, linux, api, архитектура.

📝 Descripción y política de contenido

El autor describe el recurso como un espacio para expresar opiniones subjetivas:
По всем вопросам- @workakkk РКН: clck.ru/3FmxJF #VRHSZ

Gracias a la alta frecuencia de actualizaciones (últimos datos recibidos el 05 junio, 2026), el canal mantiene la vigencia y un amplio alcance. La analítica demuestra que la audiencia interactúa activamente con el contenido, lo que lo convierte en un punto de referencia dentro de la categoría Tecnologías y Aplicaciones.

15 688
Suscriptores
-224 horas
-377 días
-4730 días
Archivo de publicaciones
Деннис Ритчи создал C в начале 1970-х. • Без Google. • Без Stack Overflow. • Без GitHub. • Без Claude, Cursor и Codex. • Без
Деннис Ритчи создал C в начале 1970-х. • Без Google. • Без Stack Overflow. • Без GitHub. • Без Claude, Cursor и Codex. • Без венчурного капитала, вирусного запуска и TED Talk. Просто Bell Labs, терминал и задача: сделать язык, на котором можно писать операционные системы нормально. Он создал язык, который помещался в килобайты. Через 50 лет на его идеях всё ещё держится огромная часть цифрового мира: - Linux kernel - Windows - macOS - iOS - Android - embedded-системы - базы данных - компиляторы - сетевой стек - железо, которое работает годами без перезагрузки C стал не просто языком. Он стал нижним слоем современной разработки. Python, Java, JavaScript, Go, Rust, C++ - все они так или иначе живут в тени решений, которые Ритчи заложил десятилетия назад. Он умер в 2011 году, почти одновременно со Стивом Джобсом. Джобс получил обложки. Ритчи получил тишину. Но если ты когда-либо писал код, запускал приложение, открывал браузер или держал смартфон в руках, ты почти точно пользовался миром, который помог построить Деннис Ритчи. Некоторые люди создают продукты. Ритчи создал фундамент.

Этот проект содержит исходный код игр Command & Conquer: Tiberian Dawn и Command & Conquer: Red Alert, выпущенных как часть сборника Command & Conquer Remastered Collection. Код распространяется под лицензией GPL v3 и предоставляет возможность энтузиастам и разработчикам модифицировать, изучать и использовать движок в рамках условий лицензии. В проекте используется C++ и множество современных практик разработки, а также система сборки CMake. Репозиторий включает: * Исходный код движка на C++ * Документацию по сборке * Скрипты для интеграции с игрой * Исторический контекст разработки Проект ориентирован на обучение, поддержку моддинга и развитие сообщества вокруг классических RTS-игр. https://github.com/electronicarts/CnC_Remastered_Collection

В C есть трюк, который выглядит странно, но постоянно встречается в системном коде. Структура может заканчиваться массивом бе
В C есть трюк, который выглядит странно, но постоянно встречается в системном коде. Структура может заканчиваться массивом без размера: `int data[];` Это называется flexible array member. Смысл простой: размер массива задаётся не в объявлении структуры, а в момент выделения памяти. Вместо двух отдельных аллокаций: - отдельно структура; - отдельно массив данных; можно сделать одну непрерывную область памяти: - заголовок объекта; - сразу за ним данные переменной длины. Пример: `malloc(sizeof(Array) + n * sizeof(a->data[0]))` Так объект становится компактнее, кэш работает лучше, меньше указателей, меньше фрагментации памяти и меньше накладных расходов на аллокации. Эта техника стандартизирована в C99 и активно используется в низкоуровневом коде, включая части Linux kernel. Но есть важный нюанс: flexible array member должен быть последним полем структуры. После него уже нельзя добавлять другие поля, потому что массив физически “растёт” за пределы самой структуры. C снова напоминает: язык почти ничего не скрывает, зато даёт прямой контроль над тем, как объект лежит в памяти.

Doom запускался на 486-м процессоре с 4 МБ RAM ещё в 1993 году. И самое интересное - весь мир игры рендерился через BSP-дерев
Doom запускался на 486-м процессоре с 4 МБ RAM ещё в 1993 году. И самое интересное - весь мир игры рендерился через BSP-дерево, binary space partition tree. Джон Кармак строил это дерево при загрузке уровня, а не на каждом кадре. Карта заранее делилась на области, а порядок отрисовки уже был сохранён внутри структуры. Во время рендера движку не нужно было каждый раз заново вычислять видимость. Он просто проходил по дереву. Как это работало: • BSP-узел делит пространство на переднюю и заднюю часть • если игрок спереди - сначала рендерится переднее поддерево • если игрок сзади - сначала рендерится заднее поддерево • порядок уже задан самой структурой дерева Именно поэтому Doom не нуждался в z-buffer. Корректная видимость появлялась не из трюков с глубиной, а из самого порядка обхода BSP-дерева. Очень маленький код, но за ним стоит одна из самых красивых инженерных идей в истории игровых движков.

⚡️ 1Password поднял цену индивидуального плана до $47,88 в год. LastPass Premium стоит $36 в год. Dashlane Premium - $59,88 в
⚡️ 1Password поднял цену индивидуального плана до $47,88 в год. LastPass Premium стоит $36 в год. Dashlane Premium - $59,88 в год. И все это за одну базовую задачу: хранить строки текста в зашифрованном хранилище. На этом фоне KeePassXC выглядит почти как антидот. Это open-source парольный менеджер, который не требует аккаунта, подписки и доверия к очередному облачному сервису. Ваши пароли хранятся в одном .kdbx файле, который контролируете вы сами. Что внутри: - AES-256 - Argon2 - автозаполнение в браузерах - TOTP/HOTP коды - поддержка YubiKey и OnlyKey - passkeys - SSH agent для разработчиков - Windows, macOS, Linux и BSD - синхронизация через Dropbox, OneDrive, Nextcloud, Syncthing, флешку или что угодно Главная магия в простоте: база паролей - это просто файл. Если ваш облачный диск взломают, злоумышленник получит не список паролей, а зашифрованный blob. Мастер-пароль не уходит с вашего устройства. KeePassXC развивается с 2016 года, имеет почти 27 тысяч звезд на GitHub, сотни контрибьюторов и полностью открытую GPLv2-лицензию. На фоне индустрии, где парольные менеджеры превращаются в еще одну подписку, KeePassXC напоминает старую добрую идею: - ваши пароли - ваш файл - ваш контроль https://github.com/keepassxreboot/keepassxc

🔥 C почти 20 лет притворялся, что RAII ему не нужен В C++ деструкторы появились ещё в 1985 году. А C-разработчики десятилети
🔥 C почти 20 лет притворялся, что RAII ему не нужен В C++ деструкторы появились ещё в 1985 году. А C-разработчики десятилетиями продолжали писать ручной cleanup через goto, free, fclose и аккуратные прыжки в конец функции. Но у GCC уже давно есть почти RAII-подобный механизм: __attribute__((cleanup)) Он вызывает указанную функцию автоматически, когда переменная выходит из области видимости. Причём срабатывает не только в конце функции, но и при раннем return. Пример:

__attribute__((cleanup(fclosep))) FILE *f = fopen(path, "r");
__attribute__((cleanup(freep))) char *buf = malloc(4096);

if (!f || !buf)
    return -1;
После выхода из функции fclose и free вызовутся автоматически. Эту технику используют в проектах вроде libvirt и QEMU, а в Linux kernel похожий подход начали активно принимать с 2023 года. C всё ещё остаётся C, но иногда в нём внезапно появляются фичи, из-за которых старый goto cleanup выглядит как археология.

Коллекция библиотек и фреймворков для C++ Список удивительных фреймворков, библиотек, ресурсов и блестящих вещей на C++ (или C). Вдохновленный удивительными... вещами. https://github.com/fffaraz/awesome-cpp

🚀 Высокопроизводительная библиотека CNN на C++20 MetalNet — это заголовочная библиотека для свёрточных нейронных сетей, напи
🚀 Высокопроизводительная библиотека CNN на C++20 MetalNet — это заголовочная библиотека для свёрточных нейронных сетей, написанная на C++20. Она обеспечивает производительность, сопоставимую с популярными фреймворками, благодаря нулевым накладным расходам, использованию DAG для автоматического дифференцирования и оптимизации под архитектуру процессора. 🚀 Основные моменты: - Заголовочная библиотека без внешних зависимостей - Поддержка AVX2 и OpenMP для многопоточности - Имплицитная свёртка GEMM без избыточного использования памяти - Оптимизированные алгоритмы для повышения производительности - Сравнения производительности с PyTorch 📌 GitHub: https://github.com/KunwarPrabhat/CustomCNN #cpp

C++ разработчики в 2ГИС Сейчас открыто две вакансии в разные команды: — Middle C++ Developer в команду Transport Core Делаем
C++ разработчики в 2ГИС Сейчас открыто две вакансии в разные команды: — Middle C++ Developer в команду Transport Core Делаем транспортный движок 2ГИС: маршруты, графы, расчёты и highload-обработку данных. Team Lead C++ в команду 3D Карты Ищем сильного C++ разработчика на роль играющего тренера: часть времени — разработка, остальное — управление небольшой командой, техрешения и развитие процессов. Важно: опыт именно в графике не обязателен. Если ты сильный плюсовик и хочешь попробовать себя в 3D-направлении — откликайся! Что общего: — современный C++ — сложные инженерные задачи — большие объёмы данных — сильные команды без лишней бюрократии Можно удалённо Вакансии: Middle C++ Developer — Transport Core Team Lead C++ — 3D Карты Другие инженерные инсайты от 2ГИС → в Telegram-канале RnD

🖥 Создатель C++ разнёс вайбкодинг: “сеньоры не хотят разгребать этот мусор” Бьёрн Страуструп, легендарный создатель C++, в новом двухчасовом интервью резко прошёлся по вайбкодингу. Главная претензия простая: сгенерированный код пока слишком часто выглядит красиво только на демке. В реальном проекте он приносит баги, раздувает кодовую базу, плодит уязвимости и плохо поддаётся нормальной проверке. Особенно больно это бьёт по опытным разработчикам. Им потом приходится не “магически ускоряться с ИИ”, а читать, чинить и переписывать слоп, который кто-то нагенерировал за пять минут. Похожая история уже достала и Линуса Торвальдса. Его буквально завалили кривыми AI-отчётами по ядру Linux: вроде бы люди “помогают”, а на практике создают шум, который мешает настоящей разработке. И вот тут неприятный вывод для рынка: ИИ не отменяет инженерное мышление. Он просто делает слабого разработчика быстрее. А если человек не понимает архитектуру, безопасность, тесты и границы задачи, то вайбкодинг превращается не в ускорение, а в генератор технического долга. Сеньоры не боятся ИИ. Они просто не хотят провести остаток карьеры, разгребая чужой промптованный мусор.

⚡️ C тоже умеет автоматическую очистку ресурсов. Просто почти никто об этом не знает В C нет RAII как в C++ и нет defer как в
⚡️ C тоже умеет автоматическую очистку ресурсов. Просто почти никто об этом не знает В C нет RAII как в C++ и нет defer как в Go. Поэтому код с ресурсами часто превращается в набор goto cleanup, ручных free() и риска забыть освободить память на одной из веток. Но у GCC и Clang есть полезное расширение - __attribute__((cleanup)). Оно позволяет повесить cleanup-функцию на локальную переменную. Когда переменная выходит из scope, компилятор сам вызывает эту функцию. Пример:

void autofree(void *p) {
    free(*(void **)p);
}

#define auto __attribute__((cleanup(autofree)))

int main() {
    auto char *buf = malloc(1024);

    // buf будет автоматически освобождён
    // при выходе из scope

    return 0;
}
Это просто автоматический вызов cleanup-функции в конце области видимости. Почему это удобно: • меньше ручных free() • меньше утечек на early return • чище код с несколькими ресурсами • проще писать функции без огромного cleanup: блока Но есть важный нюанс: это не стандартный C, а расширение компилятора. В portable-коде так лучше не делать, а вот в системном коде под GCC/Clang - вполне рабочий инструмент. C не стал безопасным языком от одной такой фичи. Но иногда он умеет больше, чем от него ожидают.

В C код может выполниться ещё до `main()` В Linux и GCC есть constructor-функции - они запускаются автоматически до входа в m
В C код может выполниться ещё до `main()` В Linux и GCC есть constructor-функции - они запускаются автоматически до входа в main(). Выглядит почти как магия: __attribute__((constructor)) Такую функцию не нужно вызывать вручную. Компилятор сам пометит её как код, который должен выполниться при старте программы. Где это используется: - инициализация глобального состояния - подготовка shared libraries - регистрация плагинов - настройка runtime-окружения - выполнение служебного кода до основной логики Именно поэтому в C-программе не всегда всё начинается с main(). Иногда до него уже кто-то успел поработать.

🚀 Мощный панель управления для игровых серверов MCSManager — это современная веб-панель для управления серверами Minecraft,
🚀 Мощный панель управления для игровых серверов MCSManager — это современная веб-панель для управления серверами Minecraft, Steam и другими играми. Она позволяет легко управлять несколькими серверами с одного интерфейса, предлагая надежную систему разрешений для пользователей и поддержку многоязычности. 🚀 Основные моменты: - Быстрая установка игровых серверов с помощью встроенного магазина приложений. - Поддержка множества игр, включая Terraria и Project Zomboid. - Настраиваемый интерфейс с возможностью перетаскивания элементов. - Поддержка Docker и коммерческого хостинга. - Легковесная архитектура на TypeScript. 📌 GitHub: https://github.com/MCSManager/MCSManager

🧩 ACAV: Интерактивный просмотр AST для C/C++ проектов ACAV (Aurora Clang AST Viewer) — это настольное приложение для визуали
🧩 ACAV: Интерактивный просмотр AST для C/C++ проектов ACAV (Aurora Clang AST Viewer) — это настольное приложение для визуализации абстрактных синтаксических деревьев (AST) в проектах на C, C++ и Objective-C. Оно позволяет пользователям исследовать представление исходного кода Clang, перемещаться между местоположениями кода и узлами AST, а также изучать структуру программ. 🚀 Основные моменты: - Интерактивная визуализация AST для языков семейства C. - Двусторонняя навигация между исходным кодом и узлами AST. - Просмотр файлового дерева для исходных файлов и заголовков. - Поиск по исходному коду и узлам AST. - Поддержка нативных и контейнеризованных рабочих процессов для macOS и Linux. 📌 GitHub: https://github.com/uvic-aurora/acav #cpp

✔️ Одно слово в C, которое может ускорить ваш цикл В C есть ключевое слово restrict. Оно говорит компилятору простую, но очен
✔️ Одно слово в C, которое может ускорить ваш цикл В C есть ключевое слово restrict. Оно говорит компилятору простую, но очень важную вещь: «Эти указатели не пересекаются в памяти». Без restrict компилятор обязан быть осторожным. Он не знает, могут ли a, b и result указывать на один и тот же участок памяти. Поэтому он не всегда может агрессивно оптимизировать код. С restrict ситуация меняется: - компилятор уверен, что указатели не alias друг друга - цикл можно безопаснее векторизовать - загрузки и записи можно переупорядочивать - проще включать SIMD-инструкции - GCC и Clang получают больше свободы для оптимизаций Пример:

void add_arrays(int *restrict a,
                int *restrict b,
                int *restrict result,
                int n)
{
    for (int i = 0; i < n; i++)
        result[i] = a[i] + b[i];
}
Но есть важный момент. restrict - это обещание программиста компилятору. Если вы соврали и передали пересекающиеся массивы, поведение может стать неопределённым. Именно поэтому restrict полезен в участках кода, где вы точно контролируете память: численные вычисления, обработка массивов, графика, DSP, low-level performance-код. Иногда одно слово даёт компилятору больше информации, чем десяток ручных микрооптимизаций.

Сломал систему
Сломал систему

🖥 Курс «Git Pro: от первого коммита до уровня senior» - на Stepik project_final_v2_FINAL_truly_final - знакомо? Значит, пора
🖥 Курс «Git Pro: от первого коммита до уровня senior» - на Stepik project_final_v2_FINAL_truly_final - знакомо? Значит, пора. Большинство разработчиков знают 5 команд Git и боятся шестую. Коммитят в main, гуглят «how to undo» и копируют папку «на всякий случай». Это не работа - это выживание. После курса вы: — делаете rebase, не задерживая дыхание; — разбираете конфликт на 200 файлов по алгоритму; — возвращаете «потерянные навсегда» коммиты за 30 секунд через reflog; — пишете историю, которую не стыдно показать на code review. Git Flow, trunk-based, Pull Request, защита веток, CI/CD-хуки — всё, что отличает джуна от senior в командной работе. Скидка 53%, 48 часов: https://stepik.org/course/284799/

Самый знаменитый комментарий в истории C. Его оставил разработчик id Software в 1999 году в коде Quake III Arena. Одна строка
Самый знаменитый комментарий в истории C. Его оставил разработчик id Software в 1999 году в коде Quake III Arena. Одна строка с приведением указателя, один битовый сдвиг, одно вычитание - и на выходе получается приближение к 1/√x. Просто битовые трюки, магическая константа и финальный шаг уточнения методом Ньютона. А комментарий в коде был максимально честный: what the f***?

🚁Высокопроизводительная библиотека H.A.L.O. для автономных дронов H.A.L.O. Aegis Omniverse - это библиотека на C++20, предна
🚁Высокопроизводительная библиотека H.A.L.O. для автономных дронов H.A.L.O. Aegis Omniverse - это библиотека на C++20, предназначенная для навигации и защиты автономных спасательных дронов в сложных условиях. Она сочетает в себе передовые методы поиска пути и тактическое избегание препятствий с реакцией менее чем за наносекунду. 🚀 Основные моменты: - Высокая производительность с использованием JPS+ для навигации. - 10-слойная система защиты для мгновенного реагирования. - Оптимизация под ARM NEON и SSE4 для максимальной скорости. - Открытый исходный код для гуманитарных миссий. 📌 GitHub: https://github.com/Nguyenidkskibidi/halo-aegis-core #cpp

⚙️ clap: современный парсер аргументов командной строки для C++26 clap предлагает удобный способ парсинга аргументов командно
⚙️ clap: современный парсер аргументов командной строки для C++26 clap предлагает удобный способ парсинга аргументов командной строки с использованием рефлексии. Он поддерживает различные типы аргументов, включая обязательные и необязательные, а также предоставляет возможность задавать значения по умолчанию и использовать переменные окружения. 🚀Основные моменты: - Поддержка значений по умолчанию и необязательных аргументов - Краткие аргументы и комбинированные флаги - Аннотации для описаний полей - Автоматическое преобразование имен в kebab-case - Простота использования с рефлексией 📌 GitHub: https://github.com/nathan-baggs/clap #cpp