Тренды

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

Псевдоним типа в Swift

Псевдоним типа в Swift

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

Продвинутый функционал Git: хитрые приемы и команды

git  —  очень мощный инструмент, который практически каждый разработчик задействует ежедневно. Но для большинства его использование сводится всего к нескольким командам: pull, commit и...
Комбинаторы парсеров: от parsimmon до nom (Typescript → Rust)

Комбинаторы парсеров: от parsimmon до nom (Typescript → Rust)

В этой статье мы вкратце рассмотрим процесс повторной реализации фиктивного синтаксического анализатора языка запросов, написанного на Typescript. Новая реализация будет на Rust. Комбинатор парсеров представляет...
Shared Components

Как обеспечить возможность обнаружения для совместно используемых компонентов

Компоненты привносят модульность в дизайн приложений. Модульность, в свою очередь, обеспечивает возможность повторного использования, благодаря которой можно создавать приложения без необходимости каждый раз изобретать...
Функциональное программирование  -  будущее компьютерной науки?

Функциональное программирование  -  будущее компьютерной науки?

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

Фича-флаги времени компиляции в Rust: зачем, как и когда используются

Что из себя представляют фича-флаги, зачем они нужны и как их правильно использовать?
Сетевое программирование в Go

Сетевое программирование в Go

Предлагаем пошаговый гайд по созданию надежного TCP-сервера с использованием Go. Такой сервер обеспечивает регистрируемую и контролируемую доставку потока одновременных соединений.
Использование стека навигации SwiftUI для идеального поведения TabView

Использование стека навигации SwiftUI для идеального поведения TabView

Объясним на примерах, как с помощью перечислений enum и стека навигации NavigationStack SwiftUI обеспечить ожидаемое поведение TabView.
Как объединить мобильные сервисы Google и Huawei в одной кодовой базе

Как объединить мобильные сервисы Google и Huawei в одной кодовой базе

Хотите работать с мобильными сервисами Google и Huawei в одной кодовой базе? Это руководство позволит без особых усилий объединить сервисы Google и Huawei в приложении и выборочно их использовать по мере необходимости.
Java 17: что нового по сравнению с Java 11

Java 17: что нового по сравнению с Java 11

Что может предложить разработчикам новая стабильная версия Java? Вкратце обрисуем самые важные функции, отличающие эти два релиза: Java 11 и 17.
Java

Кто на свете всех сильнее - Java, Go и Rust в сравнении

Мне показалось интересным провести сравнение между Java, Go и Rust. Речь идет не о бенчмарке, а о сравнении таких характеристик, как размер выходного исполняемого...
Как вызвать из C# генерируемую на Rust библиотеку

Как вызвать из C# генерируемую на Rust библиотеку

Объединяем преимущества двух языков. Узнаем, как создать библиотеку на Rust, выполнить сборку и с помощью P/Invoke вызвать из C# ее функции.
Android

Навигация по настраиваемой доставке

Android App Bundle — это новый формат публикации для Android-приложений, заменяющий монолитный APK. Сам пакет приложений непосредственно не устанавливается. Вместо этого Google Play генерирует оптимизированные APK...
Python

Как быстро найти проблемы с Python-типами через Pytype

Если вы работаете над большим проектом на Python или предпочитаете лаконичную и понятную базу кода, то Pytype станет для вас отличным помощником. Python — это отличный язык...
Фреймворк The Composable Architecture

Фреймворк The Composable Architecture

Combine с закрытым исходным кодом Apple скоро заменят в TCA на код async/await, сделав его фреймворком с поддержкой нескольких платформ и, возможно, с портированием на другие языки. Рассмотрим функционал, преимущества, последние разработки, применение и план освоения TCA.
Python

Вы умеете говорить на Python?

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

Что нового в Jetpack

Android Jetpack — это набор библиотек, направленных на то, чтобы помочь вам легко писать высококачественные приложения, поддерживая более старые версии Android. Спустя два года после запуска...
Golang

Введение в каналы Golang

Golang использует горутины для параллельного программирования. На них можно ссылаться как на подзадачи для приложения. Если вы новичок в Golang, то рекомендую для начала...
Cosmo Route  -  молниеносный маршрутизатор с открытым исходным кодом и поддержкой Federation V1/V2

Cosmo Route  —  молниеносный маршрутизатор с открытым исходным кодом и поддержкой Federation V1/V2

