Тренды

Все что касается разработки: образовательные статьи, тренды, технологии, языки, фреймворки и многое другое!

Как писать безопасный код на Go

Как писать безопасный код на Go

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

C++: практическое руководство по проверке наличия файла

Изучим различные методы проверки, проиллюстрируем примерами реального применения. Какие факторы учитываются при выборе метода и где они сбалансированы оптимально?
10 продвинутых советов по Git

10 продвинутых советов по Git

Если вы уже понимаете, как работает Git, эта статья поможет вам развить умение работать с Git и стать более эффективным.
C++: подробное руководство по массивам

C++: подробное руководство по массивам

Разберем основные концепции, в том числе продвинутые. Проиллюстрируем примерами с решениями, поможем подготовиться к собеседованию.
Презентации в терминале

Презентации в терминале

Забудьте о постоянных переключениях контекста, из-за которых убивается демонстрационный процесс. Создавайте терминальные презентации.
Рекомендации по Go: выделение памяти с new

Рекомендации по Go: выделение памяти с new

Разберем нюансы функции new на примерах. Для каких целей и типов она используется, как ею упрощается инициализация?
Перестановка чисел в C++: руководство

Перестановка чисел в C++: руководство

Изучим нюансы каждого метода, оценим производительность и поможем выбрать оптимальный. Проиллюстрируем примерами реального применения.
Синхронизация данных в реальном времени между MongoDB и Elasticsearch на Golang

Синхронизация данных в реальном времени между MongoDB и Elasticsearch на Golang

Сделаем мощную событийно-ориентированную службу синхронизации на Golang. Поэтапно настроим, оптимизируем производительность и протестируем.
Как создать анимацию мерцающего текста в Jetpack Compose

Как создать анимацию мерцающего текста в Jetpack Compose

Воспользуйтесь руководством по созданию и применению анимации мерцающего текста в Jetpack Compose. Такая анимация позволит повысить плавность работы приложений, улучшить взаимодействие пользователей с интерфейсом, сделать более комфортным время ожидания. 
382 часа на изучение Rust и блестящая обезьянка

382 часа на изучение Rust и блестящая обезьянка

Как создать игровой движок для физически корректного рендеринга? Впечатления о разных аспектах языка от инженера-программиста Unity, сравнение Rust и C#.
Основные методы оптимизации базы данных SQL

Основные методы оптимизации базы данных SQL

При разработке приложений часто возникают проблемы с индексированием данных, структурированием SQL-запросов, проектированием схем и т.д. Это руководство позволит значительно повысить эффективность БД: запросы и операции станут намного экономичнее и быстрее.
Использование Kotlin Flow для отображения наблюдаемого состояния UI на экране в Android

Использование Kotlin Flow для отображения наблюдаемого состояния UI на экране в Android

Узнайте, что такое реактивное программирование и как оно реализуется в Android с помощью Kotlin Flow. Понимание разницы в использовании различных типов Flow позволит создавать отзывчивые, неблокирующие и реактивные пользовательские интерфейсы.
7 малоизвестных, но полезных библиотек Python 

7 малоизвестных, но полезных библиотек Python 

Эти библиотеки отлично справятся с вашими повседневными задачами. Они помогут оживить вывод консоли, сгенерировать фиктивные данные, выполнить стилизацию в духе ASCII-арта, упростить работу с датами и изображениями, облегчить обработку NLP, спланировать время выполнения функций.  
Эффективные шаблоны архитектуры программного обеспечения

Эффективные шаблоны архитектуры программного обеспечения

Ознакомьтесь с востребованными шаблонами архитектуры программного обеспечения и их практическим применением. Четкое представление о том, какие из шаблонов наиболее эффективно работают в определенных ситуациях, - ключ к созданию оптимальной архитектуры.
Как создать атомарный загрузчик в Jetpack Compose

Как создать атомарный загрузчик в Jetpack Compose

