Библиотека C/C++ разработчика | cpp, boost, qt
21K subscribers
1.56K photos
40 videos
16 files
3.74K links
Все самое полезное для плюсовика и сишника в одном канале.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/d6cd2932

Наши каналы: https://yangx.top/proglibrary/9197

РКН: https://gosuslugi.ru/snet/67a5bac324c8ba6dcaa1ad17
加入频道
💻🔍💼 Кризис IT-рынка: как джуны и кадровый голод меняют правила игры

В условиях нехватки опытных специалистов и наплыва джунов, IT-компании вынуждены искать нестандартные подходы к найму. Рассмотрим основные тренды и стратегии адаптации рынка.

Читать статью

#почитать
🧑‍💻 Статьи для IT: как объяснять и распространять значимые идеи

Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.

Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.

Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.

👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
Привет, друзья! 👋

Мы хотим обсудить важную тему — токсичность в среде разработчиков и значимость поддержки и наставничества. Нам интересно узнать ваше мнение и опыт! Поделитесь своими мыслями, и самые полезные советы мы включим в нашу статью. Вот несколько вопросов для вас:

🤔 Приходилось ли вам сталкиваться с токсичными коллегами на работе? Как вы справлялись с этой ситуацией?

🌟 Какие качества вы считаете важными для хорошего наставника в IT-сфере?

💡 Какие советы вы бы дали тем, кто хочет создать более поддерживающую и позитивную рабочую атмосферу?

Спасибо за ваше участие! Ваши ответы помогут сделать рабочую среду лучше для всех. 🚀
В играх часто приходится мириться с возможностями, которые предлагает железо и прибегать к различным уловкам, которые позволяют создавать уникальные игровые миру.

В видео нам расскажут как дела обстоят с применением C++ в геймдеве.

На примере трех сравнительно легких для восприятия сюжетов рассматривается, как так складывается, что стиль имеет тенденцию к C99 с классами.

Рассматриваться следующие сюжеты использования C++:
- Взаимодействие с другими языками (interop w/scripts)
- Многоплатформенность (compiler zoo, determinism, float)
- Многопоточность (pthread into OOP vs DOD, ECS, etc.)

👉 Видео
У некоторых людей может сжиться впечатление, что массивы из Си работают быстрее, чем C++ массивы. А ведь нету никаких оснований так думать.

В статье как раз и развенчиваться это несправедливый миф😉

👉 Статья
🤖 Краткий курс компьютерной графики

Цикл статей об работе библиотеки рендеринга, такой как OpenGL.
Цель этого цикла — показать, как работает OpenGL, написав его клон самостоятельно. Поможет людям, которые не могут преодолеть первоначальный барьер обучения OpenGL/DirectX.

Курс состоит из шести лекции:

- Статья 1: алгоритм Брезенхэма
- Статья 2: растеризация треугольника + отсечение задних граней
- Статья 3: Удаление невидимых поверхностей: z-буфер
- Статья 4: Необходимая геометрия: фестиваль матриц
- Статья 5: Пишем шейдеры под нашу библиотеку
- Статья 6: Чуть больше, чем просто шейдер: просчёт теней

👉 Ссылка
Привет, друзья! 👋

Мы хотим обсудить важную тему — токсичность в среде разработчиков и значимость поддержки и наставничества. Нам интересно узнать ваше мнение и опыт! Поделитесь своими мыслями, и самые полезные советы мы включим в нашу статью. Вот несколько вопросов для вас:

🤔 Приходилось ли вам сталкиваться с токсичными коллегами на работе? Как вы справлялись с этой ситуацией?
🌟 Какие качества вы считаете важными для хорошего наставника в IT-сфере?
💡 Какие советы вы бы дали тем, кто хочет создать более поддерживающую и позитивную рабочую атмосферу?
Спасибо за ваше участие! Ваши ответы помогут сделать рабочую среду лучше для всех. 🚀
😎 Что такое std::sample?

std::sample — алгоритм который позволяет брать случайный элемент из диапазона. Был введён в C++ 17.

Описание его функциональности:

1. Выбирает n уникальных элементов случайным образом из входного диапазона
2. Копирует выбранные элементы в выходной диапазон
3. Сохраняет относительный порядок выбранных элементов

Синтаксис:

std::sample(input_begin, input_end, output_begin, n, generator);

- input_begin и input_end — итераторы входного диапазона
- output_begin — итератор выходного диапазона
- n — количество элементов для выборки
- generator — генератор случайных чисел
Привет, друзья! 👋

Мы готовим статью о распространенных ошибках в карьере программиста и хотели бы услышать ваше мнение! Поделитесь своими мыслями и опытом, и самые полезные советы мы включим в нашу статью. Вот несколько вопросов для вас:

🤔 С какими ошибками в своей карьере программиста вы сталкивались? Как вы их преодолели?
📚 Какие советы вы бы дали начинающим разработчикам, чтобы избежать распространенных ловушек в программировании?
🖥️ Что, по вашему мнению, важно учитывать при планировании своей карьеры в IT, чтобы минимизировать сожаления в будущем?

