es
Feedback
Библиотека C/C++ разработчика

Библиотека C/C++ разработчика

Ir al canal en Telegram

Полезные материалы по всему, что может быть полезно плюсовику/сишнику. По всем вопросам @evgenycarter

Mostrar más
7 323
Suscriptores
+224 horas
+87 días
+1430 días
Archivo de publicaciones
Создание своего терминала на C++ и Qt Сегодня мы создадим свой собственный терминал на языке программирования C++. Я являюсь
Создание своего терминала на C++ и Qt Сегодня мы создадим свой собственный терминал на языке программирования C++. Я являюсь фанатом Linux, и пользуюсь минималистичными терминальными программами — от Vim как IDE до чатов. Есть множество терминалов, у каждого из них есть плюсы и минусы. Наш терминал не будет претендовать на место серьезного проекта, но если вы хотите улучшить код, который мы сегодня напишем — то вы молодцы, можете без проблем развить наш терминал. Это будет небольшой, минималистичный терминал для Linux. Он будет на основе фреймворка Qt 5 и библиотеки qtermwidget5 Не буду долго тянуть, вперед! Исходный код будет в моем репозитории. https://github.com/OkulusDev/LiTerm https://habr.com/ru/articles/776716/ #cpp #programming 👉 @cpp_lib

Автогенерируемый оператор равенства Вы можете определить оператор трехстороннего сравнения или запросить его у компилятора с
Автогенерируемый оператор равенства Вы можете определить оператор трехстороннего сравнения или запросить его у компилятора с помощью =default. Но знаете ли вы, что в C++20 можно также определить или запросить оператор равенства? https://modernescpp.com/index.php/the-autogenerated-equality-operator/ #cpp #programming 👉 @cpp_lib

⚠️ Как Data Scientists дойти до уровня Middle+? Совершенствовать мастерство ML в сообществе единомышленников! Пройдите тест и
⚠️ Как Data Scientists дойти до уровня Middle+? Совершенствовать мастерство ML в сообществе единомышленников! Пройдите тест и проверьте, насколько вы готовы к обучению на продвинутом курсе «Machine Learning. Advanced» от OTUS. 🧑‍💻 В программе продвинутые ML-алгоритмы, RL, графы, временные ряды, рекомендательные системы, а также работа в production: настройка окружения, оптимизация кода, построение end-to-end пайплайнов и внедрение решений ⚠️ Вебинары в формате Live coding, где преподаватель с «чистого листа» показывает решение актуальных задач ML. 🔥  Ответьте на 20 вопросов, получите велкам-скидку и доступ к 2 предстоящим открытым урокам: ✔️ Ранжирование каталога товаров ✔️ Рекомендательные системы на основе матричных разложений  ➡️ https://otus.pw/29L4/?erid=LjN8KSUtk Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.

Больше функциональности в C++23 Björn Fahller Функции высшего порядка - функции, принимающие функции на вход или возвращающие функции, - полезны для того, чтобы сделать ваш код более композиционным и выразительным. Развитие стандартной библиотеки с помощью диапазонов, std::expected и последних расширений std::optional делает использование функций высшего порядка гораздо более желательным. В то же время развитие основного языка сделало их гораздо проще в написании. Я покажу вам приемы, позволяющие повысить выразительность вашего кода не жертвуя производительностью, и продемонстрирую, как некоторые из недавних дополнений к языку и библиотеке улучшают работу разработчика. источник #cpp #programming 👉 @cpp_lib

