Библиотека C/C++ разработчика
6.8K subscribers
651 photos
689 videos
8 files
937 links
Полезные материалы по всему, что может быть полезно плюсовику/сишнику. По всем вопросам @evgenycarter
Download Telegram
Media is too big
VIEW IN TELEGRAM
Контракты для С++
Тимур Думлер

Контрактное программирование — эффективный подход к написанию более безопасных и корректных программ. Он был успешно реализован в таких языках программирования, как Eiffel и Ada. В стандарте С++ контрактное программирование имеет долгую и сложную историю.

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

В этом докладе мы рассмотрели текущий дизайн контрактов для C++26. Обсудили разновидности контрактов (preconditions, postconditions, assertions), возможные режимы проверки, обработку нарушений и многое другое. Рассмотрели, чем текущий дизайн превосходит существующие реализации на макросах и как помогает повысить безопасность и корректность кодовой базы.

источнки

#cpp #programming

👉 @cpp_lib
Подборка Telegram каналов для программистов

Системное администрирование 📌
https://t.me/sysadmin_girl Девочка Сисадмин
https://t.me/srv_admin_linux Админские угодья
https://t.me/linux_srv Типичный Сисадмин

https://t.me/devops_star DevOps Star (Звезда Девопса)
https://t.me/i_linux Системный администратор
https://t.me/linuxchmod Linux
https://t.me/sys_adminos Системный Администратор
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

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/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 Полезные советы по программированию
https://t.me/rust_lib Полезный контент по программированию на Rust
https://t.me/golang_lib Библиотека Go (Golang) разработчика
https://t.me/itmozg Программисты, дизайнеры, новости из мира IT
https://t.me/php_lib Библиотека PHP программиста 👨🏼‍💻👩‍💻
https://t.me/nodejs_lib Подборки по Node js и все что с ним связано
https://t.me/ruby_lib Библиотека Ruby программиста

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 Канал по математике
https://t.me/phis_mat Обучающие видео, книги по Физике и Математике

Excel лайфхак📌
https://t.me/Excel_lifehack

https://t.me/tikon_1 Новости высоких технологий, науки и техники💡
https://t.me/mir_teh Мир технологий (Technology World)

Вакансии 📌
https://t.me/sysadmin_rabota Системный Администратор
https://t.me/progjob Вакансии в IT
Media is too big
VIEW IN TELEGRAM
Сборка C++ проектов. CMAKE. Game Engine серии

0:00:00 - Введение
0:01:32 - Пишем мини игру. FightClub
0:17:03 - MSBUILD
0:19:20 - Собственный build скрипт
0:26:52 - Build системы. Теория
0:34:17 - CMAKE
1:28:00 - Автоматизация CMAKE команд

источник

#cpp #programming

👉 @cpp_lib
👍Узнайте, как писать чистый, поддерживаемый код на Си с использованием функциональных подходов!

Начните на бесплатном уроке онлайн-курса «Программист С» — «Функциональное программирование на языке Си»: регистрация

На занятии изучим:
- функциональное программирование в C: от теории к практике
- продвинутые техники работы с функциями в C: указатели, замыкания и оптимизации
- глубокое погружение в рекурсию и её оптимизацию на низком уровне
- современные расширения компиляторов для чистого и эффективного кода

В результате получите:
- понимание базовых концепций функционального программирования в контексте C
- знание различных способов реализации функций высшего порядка и замыканий
- представление об оптимизации рекурсивных функций

🔥После вебинара вы сможете продолжить обучение на курсе по спеццене, в том числе, в рассрочку.

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Media is too big
VIEW IN TELEGRAM
В докладе «Delivering safe C++» Страуструп затронул проблемы имиджа и распространения C++

источник

#cpp #programming

👉 @cpp_lib
Введение в регулярные выражения в современном C++

Регулярные выражения (Regular expressions или, вкратце, regex — регулярки) — это пока что непопулярная и недооцененная тема в современном C++. Но в то же время разумное использование регулярных выражений может избавить вас от написания множества строчек кода. Если у вас уже есть какой-никакой опыт работы в индустрии, но вы не умеете использовать регулярные выражения — вы разбазариваете 20-30% своей продуктивности. Я настоятельно рекомендую вам освоить регулярные выражение, так как это единовременная инвестиция в себя (по известному принципу “learn once, write anywhere”).

https://dev.to/visheshpatel/introduction-to-regular-expression-with-modern-c-1bn4

#cpp #programming

👉 @cpp_lib
Контрибьютор C++ забанен за использование слова «question» в названии своей статьи

C++ ISO Standards Group, организация, отвечающая за стандартизацию языка C++, так же известная как WG21, исключила из своих рядов longtime-контрибьютора после того, как тот использовал простое слово "question" (рус. - "вопрос") в названии одной из своих работ.

И да, это безумно ровно настолько же, насколько звучит.

https://habr.com/ru/articles/864336/

#cpp #programming

👉 @cpp_lib
Media is too big
VIEW IN TELEGRAM
Создание игры Крестики-нолики на языке C++

#cpp #programming

👉 @cpp_lib
👍Узнайте, как создавать приложения на Си с GUI грамотно!

На бесплатном уроке онлайн-курса «Программист С» — «Создаем приложение на С с графическим интерфейсом пользователя»: регистрация