Jetpack Compose предлагает эффективные инструменты для разработки визуально привлекательной плавной загрузки. Предлагаем руководство по созданию 3D-анимации атомарного загрузчика, которая впечатлит самых претенциозных пользователей современных приложений.
Проекты Go: создаем собственное канареечное развертывание

Проекты Go: создаем собственное канареечное развертывание

Каким образом перенаправляется трафик? Разберем различные подходы к развертыванию с примерами кода.
Объединение множеств C++: практическое руководство с реальными примерами

Объединение множеств C++: практическое руководство с реальными примерами

Научимся эффективно применять в проектах алгоритм std::set_union, оптимизировать его. Разберем нюансы, проиллюстрируем примерами и реальным сценарием.
Почему имена Android-пакетов имеют вид com.xyz.abc?

Почему имена Android-пакетов имеют вид com.xyz.abc?

Узнайте, почему необходимо использовать реверсивный домен организации при именовании пакетов в Android-проекте. Усвоив этот простой способ именования, вы сохраните свой код чистым, организованным и готовым к последующим изменениям.
Обработка ошибок на Rust: безопасный и чистый код без unwrap

Обработка ошибок на Rust: безопасный и чистый код без unwrap

Почему unwrap рискован на продакшене? Рассмотрим альтернативы  -  unwrap_or и unwrap_or_else, оператор ?, выражения match и while let.
Как проходится ассоциативный массив на C++

Как проходится ассоциативный массив на C++

Изучим способы итеративного прохождения  -  от простого цикла for с диапазоном и до гибких итераторов. Разберем нюансы и типичные ошибки, проиллюстрируем примерами.
Реализация ролевого контроля доступа в Elasticsearch

Реализация ролевого контроля доступа в Elasticsearch

Как защитить данные и предотвратить несанкционированный доступ? Пройдем этапы настройки, дадим рекомендации по эффективному ролевому контролю.
Jetpack Compose: настройка Retrofit и Ktor с помощью Dagger Hilt для внедрения зависимостей

Jetpack Compose: настройка Retrofit и Ktor с помощью Dagger Hilt для внедрения зависимостей

Предлагаем исчерпывающее руководство по сетевой интеграции в Jetpack Compose. Вы сможете создать простое приложение для отображения списка с помощью Retrofit или Ktor, выбрав тот фреймворк, который соответствует вашим потребностям.
Что такое «мьютекс» и как им предотвращаются состояния гонки?

Что такое «мьютекс» и как им предотвращаются состояния гонки?

Покажем, как просто на Go реализуется мьютекс без состояния гонки и с корректной синхронизацией. Напишем пример с легкими, параллельно выполняемыми потоками-горутинами.
С этим инструментом код чище в 10 000 раз

С этим инструментом код чище в 10 000 раз

Это цифровая Фрекен Бок, которая просматривает кодовую базу, находит надоедливые print и удаляет их быстрее, чем вы произнесете слово «рефакторинг». Разберем основной функционал, нюансы конфигурационного файла.
C++: практическое руководство по инициализированию вектора размером

C++: практическое руководство по инициализированию вектора размером

Изучим способы инициализации  -  от простых до самых сложных вроде пользовательских типов и многомерных структур. Разберем их нюансы и типичные ошибки, проиллюстрируем примерами и поможем выбрать оптимальный способ.
Ruby on Rails 7: важные рекомендации для высококачественного кода

Ruby on Rails 7: важные рекомендации для высококачественного кода

Используйте Hotwire для современного фронтенда, оптимизируйте запросы к базе данных, повышайте качество кода инструментами вроде RuboCop - и ваши проекты Rails 7 будут выгодно отличаться. Так создаются высокопроизводительные, сопровождаемые, масштабируемые приложения.
Мьютекс в Android: предотвращение состояния гонки

Мьютекс в Android: предотвращение состояния гонки

Использование мьютекса может значительно повысить производительность и надежность приложения, сделав многопоточный код более безопасным и предсказуемым. Рассмотрите на примерах Kotlin, как мьютекс применяется в Android для предотвращения состояния гонки.
10 эффективных методов написания Python-кода в одну строку