Опыт создания UI библиотеки на C++ Началось все почти два года назад в декабрe, наш основной проект (видео мессенджер) исполь
Опыт создания UI библиотеки на C++ Началось все почти два года назад в декабрe, наш основной проект (видео мессенджер) использовал WTL для Windows и GTKmm для Linux. Поддержки мака не было. Огромной неприятностью было тащить два идентичных клиента, которые, по идее, должны делать все строго одно и тоже. Разумеется, это никогда не получалось. От мысли что надо бы сделать ещё один нативный клиент для мака начинался нервный тик... На резонный вопрос - почему сразу делалось не на Qt могу лишь ответить, что это связано с, так скажем, гурманскими предпочтениями и, отчасти, с любовью к монолитным exe. Да и не требовалось на старте ничего кроме винды. В течение шести лет жизни с двумя кодовыми базами одного и того же, неспешно подбирались легковесные UI библиотеки написанные хотя бы в стиле C++11. Надо сказать, что мы активно используем boost и всей душой, как можем, его любим... В 2021 году видимо Гугл работал плохо или звёзды так сошлись, но не нашлось ничего стоящего. Все что попадалось - основанные на рендеринге html проекты и обертка над wxWidgets. Сейчас то мы знаем про lvgl, да... А вообще, тысячи их. wxWidgets не плох, но хотелось своего рисования, без окошек под кнопки, поля ввода и списки, boost/bsd подобной лицензией, максимально лаконичной, и в идеале работающей от Windows XP / CentOS 6 на стандартном GDI / X11 до Vulkan на современных машинах. В итоге, все же было принято волевое решение сделать минимальный UI фреймворк для этого проекта, и сразу выпускать его в Open Source под лицензией boost. https://habr.com/ru/articles/768336/ #cpp #programming 👉 @cpp_lib

Подборка Telegram каналов для программистов Системное администрирование 📌 https://t.me/tipsysdmin Типичный Сисадмин (фото железа, было/стало) https://t.me/sysadminof Книги для админов, полезные материалы https://t.me/i_odmin Все для системного администратора https://t.me/i_odmin_book Библиотека Системного Администратора https://t.me/i_odmin_chat Чат системных администраторов https://t.me/i_DevOps DevOps: Пишем о Docker, Kubernetes и др. https://t.me/sysadminoff Новости Линукс Linux https://t.me/tikon_1 Новости высоких технологий, науки и техники💡 https://t.me/mir_teh Мир технологий (Technology World) https://t.me/rust_lib Полезный контент по программированию на Rust https://t.me/golang_lib Библиотека Go (Golang) разработчика https://t.me/itmozg Программисты, дизайнеры, новости из мира IT. https://t.me/phis_mat Обучающие видео, книги по Физике и Математике https://t.me/php_lib Библиотека PHP программиста 👨🏼‍💻👩‍💻 https://t.me/nodejs_lib Подборки по Node js и все что с ним связано https://t.me/ruby_lib Библиотека Ruby программиста 1C разработка 📌 https://t.me/odin1C_rus Cтатьи, курсы, советы, шаблоны кода 1С Программирование C++📌 https://t.me/cpp_lib Библиотека C/C++ разработчика https://t.me/cpp_knigi Книги для программистов C/C++ https://t.me/cpp_geek Учим C/C++ на примерах Программирование Python 📌 https://t.me/pythonofff Python академия. Учи Python быстро и легко🐍 https://t.me/BookPython Библиотека Python разработчика https://t.me/python_real Python подборки на русском и английском https://t.me/python_360 Книги по Python Rus Java разработка 📌 https://t.me/BookJava Библиотека Java разработчика https://t.me/java_360 Книги по Java Rus https://t.me/java_geek Учим Java на примерах GitHub Сообщество 📌 https://t.me/Githublib Интересное из GitHub Базы данных (Data Base) 📌 https://t.me/database_info Все про базы данных Мобильная разработка: iOS, Android 📌 https://t.me/developer_mobila Мобильная разработка https://t.me/kotlin_lib Подборки полезного материала по Kotlin Фронтенд разработка 📌 https://t.me/frontend_1 Подборки для frontend разработчиков https://t.me/frontend_sovet Frontend советы, примеры и практика! https://t.me/React_lib Подборки по React js и все что с ним связано Разработка игр 📌 https://t.me/game_devv Все о разработке игр Вакансии 📌 https://t.me/sysadmin_rabota Системный Администратор https://t.me/progjob Вакансии в IT Чат программистов📌 https://t.me/developers_ru Библиотеки 📌 https://t.me/book_for_dev Книги для программистов Rus https://t.me/programmist_of Книги по программированию https://t.me/proglb Библиотека программиста https://t.me/bfbook Книги для программистов https://t.me/books_reserv Книги для программистов БигДата, машинное обучение 📌 https://t.me/bigdata_1 Data Science, Big Data, Machine Learning, Deep Learning Программирование 📌 https://t.me/bookflow Лекции, видеоуроки, доклады с IT конференций https://t.me/coddy_academy Полезные советы по программированию QA, тестирование 📌 https://t.me/testlab_qa Библиотека тестировщика Шутки программистов 📌 https://t.me/itumor Шутки программистов Защита, взлом, безопасность 📌 https://t.me/thehaking Канал о кибербезопасности https://t.me/xakep_1 Статьи из "Хакера" Книги, статьи для дизайнеров 📌 https://t.me/ux_web Статьи, книги для дизайнеров Английский 📌 https://t.me/UchuEnglish Английский с нуля Математика 📌 https://t.me/Pomatematike Канал по математике Excel лайфхак📌 https://t.me/Excel_lifehack

