Библиотека C/C++ разработчика | cpp, boost, qt
21K subscribers
1.57K 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
加入频道
🤖8️⃣ Mixtral 8x7B — новый ИИ

Это сет из 8 нейронок, которые работают вместе.
Благодаря этому снижаются галлюцинации, повышается точность работы.
Mixtral 8x7B — топовая из opensource, превышает по показателям Llama и не уступает GPT 3.5.
Мы подключаемся к Mixtral 8x7B через Llama CPP при помощи Google Colab.
При желании можно развернуть локально, или протестировать модель на сайте Hugging Face используя Hugging Chat.


Смотреть

#видео
💥🏃 Быстрый парсинг 8-битных целых чисел

В статье приводится разбор интересной задачи: вам нужно быстро распарсить 8-битные целые числа (0, 1, 2, …, 254, 255) из строки ASCII/UTF-8. Дана строка и её длина: например, ’22’ и длина 2.

Изучить решение

#гайд
🤔 Зачем избегать Pointer Arithmetic?

Выпущен бесплатный CLion с гораздо более быстрыми функциями core IDEA. CLion Nova — версия с языковым движком C++ от ReSharper, C++ и JetBrains Rider. Это обеспечивает:

👉 более высокую скорость выделения
👉 более отзывчивый UI
👉 значительно меньше фризов при рефакторинге

Смотреть видео

#видео
🤔 Очередной #дайджест по С++

🔹 Математическим путем — инженерный подкаст о научных технологиях в прикладных отраслях промышленности

🔹 SObjectizer Tales — обработка GUI из main

🔹 Just in case — Debian Bookworm поставляется с глючным GCC

🔹 День влюбленных в математику — мероприятие, командная игра по математике

🔹 Современный С++ в разработке девайсов — о том, как инструменты статического и динамического анализа помогают поддерживать единый стиль и высокое качество кода в проекте
🧑‍💻 Статьи для IT: как объяснять и распространять значимые идеи

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

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

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

👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
😎💪 Монады, обертки, std::expected: плюсы и минусы С++ 23 глазами практикующего разработчика

В видосе обсуждается, какие проблемы были закрыты, а какие создал новый стандарт языка. Спикер на примерах показал, как работает новая функциональность и в каких задачах можно применять фичи С++ 23. Его фавориты — монадический std::optional и std::expected, а удаленные опции aligned_storage и aligne_uninion спикер обещает помнить всегда.

Зачем смотреть: много практической информации — узнаете, как решать реальные задачи на С++ 23.

Смотреть

#видео
🧲 Magnet

Это минималистичный менеджер зависимостей для вашего следующего проекта на C++. 

🛠 Установка

Берем репозиторий: git clone https://github.com/futureblur/magnet.git --recursive

macOS:
▪️ Установите Homebrew
▪️ cd magnet/scripts && chmod +x ./macOSInstaller.sh
▪️ ▪️ Xcode: ./macOSInstaller.sh --xcode
▪️ ▪️ CLion (Ninja): ./macOSInstaller.sh --ninja

Windows:
▪️ Установите CMake
▪️ Запустите нужный установщик в magnet/scripts:
▪️▪️ Visual Studio 17: Дважды щелкните по WindowsInstaller (Visual Studio 17).bat
▪️▪️ CLion (Ninja): Дважды щелкните по WindowsInstaller (Ninja).bat

Linux:
▪️ Установите следующее с помощью менеджера пакетов: cmake, clang, ninja-build
▪️ Запустите программу установки: cd magnet/scripts && chmod +x ./LinuxInstaller.sh && ./LinuxInstaller.sh
💩 Задача: Сумма вдоль столбцов

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

На движение вдоль столбца есть ограничение: можно перемещаться на ячейку вниз лишь по диагонали или строго вниз.

Пример:

Ввод:
matrix = [[2,1,3],[6,5,4],[7,8,9]]
Вывод: 13

Каковы будут ваши решения?👇
Please open Telegram to view this post
VIEW IN TELEGRAM
-35% на курс по алгоритмам

🎄 Новый год начинается с подарков, а хороший подарок для себя — новые знания со скидкой 35%!