10 эффективных методов написания Python-кода в одну строку

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

C++: практическое руководство по множественным конструкторам

Изучим важные концепции  -  от простой перегрузки до сложных списков инициализаторов и делегирования конструкторов. Проиллюстрируем примерами, разберем нюансы и типичные ошибки.
Как создать анимацию кругового вытеснения в Jetpack Compose

Как создать анимацию кругового вытеснения в Jetpack Compose

Хотите разработать анимацию плавного кругового вытеснения, часто используемую в видеомонтаже и презентациях для создания плавных переходов между кадрами и слайдами? Предлагаем освоить как ручной, так и автоматический случаи использования этого анимационного эффекта. 
Чистая реализация структуры проекта на Go

Чистая реализация структуры проекта на Go

Изучим модульную структуру проекта для тестируемого и сопровождаемого приложения Go, которое создается по принципам чистой архитектуры. Используя веб-фреймворк Gin и базу данных MongoDB, сделаем простой REST API с функционалом регистрации, авторизации пользователей и управления их профилями.
Интуиция как ключ к успешному собеседованию по написанию кода

Интуиция как ключ к успешному собеседованию по написанию кода

Для большинства будущих программистов техническое собеседование - пугающее испытание. Эти 5 шагов на пути к развитию интуиции при подготовке к собеседованию помогут не только избежать стресса, но и впечатлить интервьюеров. 
Разработка отказоустойчивых микросервисов с шаблонами «Повтор» и «Выключатель»

Разработка отказоустойчивых микросервисов с шаблонами «Повтор» и «Выключатель»

Разберем, как преодолеваются трудности распределенных систем. Рассмотрим практический сценарий комбинирования шаблонов, дадим рекомендации по их реализации.
5 команд Linux, которые облегчают жизнь программистам

5 команд Linux, которые облегчают жизнь программистам

Повысьте свою производительность с помощью эффективных команд Linux. Они значительно упростят выполнение повседневных задач - от эффективного управления файлами и папками до навигации по каталогам и запоминания команд. 
Топ-10 типичных ошибок при реализации паттерна MVVM в Android 

Топ-10 типичных ошибок при реализации паттерна MVVM в Android 

Вы наверняка совершали эти ошибки при реализации паттерна Model-View-ViewModel в Android. Предлагаем на практических примерах разобраться в их причинах и рассмотреть способы их исправления. Это позволит значительно повысить сопровождаемость, тестируемость и общее качество Android-приложений. 
Модульное тестирование для долговечного кода

Модульное тестирование для долговечного кода

Как вместо постоянной отладки сфокусироваться на создании функционала? Написать тесты! Дадим рекомендации по написанию эффективных модульных тестов.
Комментарии к коду: почему больше не всегда значит лучше

Комментарии к коду: почему больше не всегда значит лучше

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

C++: подробное руководство по разыменованию указателя

Разберем нюансы и ошибки разыменования. Проиллюстрируем примерами и реальным сценарием. Сравним эффективность прямого доступа к массиву и разыменования указателя.
Альтернатива Docker Desktop, которая работает быстрее

Альтернатива Docker Desktop, которая работает быстрее

Как сэкономить ресурсы процессора и памяти? Представляем быстрый, сверхлегкий, мощный и простой инструмент, с которым нормально работается на ноутбуке, открываются Chrome и любое другое приложение.
Операторы Ruby: звездочка * и двойная звездочка **

Операторы Ruby: звездочка * и двойная звездочка **

Изучим эти мощные инструменты, их принцип работы. Рассмотрим, как аргументы передаются в методы, собираются в массив и хеш, каковы особенности присвоения значений.
Реализация "бесконечного" пейджера в Jetpack Compose

Реализация «бесконечного» пейджера в Jetpack Compose