Приложения на Си с GUI сочетают в себе высокий уровень контроля над ресурсами системы с богатым пользовательским интерфейсом, что обеспечивает высокую производительность, гибкость, кроссплатформенность, эффективность взаимодействия с системным окружением.

На бесплатном вебинаре рассмотрим:
- Основные технологии создания приложения с GUI
- Обзор библиотеки GTK+ для создания GUI на языке С
- Разработаем простое приложения для работы с базой данных на GTK+

🔥После вебинара вы сможете продолжить обучение на курсе по спеццене, в том числе, в рассрочку.

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
This media is not supported in your browser
VIEW IN TELEGRAM
🐦 Flappy Bird на Си: Вес APK < 100 Килобайт! 🚀

В сентябре 2024 года, увидев Flappy Bird на C# в дискорд-канале Raylib, я решил попробовать реализовать эту игру на Си для Android с весом APK менее 100 КБ. 🚀

Идея казалась безумной, но спортивный интерес взял верх. 💪

https://github.com/VadimBoev/FlappyBird

#cpp #programming

👉 @cpp_lib
Media is too big
VIEW IN TELEGRAM
Практика применения C++ в играх и игровых движках

Пожалуй, игры известны тем, что они всегда на переднем краю как современного железа, так и программных возможностей. Как же обстоят дела с C++ в этой области?

На примере трех сравнительно легких для восприятия сюжетов посмотрим, как так складывается, что стиль имеет тенденцию к C99 с классами. Сюжеты: взаимодействие с другими языками (interop w/scripts), многоплатформенность (compiler zoo, determinism, float) и многопоточность (pthread into OOP vs DOD, ECS, etc.)

источник

#cpp #programming

👉 @cpp_lib
Курс «Реверсивный инжиниринг ПО под ОС Windows» стартует 16 декабря!

В курсе подробно рассматривается синтаксис Ассемблера, анализ приложений различного уровня сложности, от простейших crackme до полноценных программ на современных архитектурах.
Необходимые знания: язык Ассемблера, С/С++, python, навыки работы с IDA и другими инструментами для реверса

Вы получите сертификат/удостоверение о повышении квалификации

@Codeby_Academy
Узнать подробнее о курсе
Ненавижу, _____, C++ массивы

Или почему мне кажется, что про них нужно знать, но не нужно использовать.

Друзья, вы помните момент, когда впервые сунули указатель на первый элемент массива в оператор sizeof, и ваш код перестал работать так, как вы задумывали? Это, конечно, и близко не сравнится с эмоциями от засовывания пальцев в розетку, но...

https://habr.com/ru/companies/pvs-studio/articles/822911/

#cpp #programming

👉 @cpp_lib
std::array в С++ не медленнее массива в С

Стойте! Уберите руки от клавиатуры, дайте человеку сказать! У этой статьи есть обоснованные причины и благая цель! В прошлой моей статье о массивах (которую необязательно читать для понимания статьи этой) некоторые читатели выражали озабоченность тем, что std::array может быть медленнее встроенного С-массива.

Есть несколько источников правды в этом вопросе, и сегодня мы пройдёмся по каждому из них. Сначала узнаем, что по этому поводу пишет стандарт, потом заглянем в реализации std::array в libc++ и libstdc++, а затем посмотрим на ассемблер некоторых операций с этими объектами. Ну и завершим всё это дело, как и полагается, бенчмаркингом.

https://habr.com/ru/companies/pvs-studio/articles/846532

#cpp #programming

👉 @cpp_lib
InputParser — это библиотека на C++ для парсинга командной строки, разработанная Джан Луисом Боливаром Дианой. Она позволяет легко добавлять и обрабатывать опции командной строки в приложениях на C++. Для использования необходимо создать объект Parser, добавить необходимые опции с помощью метода addOption, а затем вызвать метод parse для обработки аргументов. Библиотека требует компилятора с поддержкой стандарта C++23 и распространяется по лицензии MIT.

https://github.com/gianluisdiana/InputParser

#cpp #programming

👉 @cpp_lib
Подробно рассказываем о высокопроизводительных решениях с фреймворком userver на новом бесплатном вебинаре!

Он предназначен для создания надежных и молниеносных микросервисов и веб-серверов. Освойте передовой C++ фреймворк всего за 90 минут!

 Вы узнаете:
- Уникальные архитектурные особенности и преимущества userver, которые сделают вашу работу легче и эффективнее.
- Как быстро настроить окружение и запустить свой первый проект, не тратя лишнего времени.
- Советы высококлассных профессионалов по работе с асинхронностью, которые помогут вам стать мастером своего дела и очень много другой полезной сочной информации!

💡 Будет особенно интересно:
- C++ разработчикам, стремящимся освоить мощный инструмент для создания микросервисов.
- Backend-инженерам и Team Lead'ам, ищущим высокопроизводительные решения для своих задач.
- Специалистам, работающим над масштабируемыми системами.

Получите практический и ценный опыт работы с userver, который можно сразу применить в своих проектах - регистрируйтесь по ссылке: https://vk.cc/cG4TUS

P.S. Все зарегистрированные участники получат приличную скидку на обновленный топовый курс «C++ Developer. Professional»

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Please open Telegram to view this post
VIEW IN TELEGRAM