🌟«Алгоритмы и структуры данных» — 23 390 ₽ (вместо 35 990 ₽)

Полугодовая программа от преподавателей МФТИ и НИУ ВШЭ, которая включает в себя все необходимые знания по алгоритмам для работы.

Самое ценное — это развернутая обратная связь по всем вашим домашним заданиям, а также ссылки на полезные дополнительные материалы.

У вас не будет шансов не усвоить какие-то темы курса👌

🔥 Переходите и активируйте вводные занятия курсаhttps://proglib.io/w/ff97c30a
💩 WyGPT: Реализация минимальной рабочей модели GPT на C++

Эта штука хорошо оптимизирована для работы на одном GPU.

Использование:

make
./train text_file.txt
./gpu "prompt"
./cpu -t 2 "prompt"
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Очередной #дайджест по С++

📍 Книга «C Programming For Dummies» — автор учит всему необходимому для старта карьеры разработчика, использующего Си

📍 Тестовое в Firefly Studios или игра за час — история о позиции AI программера в новую старую игру

📍 ESPspectrum прошивка — автор расскажет об ОС ESPspectrum и том, как ее применять

📍 Как избежать висячих ссылок, используя lifetime extension — погрузитесь в теорию стандарта С++ и выясните, что привычная всем функциональность lifetime extension иногда не решает задачу

📍 Как я создавал автокликер для приложения «ДругВокруг» — пример автоматизации процесса перебора телефонных номеров из определённого списка или диапазона
ecs-cpp

Система компонентов сущностей (ECS) — это шаблон проектирования, который используется для отделения данных от логики. Это способ сделать код более гибким и поддерживаемым.

Рассматривайте его как контейнер, содержащий сущности, и каждая сущность может иметь один или несколько компонентов. Компонент — это структура данных, которая содержит данные, а система — это функция, которая работает с сущностями, имеющими определенный набор компонентов. Систему можно рассматривать как функцию, которая принимает набор компонентов и выполняет операцию над указанными компонентами. Контейнер ECS отвечает за отслеживание того, какие объекты имеют какие компоненты и какие системы должны запускаться на каких объектах.

#обзор
📚 Introduction to C & GUI Programming (2019)

✍️ Автор: Саймон Лонг
📃 Страниц: 156

Популярный язык программирования Cи используется в совершенно разных областях — от крошечных микроконтроллеров, используемых в тостерах и часах, до законченных операционных систем. Первая половина этой книги представляет собой введение в Cи и охватывает основы написания простых программ с помощью командной строки. Во второй половине книги показано, как использовать набор инструментов пользовательского интерфейса GTK с Cи для создания многофункциональных приложений с графическим интерфейсом, которые можно запускать на компьютере.

Что внутри:

🔸 Создавайте простые программы командной строки на C
🔸 Управляйте потоком с помощью условий и циклов
🔸 Обрабатывайте переменные, строки и файлы
🔸 Разрабатывайте приложения с GUI
🔸 Обрабатывайте пользовательский ввод с помощью кнопок и меню
🔸 Используйте расширенные функции UI, такие как хранилища данных и диалоги
💩💩 Попались в интернетах полезные видосы с встречи плюсовиков в Йошкар-Оле. 

Темы докладов:

💩 Сергей Шамбир (iSpring) — «Быстрые и надёжные сигналы-слоты в C++»
💩 Евгений Зуев (Университет Иннополис) — «Архитектура компиляции: проблемы и решения.»
💩 Константин Гейст (iSpring) — «Следи за своим состоянием: валидация в ООП»
💩 Антон Полухин (Yandex.Taxi) — Полезный constexpr

Смотреть

#видео
Please open Telegram to view this post
VIEW IN TELEGRAM
🤓🧑‍🍳 Интересные бенчмарки для многопоточности, асинхронности и корутинов C++20

Это набор производительных «words counters» (не навороченных, просто разделяющих «слова» пробелами), реализованных с использованием современных функций C++20, таких как span, string_view, filesystem, ranges и других.

Там, где это уместно, используются параллельные хэш-карты и другие зависимости, такие как контейнеры Abseil, Boost.Feature или Asio с корутинами.

#почитать