Хотите превратить стандартный пейджер в "бесконечный", чтобы повысить удобство и вовлеченность пользователей? Предлагаем простые стратегии реализации бесконечного скроллинга с минимальными изменениями кода. 
28 суперполезных фрагментов Python-кода для решения повседневных задач 

28 суперполезных фрагментов Python-кода для решения повседневных задач 

Повысьте свою производительность с помощью этих решений на Python. Охватывая широкий спектр задач - от объединения датафреймов и слияния списков до работы с датами, сортировки данных и управления использованием памяти, - они позволят обеспечить эффективность кода и оптимизировать работу с данными.
C++: подробно о реализации двусторонней очереди

C++: подробно о реализации двусторонней очереди

Изучим особенности реализации deque, ее отличия от vector и разберем нюансы производительности. Проиллюстрируем примерами и реальным сценарием.
PostgreSQL и MySQL: подробное сравнение

PostgreSQL и MySQL: подробное сравнение

Изучим преимущества, ограничения и сценарии этих двух баз данных. Сравним их по многим аспектам, поможем сделать правильный выбор.
Xcode: шпаргалка для iOS разработчиков

Xcode: шпаргалка для iOS разработчиков

Приводим исчерпывающий список клавиш быстрого доступа: сборка, запуск, отладка, навигация и редактирование кода, рефакторинг и преобразование… Сохраните в закладках.
Как участие в открытых проектах помогает найти работу?

Как участие в открытых проектах помогает найти работу?

Мечтаете о карьере разработчика ПО, но не знаете, как выгодно выделиться на фоне конкурентов? Узнайте о преимуществах участия в таких мероприятиях, как Hacktoberfest, и внесении вклада в такие открытые проекты, как Taipy, Composio, CopilotKit и ToolJet. 
Эффективная стратегия тестирования Android-проектов. Часть 2: модульное тестирование

Эффективная стратегия тестирования Android-проектов. Часть 2: модульное тестирование

Эта часть посвящена основным элементам модульного тестирования при подготовке Android-проектов, а также различным типам тестовых дублеров. Вы узнаете, что именно надо тестировать при Android-разработке и получите рекомендации по написанию удобных в обслуживании и эффективных тестов.
Модульные тесты на Golang: от стандартного Testing до Testify

Модульные тесты на Golang: от стандартного Testing до Testify

Напишем тесты для проверки работы функций. Посмотрим, как совершенствуются тестовые сценарии с Testify.
C++: подробное руководство по is_open()

C++: подробное руководство по is_open()

Рассмотрим типичные сценарии применения этой функции, разберем нюансы и ошибки. Проиллюстрируем примерами и дадим рекомендации по производительности.
Удаленная отладка контейнеризованного Java-приложения с IntelliJ IDEA

Удаленная отладка контейнеризованного Java-приложения с IntelliJ IDEA

Как быть, если в локальных сеансах отладки проблема не воссоздается? Пошагово пройдем процесс настройки и запуска отладчика.
Java: оператор try-with-resources

Java: оператор try-with-resources

Изучим синтаксис try-with-resources, его преимущества по сравнению с традиционными блоками try-finally и нюансы управления ресурсами. Приведем практические примеры.
Эффективная стратегия тестирования Android-проектов. Часть 1

Эффективная стратегия тестирования Android-проектов. Часть 1

В этой части описан и обоснован сбалансированный подход к комплексному тестированию Android-приложений, включающий автоматизированные (модульные, интеграционные, сквозные, интерфейсные) и ручные тесты. Такая эффективная стратегия позволяет минимизировать время и усилия, получив максимальную отдачу.
Многопоточность на Rust: ускоряем приложения, делаем их эффективнее

Многопоточность на Rust: ускоряем приложения, делаем их эффективнее

Продемонстрируем мощный подход к выполнению операций в многосхемных базах данных и к параллельной обработке данных. Из строгой системы типов Rust, асинхронных возможностей и потоковой модели создадим надежное приложение.
Как последовательно писать аналитические SQL-запросы за 8 шагов

Как последовательно писать аналитические SQL-запросы за 8 шагов