Дорожная карта навыков разработчика на C++ В этой статье мы с помощью карты покажем, какие навыки и знания нужны разработчику
Дорожная карта навыков разработчика на C++ В этой статье мы с помощью карты покажем, какие навыки и знания нужны разработчику на C++. Естественно, разбирать путь развития «плюсистов» будем на собственном примере — тем более что у нас в «Лаборатории Касперского» много очень разных проектов с отличающимися задачами. Однако наша карта по большей части универсальна и будет полезна всем, кто хочет развиваться в разработке на C++. https://habr.com/ru/specials/726724/ #cpp #programming 👉 @cpp_lib

+9
CMake Tutorial 1 | Understanding The Basics 2 | Libraries | Installing | Pairing with Executables | RE-DONE! 3 | Git Submodules (adding glfw windowing library example) 4 | Versioning Source Code 5 | Making Libs Optional 6 | Installing Your Software! (part 1/2 of install) 7 | Installing With CPack! (part 2/2 of install) 8 | find_library(...) (part 1/2 of find lib) 9 | find_package modules and config options (2/2 of find libs) 10 | Running CMake on Windows (like linux) (Over-explained) источник #cpp #programming 👉 @cpp_lib

Стремление к лучшему коду на C++, часть II: краткие описания функций для ускорения анализа потока данных В CLion 2023.3, кото
Стремление к лучшему коду на C++, часть II: краткие описания функций для ускорения анализа потока данных В CLion 2023.3, которая сейчас находится в стадии Early Preview, мы полностью переработали DFA CLion, чтобы сделать анализ более быстрым и точным. Мы реализовали подход, называемый суммированием функций, который позволил нам различать различные контексты функций для произвольных вложенных цепочек вызовов, что привело к более точному анализу. Давайте посмотрим, как это было сделано. https://blog.jetbrains.com/clion/2023/12/striving-for-better-cpp-code-part-ii-function-summaries-to-speed-up-the-data-flow-analysis/ #cpp #programming 👉 @cpp_lib

Стремление к лучшему коду на C++, часть I: основы анализа потоков данных В CLion встроен анализатор потока данных, который по
Стремление к лучшему коду на C++, часть I: основы анализа потоков данных В CLion встроен анализатор потока данных, который постоянно работает во время написания кода и помогает улучшить его качество. Он может выявить различные проблемы в коде, которые впоследствии могут привести к проблемам во время выполнения, нарушениям безопасности и другим уязвимостям. Примерами таких полезных проверок являются проверки на наличие постоянных условий, мертвого кода, разыменований нулевых указателей, утечек памяти и проблем с индексами массивов. Мы начинаем серию статей в блоге, в которых расскажем, как некоторые из этих проверок работают в CLion. https://blog.jetbrains.com/clion/2023/11/striving-for-better-cpp-code-part-i-data-flow-analysis-basics/ #cpp #programming 👉 @cpp_lib

Привет всем любителям побрейнштормить и хорошенько развлечься! Команда PVS-Studio на связи 😎. Новый крутой квиз с интересным
Привет всем любителям побрейнштормить и хорошенько развлечься! Команда PVS-Studio на связи 😎. Новый крутой квиз с интересными вопросами из мира программирования уже у нас на сайте. Да не простой квиз, а задачки от Сергея Кушниренко — разработчика игр в 4A Games! Попробуйте найти ошибки в C++ коде и проверить свою внимательность и знание языка . Предупреждаем: ошибки не такие уж и простые! В этом квизе вы найдете 18 фрагментов кода. В каждом фрагменте спряталась ошибка. Готовы испытать свои силы? 💪  Ссылка на квиз :) Реклама. ООО "ПВС". ИНН 7105502635.