Elastic-лицензия Apollo Router мешает внедрению? Хотите работать еще быстрее? Для подобных случаев идеально подойдет Cosmo Router - быстрый маршрутизатор с открытым исходным кодом, совместимый с Federation V1/V2.
В ожидании Java 16: Stream.toList() и другие методы преобразования

В ожидании Java 16: Stream.toList() и другие методы преобразования

Только самообслуживание  В 2004 году я работал архитектором ПО на Java в крупной финансовой компании. На тот момент в этом языке отсутствовало большинство эффективных функциональностей...
Как создать инструмент PGP-шифрования на основе Python

Как создать инструмент PGP-шифрования на основе Python

Сделаем первый шаг в мир кибербезопасности и шифрования. Для этого создадим инструмент командной строки для PGP-шифрования с помощью Python.
Node

Как создать HTML-таблицу и PDF с Node и Google Puppeteer

В этой статье мы узнаем о возможностях встроенного инструмента утилиты Node под названием fs (file system). В документации fs говорится: Модуль fs предоставляет API для взаимодействия...
Как Scalene с ИИ-рекомендациями оптимизирует код Python

Как Scalene с ИИ-рекомендациями оптимизирует код Python

Изучим характеристики и принцип работы профилировщика Scalene, который помогает ускорять код и сокращать потребление памяти. Дополнительно рассмотрим преимущества его совместной работы с OpenAI.
Golang

Go: трассировочный пакет

ℹ️ В статье речь идёт о Go 1.13. В Go имеется инструмент для проведения трассировки и получения подробного представления о работе программы во время её...
Управление зависимостями в Python: файл pyproject.toml

Управление зависимостями в Python: файл pyproject.toml 

Познакомимся с файлом pyproject.toml, рассмотрим его практическое применение и возможности в управлении зависимостями в проектах Python.
Как построить масштабируемый API на Go с помощью Gin

Как построить масштабируемый API на Go с помощью Gin

Пошаговое руководство по проектированию API, от с создания базы данных и прописывания основных маршрутов до тестирования его работоспособности.
Java

Основы программирования TCP-сокетов на Java

Клиент-серверная архитектура — наиболее распространенная структура приложений в Интернете. В этой архитектуре клиенты (т.е. персональные компьютеры, устройства Интернета вещей и т. д.) сначала запрашивают ресурсы с...
Понятия "связанности" и "связности" в объектно-ориентированном программировании

Понятия “связанности” и “связности” в объектно-ориентированном программировании 

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

Овладей Python, создавая реальные приложения. Часть 6

Предыдущие части: Часть 1, Часть 2, Часть 3, Часть 4, Часть 5 Многие считают, что наука о данных— это крутые алгоритмы машинного обучения и машины на автопилоте. Позвольте вас...
PostgreSQL вместо Kafka: способ реализации системы очередей

PostgreSQL вместо Kafka: способ реализации системы очередей

Очереди - ключевой элемент в распределенных системах. Поэтому так важно организовать их обработку наиболее оптимальным образом. Здесь о своем подходе к решению этого вопроса рассказывает представитель платформы работы с данными RudderStack.
Как удаленно отлаживать сайты для Android с помощью Chrome DevTools

Как удаленно отлаживать сайты для Android с помощью Chrome DevTools

Поскольку под управлением Android работает более 2,5 млрд устройств, разработчики не могут игнорировать оптимизацию веб-страниц для этой операционной системы (ОС). Обычно на устройствах с...
Julia

Стоит ли учить Julia?

Julia — это новейший IT-язык, поэтому я решил его попробовать. Вопрос в том, стоит ли добавлять его в арсенал специалиста по данным? Установка Первое, что стоит знать о...
Разветвление вселенной UI

Разветвление вселенной UI

В 2023 году нам предстоит увидеть новые версии пользовательского опыта. Ознакомьтесь с некоторыми из них, а заодно поразмышляйте над тем, нужно ли нам отказаться от пользовательского интерфейса вообще или стоит переосмыслить его в пользу более естественных, минималистичных и осязаемых вариантов?
Python

Инструмент, который автоматически находит уязвимости в Python-коде

TL;DR В январе 2019 года мы запустили инструмент, который эффективно находит уязвимости в Python-коде. Мы создали автоматизированную систему, в которой объединили алгоритмы анализа потока данных...
Как автоанализ кода с помощью ИИ повышает безопасность приложений

Как автоанализ кода с помощью ИИ повышает безопасность приложений