Сразу никогда не бывает очевидно, как перейти от простого SQL-запроса к сложному, особенно если запрос содержит сложные вычисления. Одна из «опасностей» SQL заключается в том, что можно создать исполнимый запрос, но вернуть неверные данные. Например, легко увеличить значение вычисляемого поля, объединив его с несколькими строками. Автор материала показывает, как строить SQL последовательно, чтобы сократить количество ошибок.
[SwiftUI] @AppStorage: управление UserDefaults с помощью ViewModel

[SwiftUI] @AppStorage: управление UserDefaults с помощью ViewModel

Чем @AppStorage отличается от @State и как решается потенциальная проблема @AppStorage с самим SwiftUI? Применим подход со ViewModel.
Зачем изучать Linux?

Зачем изучать Linux?

Сегодня многие домашние пользователи и компании переходят на Linux. И это не единственная причина, почему вам стоит присоединиться к их числу. Даже если вы поклонник Windows, изучение Linux - просто необходимость для разработчика ПО.
Как создать загрузчик с вращающимися кругами в Jetpack Compose

Как создать загрузчик с вращающимися кругами в Jetpack Compose

Хотите порадовать пользователей анимацией с вращающимися разноцветными кругами? Выполнить ее в Jetpack Compose позволит функция SpinningCirclesLoader. Предлагаем руководство с несколькими вариантами ее использования. 
Удаление последнего символа строки на C++: методы и их применение

Удаление последнего символа строки на C++: методы и их применение

Сравним эффективность pop_back(), resize(), erase() и substr(), разберем их нюансы, проиллюстрируем примерами. Рассмотрим реальный сценарий и типичные ошибки, поможем выбрать оптимальный метод
C# -  создаем клиент-серверный чат на TCP

C# —  создаем клиент-серверный чат на TCP

Сделаем простую TCP-настройку, чтобы приложения C# «общались» по сети, как старые друзья. Снабдим сервер «ушами», а клиента  -  рацией.
Шпаргалка по Kotlin Flow для продвинутых инженеров Android

Шпаргалка по Kotlin Flow для продвинутых инженеров Android

Изучим ключевые понятия и нюансы: холодные и горячие потоки, каналы channel, потоки flow. Разберем операторы, промежуточные операции и функции для объединения потоков, сценарии применения и фрагменты кода.
Пишем балансировщик нагрузки на Golang

Пишем балансировщик нагрузки на Golang

Реализуем логику распределения нагрузки с алгоритмом циклического перебора, перенаправлением запроса на бэкенды через обратный прокси-сервер, тремя повторами при сбое и обозначением бэкенда «мертвым». Как обрабатываются ситуации сбоя запроса?
18 понятий программирования, о которых вы никогда не слышали (но должны были!)

18 понятий программирования, о которых вы никогда не слышали (но должны были!)

Откройте для себя "скрытые жемчужины" программирования, чтобы улучшить навыки в написании кода. Освоив эти 18 понятий, вы получите мощные инструменты для простого решения сложных проблем - будь то оптимизация производительности, безопасности или читабельности. 
Как создать CSV-файл с помощью C++

Как создать CSV-файл с помощью C++

На примерах разберем разные подходы, дадим рекомендации по повышению производительности. Рассмотрим реальный сценарий и типичные ошибки.
Роль метода Stream.map() в Java

Роль метода Stream.map() в Java

Для многих задач в Java метод map() предоставляет гибкие и лаконичные решения. Ознакомьтесь с ними, чтобы понять, как работает этот метод и в каких случаях он может быть полезен. Применяя его в реальных сценариях, вы упростите код, повысив его читаемость и удобство при сопровождении.
Новые способы оптимизации стабильности в Jetpack Compose

Новые способы оптимизации стабильности в Jetpack Compose

C выпуском Compose 1.5.4 появился новый режим работы - Strong Skipping. Он позволяет сделать большее количество классов стабильными без дополнительного кода. Предлагаем на конкретных примерах кода разобраться, насколько это удобно и эффективно.
14 вопросов по валидациям на Ruby on Rails