Привет всем любителям побрейнштормить и хорошенько развлечься! Команда PVS-Studio на связи 😎. Новый крутой квиз с интересным
Привет всем любителям побрейнштормить и хорошенько развлечься! Команда PVS-Studio на связи 😎. Новый крутой квиз с интересными вопросами из мира программирования уже у нас на сайте. Да не простой квиз, а задачки от Сергея Кушниренко — разработчика игр в 4A Games! Попробуйте найти ошибки в C++ коде и проверить свою внимательность и знание языка . Предупреждаем: ошибки не такие уж и простые! В этом квизе вы найдете 18 фрагментов кода. В каждом фрагменте спряталась ошибка. Готовы испытать свои силы? 💪  Ссылка на квиз :) Реклама. ООО "ПВС". ИНН 7105502635.

Неклассические контейнеры в C++ Контейнер - это объект, используемый для хранения других объектов. Контейнер берет на себя уп
Неклассические контейнеры в C++ Контейнер - это объект, используемый для хранения других объектов. Контейнер берет на себя управление всей памятью, которые эти объекты занимают. В стандартную библиотеку C++ входит несколько контейнеров. Кроме этого, в Open Source есть несколько контейнеров, которые покрывают больше юзкейсов. Я опишу устройство интересных контейнеров вне STL1 и их отличия от классических контейнеров. https://habr.com/ru/post/664044/ #cpp #programming 👉 @cpp_lib

The Design and Evolution of C++ Бьерн Страуструп (2016) Эту книгу стоит прочесть каждому, кого интересует вопрос создания с нуля языков программирования. Создатель одного из самых популярных языков программирования, Бьёрн Страуструп, расскажет о процессе проектирования и создания С++. Рассмотрены не только основы и принципы, заложенные в С++, но и дизайн современных средств языка: шаблоны, исключения, пространства имён и прочее. Также автор продемонстрирует правильное применение объектно-ориентированных языков. В книге рассматриваются следующие темы: ✔️ предыстория С++; ✔️ язык С с классами; ✔️ цели С++; ✔️ языки С и С++; ✔️ правила проектирования С++; ✔️ стандартизация; ✔️ библиотеки; ✔️ перспективы развития С++ и многое другое. 👉 @cpp_knigi

[MUC++] Елизавета Шуланкина - Анализ приложений на C++ для оптимизации производительности Некоторые из нас, вольно или невольно, сталкивались с необходимостью анализа кода для повышения производительности. Конечно, мы прибегали к различным профилировщикам кода, чтобы выяснить, что не так с нашим идеально написанным кодом... И чаще всего профилировщик удивлял нас, указывая на узкое место в коде! Этот доклад станет введением в оптимизацию производительности приложений на C++ с помощью таких инструментов, как Intel VTune Profiler и Intel Advisor. Мы кратко рассмотрим шаги по оптимизации производительности, затем возьмем небольшое приложение на C++ и попросим VTune и Advisor помочь нам понять, что происходит, каковы узкие места в производительности и как с ними справиться, чтобы сделать наше приложение эффективным с точки зрения памяти и вычислений. Мы проведем несколько итераций настройки этого приложения на C++ и посмотрим, как оно ускорится. https://www.youtube.com/watch?v=M1D8iez1Ph0 источник #cpp #programming 👉 @cpp_lib

Технические собеседования: что болит у тех, кто их проводит и кто на них приходит Константин Владимиров, Елена Степанова, Илья Казаков (все YADRO) и Илья Шишков (экс-Яндекс) обсудили с аудиторией московского C++ митапа все, что наболело в теме собеседований. 00:00 - Кто больше всех насобеседовал в своей карьере 01:35 - "Собеседования как пощечина вузовскому образованию" 02:20 - Стоит ли "спрашивать кандидата за резюме" (особенно когда собеседуешь не в свою команду) 05:55 - Лучшее собеседование в жизни Елены Степановой 07:45 - Можно ли обойтись без leetcode и алгоритмических секций 13:35 - Стоит ли применять подход fake it till you make it 16:30 - Грустная история про стажера и софтскиллы 17:45 - Вопрос про выбор между опытом и остротой ума или "проблема вагонетки" 21:10 - Вопрос про интересные вопросы и неожиданные ответы 24:40 - Продолжение грустной истории про стажера и софтскиллы 26:35 - Про ключевые вопросы и красные флаги на собеседованиях 34:35 - О фидбеке после интервью (и почему его не всегда дают) 35:45 - Вопрос про код-ревью как форму собеседования 36:45 - Как понять, надолго ли к вам выйдет кандидат 38:30 - Вопрос про Qt и зло ли это 41:50 - Про каверзные вопросы и нужны ли они 43:25 - Вопрос про странных интервьюеров 45:10 - Стоит ли спрашивать про алгоритмы того, кто будет перекладывать байтики 47:50 - Итоговый вопрос для Константина Владимирова источник #cpp #programming 👉 @cpp_lib