Инженеры по безопасности приложений напоминают канатоходцев. Им постоянно приходится балансировать: быть универсальными специалистами по всему спектру приложений и экспертами по ряду флагманских приложений. Узнайте о том, как ИИ способен помочь в этой непростой ситуации.
Создание GUI PyWebIO для удаления пакетов Python

Создание GUI PyWebIO для удаления пакетов Python

Как правило, эксперименты с новыми проектами заканчиваются установкой множества библиотек Python. В связи с этим периодически возникает необходимость их чистить, удаляя старые и уже ненужные.
Плохого кода не существует!

Плохого кода не существует!

Немного размышлений на тему плохого кода, приправленных перчинкой юмора.
Написание кода как создание бестселлера

Написание кода как создание бестселлера

Можно ли сказать, что код пишется по тем же законам, что и проза? В чем сходство между программистом и писателем? Какую услугу им обоим может оказать генеративный ИИ? Поразмышляйте над этими вопросами, чтобы писать код, напоминающий бестселлер.
Go на пороге третьего десятилетия 21 века: язык программирования для искусственного интеллекта и науки о данных

Go на пороге третьего десятилетия 21 века: язык программирования для искусственного интеллекта и науки...

Python появился 30 лет назад, но только через 20 лет получил признание разработчиков. Он колоссально вырос за это время, особенно за последние пять лет...
CPP

[C++] часть 1: многопоточность, конкурентность и параллелизм: ОСНОВЫ

Простое руководство по изучению многопоточности, конкурентности и параллелизма в C++ Вначале, когда ещё только состоялось моё знакомство с многопоточностью в C++, многое было мне непонятным...
Matplotlib

Анимации с Matplotlib

Используем библиотеку matplotlib для создания интересной анимации Изображение имитации дождя выполнено с помощью библиотеки Matplotlib, известной как прародитель пакетов для визуализации данных на python. Matplotlib...
Kotlin: вложенный и внутренний классы

Kotlin: вложенный и внутренний классы

Чем отличаются вложенные классы от внутренних? Как в Kotlin одни классы объявляются внутри других?
3 функции Python Matplotlib: повысьте информативность визуализации данных

3 функции Python Matplotlib: повысьте информативность визуализации данных

Форма представления так же важна, как и содержимое. Python Matplotlib поможет вам в создании понятных и лаконичных визуализаций.
Python

Python — идеальный инструмент для любой проблемы

Размышления о моей первой программе на Python. Размышления это всегда помогающее (а иногда и развлекающее) занятие. Из ностальгических соображений, конечно, если можно испытывать ностальгию по...
Golang

Привет, Go!

За последние пару месяцев я полюбил Go по разным субъективным причинам. Чтобы продемонстрировать всю красоту и простоту языка Go, рассмотрим классическую небольшую программу, которая...
Роль Fragments в современной разработке приложений для Android

Роль Fragments в современной разработке приложений для Android

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

Решение крупномасштабных задач машинного обучения на Python

Представляем краткое руководство по использованию библиотеки xLearn. Алгоритмы, поддерживаемые этой библиотекой, позволят решать многие задачи машинного обучения.
10 проектов для изучения Golang в 2023 году

10 проектов для изучения Golang в 2023 году

Учиться лучше на практике, и оптимальный способ освоить Golang - создавать проекты. Мы отобрали для вас подходящие проекты - не слишком сложные и не самые простые - с курсами для начинающих и опытных разработчиков.
Kotlin

Ключевое слово vararg и оператор spread в Kotlin

