Сколько времени в рабочий день тратите на разработку?
#интерактив
#интерактив
Опыт создания клипа на Unreal Engine 5.1 с метахьюманом, ветром и багами
Обширный материал со ссылками на обучающие источники.
Читать статью
Обширный материал со ссылками на обучающие источники.
Читать статью
Очередной #дайджест статей по С++:
🤖 Правильный if для ускорения работы
Поводом для размышления по этой теме послужил пост, где поясняется на примерах два разных пути работы условного оператора if.
🤖 Определение области коллизии
Как можно вычислить точки контакта между двумя объектами для правильного расчёта центра приложенных сил?
🤖 Seastar как платформа для опорной сети 5G и краткое сравнение с Boost.Asio, userver и другими
Сравнение Seastar, mTCP, Boost.Asio, userver и ACE, а также почему примитивы синхронизации — это плохо.
🤖 Выжимаем ATtiny10, практическое применение
🤖 Buran Motion Planning Framework
В данной статье сделан обзор на OpenSource фреймворк планирования движения BMPF.
🤖 Правильный if для ускорения работы
Поводом для размышления по этой теме послужил пост, где поясняется на примерах два разных пути работы условного оператора if.
🤖 Определение области коллизии
Как можно вычислить точки контакта между двумя объектами для правильного расчёта центра приложенных сил?
🤖 Seastar как платформа для опорной сети 5G и краткое сравнение с Boost.Asio, userver и другими
Сравнение Seastar, mTCP, Boost.Asio, userver и ACE, а также почему примитивы синхронизации — это плохо.
🤖 Выжимаем ATtiny10, практическое применение
🤖 Buran Motion Planning Framework
В данной статье сделан обзор на OpenSource фреймворк планирования движения BMPF.
This media is not supported in your browser
VIEW IN TELEGRAM
⚡ Основные алгоритмы на графах
В статье рассмотрены основные алгоритмы на графах и их реализацию на C++.
Рассматриваемые алгоритмы:
▪ Обход графа в ширину (Поиск в ширину) aka BFS | Breadth First Search
▪ Обход графа в глубину (Поиск в глубину) aka DFS | Depth First Search
▪ Алгоритм Дейкстры
▪ Алгоритм Флойда-Уоршелла
▪ Алгоритм Прима
Смотреть статью
В статье рассмотрены основные алгоритмы на графах и их реализацию на C++.
Рассматриваемые алгоритмы:
▪ Обход графа в ширину (Поиск в ширину) aka BFS | Breadth First Search
▪ Обход графа в глубину (Поиск в глубину) aka DFS | Depth First Search
▪ Алгоритм Дейкстры
▪ Алгоритм Флойда-Уоршелла
▪ Алгоритм Прима
Смотреть статью
std::initializer_list
Присваивайте значения контейнерам непосредственно с помощью списка инициализаторов, как это можно делать с C-массивами.
Это справедливо и для вложенных контейнеров. Скажите спасибо С++11.
#код
Присваивайте значения контейнерам непосредственно с помощью списка инициализаторов, как это можно делать с C-массивами.
Это справедливо и для вложенных контейнеров. Скажите спасибо С++11.
#код
Pipes
В C++ пайпы (pipes) представляют собой механизм для односторонней связи между процессами. Они позволяют передавать данные из одного процесса в другой, где один процесс выступает в роли писателя (write end), а другой процесс выступает в роли читателя (read end) пайпа.
Для работы с пайпами вы можете использовать системные вызовы, такие как pipe, fork и функции чтения/записи (read и write), доступные в POSIX-совместимых операционных системах.
Обратите внимание, что дескрипторы чтения и записи пайпа должны быть закрыты в соответствующих процессах с помощью close, чтобы гарантировать правильное завершение операций чтения и записи.
#вопросы_с_собеседований
В C++ пайпы (pipes) представляют собой механизм для односторонней связи между процессами. Они позволяют передавать данные из одного процесса в другой, где один процесс выступает в роли писателя (write end), а другой процесс выступает в роли читателя (read end) пайпа.
Для работы с пайпами вы можете использовать системные вызовы, такие как pipe, fork и функции чтения/записи (read и write), доступные в POSIX-совместимых операционных системах.
Обратите внимание, что дескрипторы чтения и записи пайпа должны быть закрыты в соответствующих процессах с помощью close, чтобы гарантировать правильное завершение операций чтения и записи.
#вопросы_с_собеседований
Для чего нужен алгоритм generate?
Используется для генерации чисел на основе функции генератора, а затем присваивает эти значения элементам в контейнере в диапазоне [first, last).
#вопросы_с_собеседований
Используется для генерации чисел на основе функции генератора, а затем присваивает эти значения элементам в контейнере в диапазоне [first, last).
#вопросы_с_собеседований
✍️«Библиотека программиста» собирает кейсы использования нейросетей
Какие самые необычные задачи вы выполняли с помощью нейросетей? Может быть, вы просили ИИ пройти тестирование по правилам безопасности или писали с его помощью заявление на увольнение?
Заполняйте форму — лучшие истории появятся в нашей подборке по теме.
👉Ссылка тут👈
Какие самые необычные задачи вы выполняли с помощью нейросетей? Может быть, вы просили ИИ пройти тестирование по правилам безопасности или писали с его помощью заявление на увольнение?
Заполняйте форму — лучшие истории появятся в нашей подборке по теме.
👉Ссылка тут👈
Перегрузка функций
Перегрузка функций — это возможность определения нескольких функций с одним и тем же именем, но разными параметрами. Когда вызывается такая функция, компилятор определяет, какая из перегруженных функций должна быть вызвана, основываясь на типах аргументов, переданных при вызове.
Таким образом можно создать несколько вариантов функции, которые выполняют аналогичные действия, но принимают разные типы аргументов. Это позволяет создавать более удобный и интуитивно понятный интерфейс для программистов, так как они могут вызывать одно и то же имя функции с разными типами данных, не заботясь о различиях в именах функций.
#код
Перегрузка функций — это возможность определения нескольких функций с одним и тем же именем, но разными параметрами. Когда вызывается такая функция, компилятор определяет, какая из перегруженных функций должна быть вызвана, основываясь на типах аргументов, переданных при вызове.
Таким образом можно создать несколько вариантов функции, которые выполняют аналогичные действия, но принимают разные типы аргументов. Это позволяет создавать более удобный и интуитивно понятный интерфейс для программистов, так как они могут вызывать одно и то же имя функции с разными типами данных, не заботясь о различиях в именах функций.
#код
C++ интервью в Google
Посмотрите, как кто-то пытается решить задачу Closest Coin на C++ с помощью инженера Google. Это пробное интервью — смогут ли они найти решение?
Смотреть видео
Посмотрите, как кто-то пытается решить задачу Closest Coin на C++ с помощью инженера Google. Это пробное интервью — смогут ли они найти решение?
Смотреть видео
Очередной #дайджест по C++:
✍️ Работа с «Ягодой» для новичков: подключение пяти микроконтроллеров ESP32 к микрокомпьютеру Raspberry Pi 4 Model B по SPI
Данная статья создана с ознакомительной целью и служит рекомендацией по работе с Raspberry Pi 4 Model B ("Ягода"), WEMOS WiFi & Bluetooth ESP32 ("ESP32") при настройки Serial Peripheral Interface (SPI).
✍️ Сохранение древовидной структуры в Visual Studio с CMake или создание папок в проекте
О проблемах CMake и их решениях.
✍️ Исследуем защиту программ на практике
Программист рассказывает о защите своего продукта.
✍️ Как написать хороший генератор
В интернете невероятное количество статей о том "как написать свой генератор на С++20", но почти все они сводятся к новичковым хело вордам и почти ни одной статьи о том как написать хороший генератор. Автор статьи захотел это исправить.
✍️ Работа с «Ягодой» для новичков: подключение пяти микроконтроллеров ESP32 к микрокомпьютеру Raspberry Pi 4 Model B по SPI
Данная статья создана с ознакомительной целью и служит рекомендацией по работе с Raspberry Pi 4 Model B ("Ягода"), WEMOS WiFi & Bluetooth ESP32 ("ESP32") при настройки Serial Peripheral Interface (SPI).
✍️ Сохранение древовидной структуры в Visual Studio с CMake или создание папок в проекте
О проблемах CMake и их решениях.
✍️ Исследуем защиту программ на практике
Программист рассказывает о защите своего продукта.
✍️ Как написать хороший генератор
В интернете невероятное количество статей о том "как написать свой генератор на С++20", но почти все они сводятся к новичковым хело вордам и почти ни одной статьи о том как написать хороший генератор. Автор статьи захотел это исправить.
Какое мероприятие по разработке вы посещали последним и будете ли на нем в следующий раз?
#интерактив
Кстати, на нашем сайте есть раздел с анонсами мероприятий по программированию.
#интерактив
Кстати, на нашем сайте есть раздел с анонсами мероприятий по программированию.
Самые полезные каналы для программистов в одной подборке!
Сохраняйте себе, чтобы не потерять 💾
🔥Для всех
Библиотека программиста — новости, статьи, досуг, фундаментальные темы
Книги для программистов
IT-мемы
☕️Java
Библиотека джависта — полезные статьи по Java, новости и обучающие материалы
Библиотека Java для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Java — код, квизы и тесты
Вакансии для java-разработчиков
👾Data Science
Библиотека Data Science — полезные статьи, новости и обучающие материалы
Библиотека Data Science для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Data Science — код, квизы и тесты
Вакансии по Data Science, анализу данных, аналитике, искусственному интеллекту
🧠C++
Библиотека C/C++ разработчика — полезные статьи, новости и обучающие материалы по C++
Библиотека C++ для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по C++ — код, квизы и тесты
Вакансии по C++
💻Другие профильные каналы
Библиотека фронтендера
Библиотека шарписта
Библиотека Go разработчика
Библиотека мобильного разработчика
Библиотека хакера
Библиотека питониста
Библиотека devops’a
Библиотека тестировщика
Библиотека пхпшника
💼Каналы с вакансиями
Вакансии по питону, Django, Flask
Вакансии по фронтенду, джаваскрипт, React, Angular, Vue
Вакансии по C#, .NET, Unity
Вакансии по Go
Вакансии по PHP, Symfony, Laravel
Вакансии по DevOps & SRE
Вакансии для мобильных разработчиков
Вакансии по QA тестированию
InfoSec Jobs — вакансии по информационной безопасности
Сохраняйте себе, чтобы не потерять 💾
🔥Для всех
Библиотека программиста — новости, статьи, досуг, фундаментальные темы
Книги для программистов
IT-мемы
☕️Java
Библиотека джависта — полезные статьи по Java, новости и обучающие материалы
Библиотека Java для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Java — код, квизы и тесты
Вакансии для java-разработчиков
👾Data Science
Библиотека Data Science — полезные статьи, новости и обучающие материалы
Библиотека Data Science для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Data Science — код, квизы и тесты
Вакансии по Data Science, анализу данных, аналитике, искусственному интеллекту
🧠C++
Библиотека C/C++ разработчика — полезные статьи, новости и обучающие материалы по C++
Библиотека C++ для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по C++ — код, квизы и тесты
Вакансии по C++
💻Другие профильные каналы
Библиотека фронтендера
Библиотека шарписта
Библиотека Go разработчика
Библиотека мобильного разработчика
Библиотека хакера
Библиотека питониста
Библиотека devops’a
Библиотека тестировщика
Библиотека пхпшника
💼Каналы с вакансиями
Вакансии по питону, Django, Flask
Вакансии по фронтенду, джаваскрипт, React, Angular, Vue
Вакансии по C#, .NET, Unity
Вакансии по Go
Вакансии по PHP, Symfony, Laravel
Вакансии по DevOps & SRE
Вакансии для мобильных разработчиков
Вакансии по QA тестированию
InfoSec Jobs — вакансии по информационной безопасности
Memento
Memento — это поведенческий паттерн проектирования, который позволяет сохранять и восстанавливать внутреннее состояние объекта без нарушения инкапсуляции. Он полезен, например, когда вам нужно реализовать функциональность отмены/возврата действий или сохранения состояния объекта для последующего восстановления.
#код
Memento — это поведенческий паттерн проектирования, который позволяет сохранять и восстанавливать внутреннее состояние объекта без нарушения инкапсуляции. Он полезен, например, когда вам нужно реализовать функциональность отмены/возврата действий или сохранения состояния объекта для последующего восстановления.
#код
В чем различия между delete и delete[]?
delete предназначен для уничтожения объектов, память под которые выделена при помощи new(). delete[] для объектов выделенных при помощи оператора new[]().
При неправильном использовании оператора delete (например, delete вместо delete[]) результат будет: undefined behavior.
Больше вопросов с собеседований в нашем канале.
#вопросы_с_собоседований
delete предназначен для уничтожения объектов, память под которые выделена при помощи new(). delete[] для объектов выделенных при помощи оператора new[]().
При неправильном использовании оператора delete (например, delete вместо delete[]) результат будет: undefined behavior.
Больше вопросов с собеседований в нашем канале.
#вопросы_с_собоседований
Недостатки корутин в С++
Этот пост предназначен для освещения некоторых рисков, связанных с перемещением базы кода в сторону сопрограмм. Автор считает, что продолжающееся неправильное использование корутин может привести к более небезопасным и медленным программам.
Читать пост
Этот пост предназначен для освещения некоторых рисков, связанных с перемещением базы кода в сторону сопрограмм. Автор считает, что продолжающееся неправильное использование корутин может привести к более небезопасным и медленным программам.
Читать пост
Константные методы
В C++ ключевое слово const имеет различное значение в зависимости от контекста. Оно может быть применено к методам классов для указания, что метод не будет изменять состояние объекта, на котором он вызывается. Такие методы называются «константными методами».
Когда вы вызываете константный метод для объекта класса, компилятор гарантирует, что внутри этого метода вы не будете изменять члены данных объекта, кроме членов, объявленных как mutable (они могут изменяться внутри константных методов).
#код
В C++ ключевое слово const имеет различное значение в зависимости от контекста. Оно может быть применено к методам классов для указания, что метод не будет изменять состояние объекта, на котором он вызывается. Такие методы называются «константными методами».
Когда вы вызываете константный метод для объекта класса, компилятор гарантирует, что внутри этого метода вы не будете изменять члены данных объекта, кроме членов, объявленных как mutable (они могут изменяться внутри константных методов).
#код
❗«Библиотека программиста» ищет девушек, работающих в IT — разработке, тестировании, информационной безопасности и других направлениях
Мы проводим новое исследование, посвященное специфике работы женщин в IT — от сложностей и недостатков в работе до гендерных стереотипов.
Пройдите короткий опрос — он анонимный и займет не более 10 минут вашего времени.
Ссылка тут.
Мы проводим новое исследование, посвященное специфике работы женщин в IT — от сложностей и недостатков в работе до гендерных стереотипов.
Пройдите короткий опрос — он анонимный и займет не более 10 минут вашего времени.
Ссылка тут.