Modern CMake for C++: Discover a better approach to building, testing and packaging your software Rafal Swidzinski (2022) В книге рассказывается о том, как формировать исходные каталоги, а также создавать целевые объекты и пакеты. По мере продвижения вы узнаете, как компилировать и связывать исполняемые файлы и библиотеки, как эти процессы работают в деталях и как оптимизировать все шаги для достижения наилучших результатов. Вы также поймете, как добавить в проект внешние зависимости: сторонние библиотеки, фреймворки тестирования, инструменты анализа программ и генераторы документации. Наконец, вы узнаете, как экспортировать, установить и упаковать ваше решение для внутренних и внешних целей. Прочитав эту книгу, вы сможете уверенно использовать CMake на профессиональном уровне. 👉 @cpp_knigi

Длительность хранения и нелокальные объекты в C++ C++ позволяет нам объявлять различные формы нелокальных объектов: обычно он
Длительность хранения и нелокальные объекты в C++ C++ позволяет нам объявлять различные формы нелокальных объектов: обычно они живут на протяжении всего выполнения программы. В этой статье мы рассмотрим глобальные переменные, динамические и потоково-локальные объекты. Также мы рассмотрим новые возможности безопасной инициализации C++20. https://www.cppstories.com/2023/storage-init-cpp/ #cpp #programming 👉 @cpp_lib

🔥 Хардкорный тест для разработчиков, тимлидов и архитекторов! 💻 Ответьте на 11 вопросов и узнайте, достаточно ли у вас знан
🔥 Хардкорный тест для разработчиков, тимлидов и архитекторов! 💻 Ответьте на 11 вопросов и узнайте, достаточно ли у вас знаний, чтобы пройти онлайн-курс «Software Architect». 🏆 Курс поможет прокачать весь арсенал навыков, необходимых архитектору ПО. 👉 Пройти тест - https://vk.cc/ctkmr4 🎓Успешное прохождение теста откроет: ✔️ Лучшие открытые уроки прошлых наборов курса ✔️ Скидку на прохождение онлайн курса «Software Architect» Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru

Современный С++ в разработке девайсов Меня зовут Андрей Белобров. Я тимлид одной из команд, разрабатывающих приложения для ум
Современный С++ в разработке девайсов Меня зовут Андрей Белобров. Я тимлид одной из команд, разрабатывающих приложения для умных девайсов Сбера. На прошедшей недавно конференции Салют, OS DevConf! я выступил с докладом, в котором рассказал, как мы с командой разрабатываем приложения на С++ для умных устройств с виртуальным ассистентом. А также о том, как инструменты статического и динамического анализа помогают поддерживать единый стиль и высокое качество кода в проекте. Во время доклада меня попросили подробнее описать детали нашего подхода в статье, поэтому рад поделиться с вами расширенной текстовой версией. Все наши устройства должны уметь взаимодействовать c виртуальным ассистентом, проигрывать музыку, обновлять прошивку, выполнять аутентификацию пользователя и т.д.. Такая функциональность реализована в едином для всех платформ приложении, работающем в пользовательском режиме на каждом из наших устройств, будь то умная колонка, ТВ-приставка или умный телевизор. Язык С++ позволяет писать эффективный и переносимый между различными платформами код, поэтому выбор языка программирования для нашего приложения был очевиден. При этом язык известен своей сложностью и возможностью выполнить одну и ту же задачу несколькими способами. Чтобы успешно разрабатывать большой проект на языке C++, необходимо хорошо настроить процесс разработки в команде (а у нас это несколько десятков инженеров). Также можно значительно осовременить разработку на C++ за счет использования подходящих инструментов статического и динамического анализа и правильной интеграции их в процесс разработки. https://habr.com/ru/companies/sberdevices/articles/780476/ #cpp #programming 👉 @cpp_lib