14 вопросов по валидациям на Ruby on Rails

Шпаргалка для собеседования по важной теме Ruby. Некоторые ответы снабжены примерами кода.
Почему микросервисы нужны каждому разработчику

Почему микросервисы нужны каждому разработчику

Изучим преимущества и недостатки микросервисов: как здесь создается, развертывается и сопровождается ПО, определяются границы сервисов. Разберем стратегии надежной микросервисной архитектуры.
Как спроектировать рекомендательную систему

Как спроектировать рекомендательную систему

Разберем пошагово процесс создания масштабируемой, эффективной системы рекомендаций с нуля. Подробно изучим нюансы ее компонентов: сбор и представление данных, выбор алгоритма, обучение модели, обработка в реальном времени, обратная связь.
C++: подробное руководство по std::accumulate

C++: подробное руководство по std::accumulate

На примерах разберем нюансы этой функции, в том числе ее отличия от параллельных алгоритмов C++17. Рассмотрим реальный сценарий и типичные ошибки.
Руководство по устранению неполадок в Kubernetes

Руководство по устранению неполадок в Kubernetes

Изучим передовые практики, инструменты, команды, методы отладки, рекомендации с примерами. Рассмотрим продвинутые методы: инструментирование трассировок, удаленную отладку.
Преобразуем проект в мультиплатформенный с Kotlin Multiplatform: зачем, когда и как

Преобразуем проект в мультиплатформенный с Kotlin Multiplatform: зачем, когда и как

Как сделать разработку эффективнее, не переписывая приложения? Расскажем о преимуществах и универсальной стратегии плавного перехода, при котором сохраняется надежность цифрового продукта.
Оптимальные инструменты Firebase для мобильного приложения

Оптимальные инструменты Firebase для мобильного приложения

Как упрощается процесс разработки с готовыми решениями аутентификации, уведомлений, баз данных реального времени? Изучим реализацию важного функционала: FCM, Remote Config, расширений, распространения приложений, устранения сбоев, мониторинга производительности.
5 навыков работы в Python на прокачку

5 навыков работы в Python на прокачку

Изучим основные концепции и приемы программирования на Python. В каждой теме  -  от обработки исключений до виртуальных сред для изолирования проектов  -  рассмотрим практические рекомендации по написанию чистого, эффективного кода.
Механика разрешения имен и связывания на C++

Механика разрешения имен и связывания на C++

Разберемся с разрешением символов, типами связывания и распространенными проблемами: ошибками повторных определений, неразрешенных символов, нарушений правила одного определения. Узнаем, как предотвращаются конфликты именования.
Мой первый опыт работы с языком Gleam 

Мой первый опыт работы с языком Gleam 

Gleam - надежный инструмент в мире функционального программирования. Проведем объективное исследование возможностей этого языка и выделим его сильные стороны.
Как создать анимированный переключатель тем в Jetpack Compose

Как создать анимированный переключатель тем в Jetpack Compose

Сколько пользователей, столько и предпочтений. Темы - не исключение. Кому-то больше нравится темное оформление, кому-то - светлое. Сегодня посмотрим, как разработать оригинальный переключатель тем с помощью Jetpack Compose.
C++: практическое руководство по priority_queue

C++: практическое руководство по priority_queue

На примерах покажем, как создаeтся приоритизированная очередь, применяются пользовательские типы, обходятся ограничения. Рассмотрим реальный сценарий.
Продвинутые концепции Kafka для старшего инженера-программиста

Продвинутые концепции Kafka для старшего инженера-программиста

Рассмотрим важный функционал: репликацию, избыточность данных, гарантии доставки, разбиение на разделы, управление смещениями, операции контроллера, эволюцию схем. Изучим расширенное применение Kafka, политики сжатия и хранения сообщений, сценарии Kafka Streams, безопасность и соответствие требованиям, мониторинг и наблюдаемость.
10 наиболее эффективных CLI-инструментов 