Спасибо за ваше участие! 🚀
👁‍🗨 Как найти среднее значения в C++?

В C++20 появилась функция std::midpoint. Она как раз и находит среднее между двумя числами или указателями

Примеры использования:
- Для чисел: если у вас есть числа 10 и 20, std::midpoint вернет 15
- Для указателей: если у вас есть два указателя, std::midpoint найдет указатель находящийся между ними


👉
Документация
⚙️ Подпишись на нашу еженедельную email-рассылку, чтобы быть в курсе последних открытий и тенденций в мире бэкенда.

В еженедельных письмах ты найдешь:
● Языки программирования и фреймворки для бэкенда
● Архитектура и проектирование серверных приложений
● Базы данных и управление данными
● Безопасность и защита данных
● Облачные технологии и DevOps
● API и интеграции
● Тестирование и отладка
● Инструменты и утилиты для бэкенд-разработчиков
● Лучшие практики и паттерны проектирования

👉Подписаться👈
📖 Обзор книги «Грокаем алгоритмы», Адитья Бхаргава

Направление: #proglib_algorithms
Уровень: #proglib_junior

Автор применяет уникальный визуальный подход, с помощью которого объясняет базовые концепции, такие как сортировка, рекурсия, алгоритм Дейкстры, и многие другие. Благодаря большому количеству иллюстраций и практическим примерам, книга превращается в практическое руководство, особенно полезное для тех, кто только начинает своё знакомство с алгоритмами. Все примеры адаптированы под Python 3, что делает их актуальными для современных разработчиков.

💬 Что говорят люди:

Читатели восхищаются доступностью книги и тем, насколько легко автор объясняет сложные темы. Визуальный стиль делает её отличным стартом для изучения алгоритмов, хотя для опытных разработчиков книга может не предложить глубоких и сложных тем.

Плюсы:

- Иллюстрации всё решают — если вам сложно понять текстовое объяснение, то более 400 наглядных схем точно помогут понять сложные алгоритмы.
- Понятно даже без математики — никакой сложной терминологии и математических уравнений. Бхаргава берёт сложные темы и объясняет их простым языком, делая алгоритмы доступными даже тем, кто не любит математику​.
- Практичность на первом месте — каждый алгоритм сопровождается кодом на Python 3, что помогает сразу применять изученное в реальных задачах​.

Минусы:

- Для профи маловато огонька — опытные разработчики могут почувствовать нехватку более продвинутых и глубоких тем.
- Алгоритмы, которых не хватает — некоторые читатели отмечают, что в книге хотелось бы видеть больше сложных и интересных алгоритмов.

🖊 Об авторе:

Адитья Бхаргава — опытный инженер-программист с большим стажем работы в ведущих IT-компаниях. Он известен своим умением объяснять сложные технические темы простым и понятным языком, что делает его книги популярными среди программистов любого уровня.

Скидка 25% по промокоду: proglib

Купить книгу
Please open Telegram to view this post
VIEW IN TELEGRAM
😮 SQL: от Тетриса до ИИ — неожиданные возможности языка баз данных

Долгое время SQL использовали лишь для запросов и изменения записей в базах данных — для полноценного программирования в привычном смысле слова он не подходил. Однако добавление рекурсивных общих табличных выражений (CTE) сделало SQL полным по Тьюрингу. Рекурсивные CTE состоят из двух частей:

• Нерекурсивная часть (базовый случай) — создает начальные данные.
• Рекурсивная часть — может выполняться много раз, каждый раз используя результат предыдущего шага.

Благодаря CTE на SQL можно при желании реализовать любой алгоритм. Энтузиасты уже сделали:

Визуализацию множества Мандельброта с помощью ASCII-графики.
3D-движок для рисования объемных фигур.
GPT на 500 строках SQL-кода. Подробная статья о реализации этого проекта опубликована здесь.
Трассировку лучей (это метод создания реалистичных изображений).

На прошлой неделе коллекция крутых SQL-проектов пополнилась еще одной интересной разработкой — версией «Тетриса».

Эта реализация демонстрирует несколько нестандартных SQL-техник, о которых стоит знать, даже если вы используете SQL только по прямому назначению:

• игровой цикл;
• вывод игры;
• пользовательский ввод;
• решение проблемы изоляции данных;
• предотвращение кэширования.

Для управления состоянием игры и обработки игровых событий используются подзапросы и агрегатные функции.

🔗 Подробнее читайте в статье
🔗 Зеркало
Большой эпизод подкаста apakhomov про редакторы кода вместе с создателем самого популярного шрифта среди программисов — FiraCode.

Содержание:

- Введение
- Эргономика рабочего места
- Vim
- Что не так с программированием в терминале
- Расширяемость редакторов
- IntelliJ IDEA
- Sublime Text
- Zed
- Fleet

👉 Ссылка