Что осталось за кадром? В некоторых случаях необходимо определить функцию с переменным числом параметров; Вот пара примеров, с которыми вы, вероятно, сталкивались в Android:printf(String format, Obj......
Топ-13 пакетов Python в 2023 году

Топ-13 пакетов Python в 2023 году

Предлагаем обзор 13 лучших пакетов Python, которые помогут ускорить процесс разработки. Оцените невероятные возможности Python, широту и глубину доступных ему задач (особенно в сфере машинного обучения).
Как быстро создать и развернуть веб-приложение на Python

Как быстро создать и развернуть веб-приложение на Python

Все, что вам потребуется для разработки и развертывания простейшего приложения, - знание языка Python и библиотеки Streamlit. Это пошаговое руководство поможет не только быстро создать приложение, но и поделиться им с друзьями.
Работа с графиками в SwiftUI: руководство для начинающих

Работа с графиками в SwiftUI: руководство для начинающих

Хотите, чтобы визуальный контент приложения был представлен в виде функциональных графиков? Воспользуйтесь руководством по работе со Swift Charts. Оно поможет освоить процесс создания и настройки диаграмм с возможностями модифицирования, комбинирования и интерактивности.
Эффективная передача сообщений между процессами в C ++

Эффективная передача сообщений между процессами в C++

Разбираемся в особенностях передачи сообщений между процессами. Рассмотрим как нужно писать для этого выразительный, чистый код.
Основы SQL: разница между GROUP BY и PARTITION BY

Основы SQL: разница между GROUP BY и PARTITION BY

Несмотря на кажущуюся простоту, SQL может таить в себе немало особенностей, о которых лучше узнать заранее. Сегодня рассмотрим основные различия между операторами GROUP BY и PARTITION BY, а также их основные сценарии использования.
Объекты данных в Kotlin

Объекты данных в Kotlin

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

String, StringBuilder и StringBuffer: понимаете ли вы разницу?

Все разработчики имеют дело со словами и фразами в некоторых частях кода. String — это тип данных, используемый в программировании для представления текста. В Java есть три...
10 вопросов, которые помогут нанять лучшего Android-разработчика

10 вопросов, которые помогут нанять лучшего Android-разработчика

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

Бинарное дерево на Go для новичка

Введение В этой статье мы сосредоточимся на том, как деревья бинарного поиска могут быть реализованы на Go и почему они предпочтительнее линейных структур данных, таких...
OOP

Хитрости объектно-ориентированного программирования. Часть 5: Правило бойскаутов

Всегда оставляйте лагерь чище, чем вы его застали Это мини-серия статей по написанию поддерживаемого объектно-ориентированного кода без лишней нервотрепки.  Предыдущие части: Часть 1, Часть 2, Часть 3 и Часть 4. Энтропия Энтропия — это отсутствие порядка...
Python

Полезные хитрости на Python от А до Я

Python — это один из самых популярных и востребованных языков программирования в мире. И на то есть множество причин: · прост в изучении; · мега-универсальный; · огромное разнообразие модулей...
VS Code Remote-SSH для удаленной разработки

VS Code Remote-SSH для удаленной разработки

Зачем ограничивать себя nano и vi, когда есть удобное расширение VS Code Remote-SSH для удаленной разработки? Вперед за знаниями!
Ключевые вопросы для собеседования по Spring Boot в 2023 году. Часть 1

Ключевые вопросы для собеседования по Spring Boot в 2023 году. Часть 1

Хотите получить должность Java-разработчика или повысить свой профессиональный уровень? Ознакомьтесь с актуальными ответами на 50 ключевых вопросов по микросервисам Spring Boot для собеседования с кандидатами на должность Java-программиста или инженера ПО.
Python

Импорт в Python: часть 2

Часть 1, Часть 2 Система импорта Python Мы видели много преимуществ системы импорта Python и способов их использования. В этой статье мы приподнимем завесу над тем, что...
Как сделать интеллектуальное приложение вопросов и ответов базы знаний с GPT-3 и Ruby

Как сделать интеллектуальное приложение вопросов и ответов базы знаний с GPT-3 и Ruby

Подготовим базу знаний с двумя скриптами для GPT-3 вопросов и обучим модель ответам по содержимому сайта. Поэтапно создадим ИИ вопросов и ответов, разберем отладку ответов и два способа доработки модели.
Долгожданные инструкции Switch-Case в Python

Долгожданные инструкции Switch-Case в Python

Python 3.10 обрел немало интересных возможностей, одна из которых привлекла мое внимание в особенности  —  структурное сопоставление с шаблоном, иначе говоря инструкции switch/case. Несмотря на...
R

R - язык для статистической обработки данных. Часть 2/3

Часть 1, Часть 2 Предыдущую часть мы закончили темой векторов, а в этой — переходим к матрицам.  9. Что такое матрица? Матрица, как структура данных, тоже часто встречается в R.  Её...
Создание чат-бота с помощью LLM и LangChain

Создание чат-бота с помощью LLM и LangChain

Хотите создать диалогового чат-бота на основе собственных наборов данных? Воспользуйтесь пошаговым руководством по разработке диалогового чат-бота с оптимизированной памятью с использованием LLM и LangChain.
Реализация масштабируемого и гибкого пользовательского экрана с несколькими переключателями на Swift

Реализация масштабируемого и гибкого пользовательского экрана с несколькими переключателями на Swift

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

Jetpack Compose Canvas: 10 практических примеров

Разрабатываете пользовательское представление, игру или визуализацию данных? API Canvas обеспечит вам необходимые гибкость и контроль. Ознакомьтесь с его возможностями по созданию пользовательских рисунков.
Развертывание Kubernetes с пользовательским файлом index.html в поде Nginx с ConfigMap

Развертывание Kubernetes с пользовательским файлом index.html в поде Nginx с ConfigMap

Настроим веб-страницу index.html в поде Kubernetes с ConfigMap и веб-сервером Nginx. Убедимся в ее работоспособности, выведя сообщение в командную строку и веб-браузер.
Python

Как создавать веб-сокеты в Python

WebSocket — протокол связи поверх TCP-соединения, предназначенный для обмена сообщениями между браузером и веб-сервером в режиме реального времени. — Википедия Мы научимся настраивать собственный веб-сокет на Python, используя WebSockets...
Отладка API Java Message Service с использованием Lightrun

Отладка API Java Message Service с использованием Lightrun

Узнаем, как работает Java Message Service (JMS) и как инструмент под названием Lighrun помогает в отладке, если с пересылкой сообщений что-то идет не так.
Как создать локальное средство генерации кода с open source моделями и библиотекой Guidance от Microsoft

Как создать локальное средство генерации кода с open source моделями и библиотекой Guidance от...

Научимся писать подсказки для генерации кода. «Вручную» воссоздадим строку документации для большой языковой модели в VSCode.
Spring Boot: реализация фабричного метода

Spring Boot: реализация фабричного метода

Шаблон Factory упрощает создание новых объектов и помогает прятать логику, ненужную для клиента. Предлагаем рассмотреть вариант реализации шаблона фабрики для простого приложения на Spring Boot.
Python

Идиоматический Python для новичков

Python — это язык программирования общего назначения, который широко используется в таких областях, как научные вычисления, искусственный интеллект, веб-разработки, финансовое моделирование и многих других. Одна из...
9 встроенных декораторов Python, которые помогут оптимизировать код

9 встроенных декораторов Python, которые помогут оптимизировать код

Делайте больше меньшими средствами: используйте возможности декораторов. Они помогут сэкономить время на написание кода и откроют новые функциональные возможности Python.
Как работают обобщения в Kotlin

Как работают обобщения в Kotlin

Краткое руководство по обобщениям в Kotlin: преимущества, принцип действия и значимость в создании оптимального кода.
Rust

Кросс-компиляция программ Rust для запуска на маршрутизаторе

Вы никогда не задумывались о том, чтобы запустить на домашнем роутере какой-нибудь пакет Ubuntu? Для этого можно было бы использовать контейнеры LXC. Всё это...
Python

Контейнеризация в Python. Часть 2

Часть 1, Часть 2 Это вторая статья серии, посвящённой контейнеризации разработки в Python. В Части 1 мы уже разобрали лучшие практики контейнеризации Python-сервиса. Здесь мы...
iOS

Как сделать кастомные шорткаты для Siri

Шорткаты в Сири Это новая эппловская фича для iOS 12. Ее анонсировали во время приветственной речи на WWDC 2018, и вот уже этой осенью ею можно...
Android 14: обновления в области конфиденциальности и безопасности

Android 14: обновления в области конфиденциальности и безопасности

Узнайте о новых функциях Android 14, чтобы обновить свои приложения в соответствии с ними. Это поможет обеспечить безопасность приложений и соблюдение конфиденциальности пользователей.
Добавляем в приложение SwiftUI холст Freeform, чат и видеозвонки

Добавляем в приложение SwiftUI холст Freeform, чат и видеозвонки

Создадим виртуальную доску SwiftUI для совместной работы над идеями. Поработаем с фреймворком PencilKit, разберем функционал, реализуемый при интегрировании в приложение на iOS.
Миграции баз данных с Golang

Миграции баз данных с Golang

Изучим достоинства и недостатки очень полезного инструмента не только для тестирования, но и для контроля и управления версиями БД. Разберем особенности написания и применения SQL-миграций в службах на Go.
Язык С: классы памяти

Язык С: классы памяти

Классы памяти определяют область видимости и время жизни переменных и/или функций в программе, написанной на языке С. Они предшествуют типу, который модифицируют. В языке С различают четыре класса памяти. Рассмотрим их в данной статье.
Как оркестровать микросервисы с помощью Docker Compose

Как оркестровать микросервисы с помощью Docker Compose

Развертывание приложений с микросервисной архитектурой - довольно громоздкий процесс, занимающий много времени. Уменьшить рабочую нагрузку позволяет Docker Compose, инструмент оркестрации контейнеров. Рассказываем об упрощенном создании микросервисных приложений на Spring Boot.
Django Google SEO: поисковая оптимизация сайта на Python для индексации в Google

Django Google SEO: поисковая оптимизация сайта на Python для индексации в Google

Показываем четыре простых шага для повышения рейтинга сайта в поисковой системе Google благодаря улучшению Django Search Engine Optimization.
Go

Почему Go прекрасно подходит для DevOps

Go — это язык программирования с открытым исходным кодом, история которого началась в Google примерно десять лет назад. Сегодня Go стремительно приобретает популярность как язык будущего....
Как создать NFT-маркетплейс с полным стеком

Как создать NFT-маркетплейс с полным стеком

Предлагаем подробное руководство по созданию полнофункционального NFT-маркетплейса. В реализации используются Polygon, Next.js, Tailwind, Solidity, Hardhat, Ethers.js и IPFS.
Как овладеть наукой о геопространственных данных в 2023 году

Как овладеть наукой о геопространственных данных в 2023 году

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

Корутины Kotlin: как работать асинхронно в Android

Kotlin предоставляет корутины, которые помогают писать асинхронный код синхронно. Android — это однопоточная платформа, и по умолчанию все работает на основном потоке (потоке UI). Когда настает...
5 визуально эффектных программ для командной строки

5 визуально эффектных программ для командной строки

Долой унылые черно-белые приложения для командной строки. Добавим в рабочий процесс красок, анимации и динамики с помощью отличных программ: WTF, htop, mapscii, btop и wttr.
SQL

Руководство по анализу данных с SQL

Данные - это новое топливо цифровой эры. Однако с ростом их количества появляется необходимость извлекать из них смысл. В результате этого появилось множество профессий,...
Реализация параллакс-карусели из SwiftUI в Jetpack Compose

Реализация параллакс-карусели из SwiftUI в Jetpack Compose

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

Перехват сетевых запросов из мобильного приложения

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

Middleware Django: пользовательское ПО промежуточного слоя

Что такое middleware, как создать пользовательский Django middleware и как проверить стандартные? Всё, что нужно знать о связующем ПО.
Как загружать файлы и изображения в приложении Django

Как загружать файлы и изображения в приложении Django

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

7 признаков того, что Flutter готов к разработке корпоративных приложений

Есть ли у Flutter будущее в корпоративной сфере? Ответить на этот вопрос разработчики смогли только после бета-тестирования движка. Flutter доказал свою перспективность, предоставив программистам массу встроенных средств, облегчающих разработку платформозависимых приложений.
Android

Какие языки программирования нужно знать, чтобы разрабатывать приложения под Android?

Итак, вы решили научиться разрабатывать приложения под Android? Отлично! Но нужно понимать, что без труда не вынешь и рыбку из пруда. Программирование — это крайне обширная...
Python

Проблема и решение: присвоение имени файлу

Проблема: стандартный изменяемый объект Но сначала разберёмся: что такое изменяемый объект в Python? Изменяемые объекты — это такие объекты, которые можно поменять. Список, множество и словарь — всё это...
Графовые сверточные сети: введение в GNN

Графовые сверточные сети: введение в GNN

Предлагаем подробное описание механизма работы графового сверточного слоя. Пошаговое руководство по использованию PyTorch Geometric (PyG) позволит на практике применять этот механизм для решения задач классификации узлов.
WebAssembly: секретное оружие в разработке высокооптимизированных и безопасных веб-приложений

WebAssembly: секретное оружие в разработке высокооптимизированных и безопасных веб-приложений

Многие эксперты связывают будущее эффективных и безопасных вычислений с WebAssembly. Узнайте, в чем заключаются достоинства этого секретного оружия веб-разработчика и почему оно заслуживает вашего внимания.
Топ-10 вопросов о Pandas на StackOverflow

Топ-10 вопросов о Pandas на StackOverflow

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

Применение пустого пространства в UI-дизайне

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

Как оптимизировать навигацию в Jetpack Compose

Проанализируем ситуацию с навигацией в Jetpack Compose, выявим существующие проблемы и рассмотрим конструктивное решение в виде реализации чистой навигации.
Education

7 причин выгорания программистов

Джерри — джуниор-разработчик, который в начале своей карьеры не мог дождаться утра, чтобы приступить к работе. И каждый вечер, даже после 10-часового рабочего дня, он чувствовал...