10 наиболее эффективных CLI-инструментов 

Эти утилиты способны значительно повысить продуктивность работы. Они помогут расширить возможности терминала и навигации, оптимизируют взаимодействие с системами контроля версий, автоматизируют повторяющиеся задачи, возьмут на себя управление задачами и организацию информации.
Адаптируем Android-приложение к большим размерам экрана с помощью классов window-size

Адаптируем Android-приложение к большим размерам экрана с помощью классов window-size

"Большой экран" становится популярным и быстрорастущим сегментом устройств Android. Самое время научиться оптимизировать приложение для любого размера экрана. Узнайте о классах window-size, рассмотрите сценарии их использовании в разных типах макетов навигации и закрепите материал с помощью реальной демонстрации.
C++: полное руководство по преобразованию строки в число двойной точности

C++: полное руководство по преобразованию строки в число двойной точности

Изучим методы с их преимуществами и недостатками, оптимальные сценарии. Поможем оценить нюансы std::stod(), std::stringstream и atof() и выбрать метод под конкретные требования.
Подробно о технологии «Издатель-подписчик» Redis

Подробно о технологии «Издатель-подписчик» Redis

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

Стековая и кучная память в Kotlin 

Хотите максимально эффективно управлять памятью в Kotlin? Тогда выясните, чем различаются стековая и кучная память. Разобраться в этом непростом вопросе помогут простые аналогии и примеры кода.
Создание снэкбара с обратным отсчетом времени в Android с помощью Jetpack Compose

Создание снэкбара с обратным отсчетом времени в Android с помощью Jetpack Compose

Снэкбар - полезная функция в контексте современной веб-разработки. Она дает пользователю время подумать над принятием важного решения. Поговорим о том, как создать снэкбар, используя арсенал Jetpack Compose.
20 основных вопросов для собеседования по Android

20 основных вопросов для собеседования по Android

Без этих 20 вопросов не обходится ни одно собеседование по Android-разработке. Попробуйте ответить на них самостоятельно, заглядывая в готовые ответы лишь в случае затруднения.
Приложение React Native с поддержкой Apple Watch и виджетов

Приложение React Native с поддержкой Apple Watch и виджетов

Хотите достичь новых горизонтов в разработке на React Native? Сегодня поговорим о том, как интегрировать приложение Apple watchOS с приложением на React Native, а также создадим виджет, который можно установить в циферблате часов в качестве дополнительной функции.
Как я создал 2D-игру с помощью Ebiten за 40 минут

Как я создал 2D-игру с помощью Ebiten за 40 минут

Хотите создать видеоигру менее чем за час? Следуйте руководству по максимально упрощенной разработке 2D-игры с использованием языка Go и библиотеки Ebiten и возможностью развертывания на Windows, macOS и Linux. 
Конструктор перемещения на C++

Конструктор перемещения на C++

Сравним конструкторы перемещения и копирования: что быстрее? Изучим их связь и соответствующие семантики, варианты применения.
Базовая торговая стратегия, позволяющая переиграть рынок

Базовая торговая стратегия, позволяющая переиграть рынок

Предлагаем руководство по созданию на Python и бэктесту простой, но эффективной торговой стратегии. Используя всего два базовых финансовых показателя, она обеспечит быстрый и стабильный рост дохода в течение длительного времени.
Как реализовать в Golang двухфакторную аутентификацию с TOTP

Как реализовать в Golang двухфакторную аутентификацию с TOTP

Поэтапно настроим среду, интегрируем в проект библиотеку и рассмотрим различные аспекты 2FA, включая генерирование и хранение секретов, обработку аутентификации пользователя и проверку кодов TOTP. Дадим рекомендации по реализации в приложении Golang.
5 реальных способов достичь сбалансированности трудовой жизни

5 реальных способов достичь сбалансированности трудовой жизни

Вы руководитель инженерного отдела, желающий достичь баланса между работой и отдыхом? Следуйте этим 5 практическим советам, основанным не на стереотипах, а на реальном опыте. Они помогут привести команду к успеху без ущерба для здоровья.
Улучшение воспроизведения видео с помощью ExoPlayer

Улучшение воспроизведения видео с помощью ExoPlayer

Видеоконтент все чаще интегрируется в мобильные приложения, и от его качества во многом зависит пользовательский опыт. В этой статье разберем практические советы о том, как улучшить воспроизведение видео и эффективно использовать ExoPlayer в приложении для Android.
3 лайфхака по работе с музыкальным ИИ в условиях нехватки данных 

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

Нехватка данных - не повод сдерживать ваш энтузиазм! Практические советы эксперта в области музыкального ИИ помогут создать надежную модель даже с небольшим набором данных. Она позволит решать любые задачи - будь то определение тональности, обнаружение помех, распознавание инструментов или сравнение музыкальных фрагментов.
Дорожная карта iOS для разработчиков Android: основы

Дорожная карта iOS для разработчиков Android: основы

Хотите стать универсальным разработчиком, знающим особенности программирования как для Android, так и для iOS? Этот гайд расскажет о различиях и сходствах работы с этими двумя платформами. 
Методы wait(), notify() и notifyAll() в Java

Методы wait(), notify() и notifyAll() в Java

Ознакомьтесь с ключевыми аспектами языка Java: межпотоковое взаимодействие, синхронизация, многопотоковая обработка. Особое внимание обратите на работу методов wait(), notify() и notifyAll() и рекомендуемые практики их применения. 
Освоение широковещательных приемников в Android

Освоение широковещательных приемников в Android

Широковещательные приемники - важный компонент разработки Android. Чтобы использовать их потенциал правильно, узнайте об их основных функциях и областях применения. 
10 способов повысить качество Python-кода

10 способов повысить качество Python-кода

Пополните копилку своих Python-компетенций 10 лайфхаками, которые должен знать каждый программист. Применяя их в повседневной практике, вы не только будете писать эффективный код профессионального уровня, но и повысите собственную производительность.
SQL в браузере  -  веб-оболочка DuckDB для анализа локальных данных

SQL в браузере  —  веб-оболочка DuckDB для анализа локальных данных

Как анализировать данные намного проще и полнофункциональнее, чем в Excel? Сделаем локальный файл доступным для SQL-операций с DuckDB, преобразуем в реальную таблицу, доберемся до файлов на GitHub и S3.
Как создать форму текстового фона в Jetpack Compose

Как создать форму текстового фона в Jetpack Compose

Красивое оформление повышает привлекательность текста для пользователей. Сегодня расскажем, как с помощью Jetpack Compose "одеть" текст в фоновую форму.
Ознакомление с функциями высшего порядка в Kotlin

Ознакомление с функциями высшего порядка в Kotlin

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

7 полезных атрибутов HTML, о которых не все знают

Каждый веб-разработчик должен иметь навыки использования HTML. Без знания этого языка нельзя стать стать настоящим профессионалом. Любой сайт в интернете создан на основе HTML,...
5 признаков того, что вы отличный разработчик

5 признаков того, что вы отличный разработчик

Насколько вы продвинуты в программировании и как быстро сможете повысить свою квалификацию? Чтобы ответить на эти вопросы, узнайте 5 основных признаков хорошего разработчика.
7 React-проектов, которые помогут вам стать лучшим разработчиком

7 React-проектов, которые помогут вам стать лучшим разработчиком

Хотите расширить свое портфолио и основательно изучить ReactJS? Эти 7 React-проектов идеально подходят для развития навыков веб-разработки. Они помогут вам создавать интерактивные сайты и приложения на высоком профессиональном уровне.
Software

Как ваша программа использует память

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

Почему стоит избегать метода push при разработке на JavaScript

Использование метода push может привести к изменению исходного массива. Такой код чреват потенциальными проблемами и, возможно, его придется даже переписывать.