Презентации в терминале
Забудьте о постоянных переключениях контекста, из-за которых убивается демонстрационный процесс. Создавайте терминальные презентации.
Компонентный подход: преодоление сложности в Android-приложениях. Часть 1
Как Android-разработчик, вы должны иметь четкое представление о компонентном подходе и его преимуществах. Это позволит избежать чрезмерной сложности в приложениях и значительно ускорить рабочие процессы.
Как предотвратить утечки памяти в Android-приложении
В этом руководстве изложены эффективные стратегии обнаружения, предотвращения и устранения последствий утечек памяти. Вовремя выявляя и эффективно устраняя проблемы с утечками памяти, вы обеспечите оптимальную производительность и стабильность Android-приложений.
Kotlin Multiplatform: как усовершенствовать процесс разработки iOS
Изучим стратегии и нюансы применения KMP в ключевых областях - архитектуре проекта, внедрении зависимостей, Kotlin-Swift совместимости. Рассмотрим, как в командах решаются типичные проблемы.
Apache Iceberg за семь часов
Подробно разберем принцип работы, изучим внутренние механизмы Apache Iceberg, поэкспериментируем с этим файловым форматом и PySpark, PyIceberg, каталогом Nessie.
Глубокое погружение в режим Copy-on-Write в pandas. Часть 2
В первой части мы рассказывали о том, как работает механизм Copy-on-Write. Там указывались области, в которых копии внедряются в рабочий процесс. Во второй части сосредоточимся на оптимизациях, которые позволят избежать замедления среднестатистического рабочего процесса.
Результаты опроса разработчиков Angular в 2023 году
Ознакомьтесь с инициативами сообщества Angular, высказанными в опросе 2023 года. Многие из них были учтены в дорожной карте Angular на 2024 год, нацеленной на улучшение опыта разработчиков и повышение производительности фреймворка.
Миграция UI-ориентированной библиотеки Android на Compose Multiplatform (Android/iOS)
Написать кроссплатформенный пользовательский интерфейс на Kotlin - уже не проблема. Теперь Android-разработчики могут создавать iOS-приложения на Kotlin с минимальными дополнительными усилиями. Убедитесь в этом на примере успешной миграции Android-библиотеки на Compose Multiplatform.
10 инструментов ИИ для SaaS-стартапов 2025
Рассмотрим ключевой функционал этих инновационных решений. Разберем учитываемые факторы, поможем определиться с выбором.
Шаблоны проектирования Python: рекомендации и антипаттерны
Как реализовать шаблоны корректно и избежать антипаттернов? Рассмотрим продвинутые темы, стратегии перехода от антипаттернов к передовым практикам, проиллюстрируем реальными примерами и кодом.
iOS/Swift: подробное руководство по модульным и UI-тестам. Часть 1
Добавим тесты в имеющийся проект, создадим новый и основательно все настроим. Распишем тестовый сценарий.
Зачем использовать RTK Query для API-вызовов в React
Если для API-вызовов в React-приложениях вы все еще используете Redux, значит, вам пора ознакомиться с более продвинутым инструментом - RTK Query. Он облегчит вашу работу, избавив от необходимости вручную писать логику загрузки и кэширования данных.
C++: полное руководство по перечислениям
Что придумали разработчики для преодоления ограничений C++? Познакомимся с практическими подходами к прохождению перечислений, дополним примерами кода и реальными сценариями.
Построение потоков событий с Rust и Kafka: практическое руководство
Реализуем отправителей и получателей, настроим корректную обработку ошибок, конфигурацию и типы. Обозначим подводные камни, дадим рекомендации.
Swift: ссылочные типы и циклы сохранения, weak и unowned
Разберем один из 10 технических вопросов недавнего собеседования по Swift и Objective C. На примере покажем, почему для предотвращения цикла сохранения применяется слабая ссылка weak, а не бесхозная unowned.
Мьютекс в Android: предотвращение состояния гонки
Использование мьютекса может значительно повысить производительность и надежность приложения, сделав многопоточный код более безопасным и предсказуемым. Рассмотрите на примерах Kotlin, как мьютекс применяется в Android для предотвращения состояния гонки.
Объединение множеств C++: практическое руководство с реальными примерами
Научимся эффективно применять в проектах алгоритм std::set_union, оптимизировать его. Разберем нюансы, проиллюстрируем примерами и реальным сценарием.
Как использовать горутины правильно
Разберем нюансы горутин, сценарии применения. Проиллюстрируем примерами и дадим рекомендации.
C++: полное руководство по разделению строк
Разберем, как выполняются разделение строк и синтаксический анализ. Проиллюстрируем примерами, дадим рекомендации.
Реализуем функцию управления взглядом с помощью SwiftUI, ARKit и SceneKit
Предлагаем изучить опыт создания на SwiftUI hands-free приложения с применением ARKit и SceneKit. Для лучшего понимания возвращаемых значений будет использован также фреймворк SwiftUI Charts.
Использование SwiftUI в UIKit
Наглядная демонстрация совмещения представлений SwiftUi с представлениями UIKit и реализации передачи данных между этими компонентами.
Интересные новые функции в .NET 10 и C# 14
Вышел .NET 10 — долгожданный релиз, который станет новой рабочей лошадкой для предприятий. Вместе с ним появляется C# 14 с синтаксическими улучшениями, которые делают код чище и выразительнее. В этой статье мы рассмотрим ключевые нововведения, которые действительно стоит внедрить в ваши проекты.
Как использовать бесплатный хостинг для временных серверов и прототипов
Как использовать бесплатный хостинг как временную инфраструктуру для разработчиков: тестирование функций, запуск MVP, демонстрации проектов и быстрое прототипирование веб-приложений.
Вкратце о прокси Spring Boot
Изучим нюансы прокси-системы Spring и сформулируем ее золотые правила. Сравним прокси JDK и CGLIB, поможем определиться с выбором. Рассмотрим дополнительные сценарии.
Добавляем в приложение SwiftUI холст Freeform, чат и видеозвонки
Создадим виртуальную доску SwiftUI для совместной работы над идеями. Поработаем с фреймворком PencilKit, разберем функционал, реализуемый при интегрировании в приложение на iOS.
Написание модульного теста на Go с gRPC
Настроим тестовый сервер, объявим ожидаемый результат и сравним с фактическим. Запустим модульный тест. Что, если тест не выполнен?
Пора отказаться от “@Input” и “@Output” в Angular
Ознакомьтесь с реализацией входов модели - новшества, введенного в Angular 17.3 для упрощения двунаправленной привязки данных. Отказ от традиционных декораторов @Input() и @Output() и принятие директивы @model позволит улучшить читаемость, сопровождаемость и общую реактивность Angular-приложений.
Функциональное программирование Java: элегантное применение Predicate и Function
Освоим интерфейсы для валидации, фильтрации и преобразования данных. Научимся использовать Predicate и Function со спецификациями JPA, коллекциями и потоками для реальных приложений.
Вопросы для собеседования по Android: как обрабатывать валидацию ввода в Jetpack Compose?
Ознакомьтесь с ключевыми концепциями и практиками, касающимися обработки валидации ввода в Jetpack Compose. Они помогут вам отточить навыки работы с Jetpack Compose и уверенно пройти важнейшую часть собеседования по Android.
Подходы к созданию линейных графиков для iOS-приложений на базе фреймворка SwiftUI
Специалисты в сфере мобильной разработки могут пользоваться несколькими способами для графического представления контента. Рассмотрим три метода создания диаграмм на iOS, в том числе и с помощью стороннего фреймворка.
3 лайфхака по работе с музыкальным ИИ в условиях нехватки данных
Нехватка данных - не повод сдерживать ваш энтузиазм! Практические советы эксперта в области музыкального ИИ помогут создать надежную модель даже с небольшим набором данных. Она позволит решать любые задачи - будь то определение тональности, обнаружение помех, распознавание инструментов или сравнение музыкальных фрагментов.
Навигация по ландшафту ИИ в 2024 году: тренды, прогнозы, возможности. Часть 2
2024-й обещает стать годом инноваций, когда ИИ и технологии объединятся, чтобы перекроить карты наших возможностей. Узнайте о катализаторах демократизации и персонализации ИИ, первых маркетплейсах для сервисов и агентов ИИ, новых моделях ценообразования и маркетинговых диджитал-стратегиях.
Автоматизация скриншот-тестирования предварительных просмотров Compose с использованием отражения
Это решение по автоматизации скриншот-тестирования предварительных просмотров Composable занимает всего пару часов, интегрируется в проект и имеет почти нулевые затраты на обслуживание. При этом оно позволяет быть уверенным в том, что любое изменение пользовательского интерфейса не приведет к неожиданным сбоям.
Наблюдаемость как суперспособность
Автор рассказывает о платформе отслеживания инцидентов incident.io, а ее устройстве изнутри и рекомендует, где и как разместить трассировки, чтобы облегчить жизнь разработчиков ПО.
Почему имена Android-пакетов имеют вид com.xyz.abc?
Узнайте, почему необходимо использовать реверсивный домен организации при именовании пакетов в Android-проекте. Усвоив этот простой способ именования, вы сохраните свой код чистым, организованным и готовым к последующим изменениям.
cin.ignore() на C++
Изучим приемы и сценарии применения этой функции, проиллюстрируем примерами. Разберем типичные ошибки, дадим рекомендации по производительности.
Построение комплексных конвейеров сборки вокруг Kubernetes
Интегрируем современные практики и инструменты DevOps. Настроив каждый экземпляр, сконфигурировав инструменты и подключив все системы, создадим комплексный рабочий процесс.
C++: подробное руководство по циклам for с векторами
Изучим методы прохождения векторов, включая продвинутые, проиллюстрируем примерами. Разберем нюансы производительности и обработки ошибок.
Контейнеризация проекта GO с Envoy
Контейнеризируем приложение и задействуем Envoy как прокси-службу взаимодействия. В итоге настроим, соберем, запустим и протестируем контейнер.
Руководство по доступу к датчикам Android-устройств
Это простое руководство ознакомит вас с различными типами датчиков, а также научит определять их доступность на Android-устройствах и возможности. Кроме того, вам будут предложены реальные сценарии использования датчика освещенности и магнитометра.
Как создать анимацию кругового вытеснения в Jetpack Compose
Хотите разработать анимацию плавного кругового вытеснения, часто используемую в видеомонтаже и презентациях для создания плавных переходов между кадрами и слайдами? Предлагаем освоить как ручной, так и автоматический случаи использования этого анимационного эффекта.
Matplotlib или Plotly: как выбрать библиотеку для визуализации данных в Python
Не знаете, что предпочесть: Plotly или Matplotlib? Неправильный выбор может стоить вам часов работы и свести на нет всю эффективность дэшборда. Секрет в том, что "лучшей" библиотеки не существует — есть та, что идеально подходит под ваши цели. Готовы узнать, какая из них сделает ваш проект по-настоящему мощным?
Использование Kotlin Flow для отображения наблюдаемого состояния UI на экране в Android
Узнайте, что такое реактивное программирование и как оно реализуется в Android с помощью Kotlin Flow. Понимание разницы в использовании различных типов Flow позволит создавать отзывчивые, неблокирующие и реактивные пользовательские интерфейсы.
Генерация аналитических данных из PDF-файлов с помощью Apryse и GPT
Одного лишь извлечения необработанного текста недостаточно для автоматизации получения финансовой информации. Чтобы использовать LLM в полную силу, необходимо с самого начала сохранять табличные данные в корректном формате. Сегодня познакомимся с мощным инструментом Apryse, который в этом поможет.
Признания начинающего главного инженера-программиста. Часть 1
Говорят, чужой опыт дороже денег. Приобщаясь к нему, мы приобретаем не только мудрость, но и веру в себя. Ознакомьтесь с опытом начинающего главного инженера. Его признания станут для вас той опорой, которая поможет обойти подводные камни и выбраться из плена собственных иллюзий.
C++: подробное руководство по вложенным операторам If-Else
Разберем реальные сценарии и типичные ошибки использования if-else. Как уменьшить вложенность и какие имеются альтернативы?
12 проектов с открытым исходным кодом, которые сделают вас лучшим разработчиком
Туториалы закончились, но код все еще тормозит, а деплои пугают. Чаще всего проблема не в вас — дело в инструментах. Собрали 12 проверенных open-source-проектов, которые улучшат ваш рабочий процесс, от тестирования до мониторинга и использования ИИ-агентов.
Опыт работы с Python в течение 2 лет: уроки и рекомендации
Python может стать вашим проводником не только в мир программирования. С ним вы откроете аналитику данных, машинное обучение, веб-скрейпинг, скриптинг и многое другое, если учтете уроки и будете следовать рекомендациям питониста с 2-летним стажем.
iOS/Swift: подробное руководство по модульным и UI-тестам. Часть 2
Рассмотрим особенности тестирования моделей декодирования и HTTP-запросов, настроим идентификаторы доступности. Протестируем ввод в поисковую строку, прокрутку в tableView, навигацию, статичные и динамические метки.
Продвинутое применение «select» в Ruby
На примерах изучим, как select комбинируется и объединяется с другими методами. Рассмотрим особенности ключевого слова next со сложными условиями.
Перестановка чисел в C++: руководство
Изучим нюансы каждого метода, оценим производительность и поможем выбрать оптимальный. Проиллюстрируем примерами реального применения.
Java Spring Boot против Golang
Сравним ведущие фреймворки бэкенд-разработки. Рассмотрим, реальные примеры и сценарии, поможем сделать правильный выбор.
Создание простой платформы потоковой передачи данных
Наладим получение данных пользовательским инструментом Python, высокопроизводительное хранилище данных в Clickhouse, наблюдаемость с Grafana и аналитику в Superset. Научимся сохранять и запрашивать потоковые данные, материализованными представлениями убирать часть вычислений со времени запрашивания на время загрузки.
Как проходится ассоциативный массив на C++
Изучим способы итеративного прохождения - от простого цикла for с диапазоном и до гибких итераторов. Разберем нюансы и типичные ошибки, проиллюстрируем примерами.
MVI на Eventbrite
Архитектура MVI обеспечивает приложениям Eventbrite четкое разделение задач, предсказуемый поток данных и централизованное управление состоянием. Изучите подробно эту архитектуру, оцените ее преимущества перед MVVM и узнайте, как имплементировать ее в приложение.
Визуализация крупномасштабных импульсных нейронных сетей
Импульсные нейронные сети — это не просто еще одна архитектура ИИ, а шаг к созданию машин, работающих так же эффективно, как и биологический мозг. Но как заглянуть внутрь этих сложных систем? Ответ — визуализация, которая превращает поток импульсов в наглядную динамическую карту работы "цифрового мозга".
Принцип DRY в Kotlin: повышение качества и удобства сопровождения кода
Принцип DRY позволит оптимизировать процесс Kotlin-разработки: снизит количество ошибок, упростит обновление и сопровождение кода, повысит его читаемость. Ознакомьтесь с примерами применения этого подхода и рекомендациями по его корректному использованию.
Оптимизация начальной загрузки сервера с RocksDB
Усовершенствуем процесс развертывания, перейдя от Redis к локальному хранению данных. Интегрируем RocksDB в код, сделаем схему хранения данных. Попутно решим проблему устаревших данных, преодолеем трудности работы с обновлениями Kafka, разберемся с утечкой памяти.
Как создать загрузчик с вращающимися кругами в Jetpack Compose
Хотите порадовать пользователей анимацией с вращающимися разноцветными кругами? Выполнить ее в Jetpack Compose позволит функция SpinningCirclesLoader. Предлагаем руководство с несколькими вариантами ее использования.
C++: подробный разбор count_if
Изучим универсальный алгоритм подсчета элементов в диапазоне. Проиллюстрируем примерами и упрощенной реализацией, дадим рекомендации.
Линейная регрессия — реализация на Python
В подробностях рассмотрим основы линейной регрессии и ее реализация на языке Python. Линейная регрессия — это статистический метод моделирования взаимосвязей между зависимой переменной и заданным набором независимых переменных. Формулы, графики, варианты применения и, конечно, код вы найдете по ссылке ниже.
Как обогатить контекст большой языковой модели (LLM) для улучшения ее возможностей
Большие языковые модели способны на большее, но мы сами часто их ограничиваем. Ключ к раскрытию истинного потенциала LLM лежит не в создании более сложных архитектур, а в простом и часто упускаемом из виду действии — предоставлении большего количества релевантных данных.
5 частых ошибок начинающих программистов
Ошибки новичков часто вгоняют в ступор профессионалов. Это руководство позволит вам избежать их, чтобы сделать успешную карьеру и не разочаровать будущих коллег. Помните: каждую ошибку можно исправить, если вовремя осознать ее и приложить необходимые усилия.
C++: практическое руководство по rotate
Изучим принцип работы инструмента для перемещения элементов последовательности. Проиллюстрируем практическими сценариями вроде реализации кольцевых буферов и простых планировщиков, а также продвинутыми методами, дадим рекомендации.
Глубокое погружение в режим Copy-on-Write в pandas. Часть 3
Внедрение процесса Copy-on-Write (CoW) является серьезным изменением, которое способно оказать определенное влияние на код pandas. В этой части мы изучим способы адаптации кода, чтобы избежать ошибок при включенном по умолчанию CoW.
Динамическое извлечение видеокадров в Android
Предлагаем пошаговое руководство по извлечению кадров из воспроизводимого видео в Android-приложениях с использованием ExoPlayer и MediaMetadataRetriever. Описанные здесь методы предлагают эффективные решения - будь то редактирование видео, анализ кадров или улучшение пользовательского опыта.
Как создать форму текстового фона в Jetpack Compose
Красивое оформление повышает привлекательность текста для пользователей. Сегодня расскажем, как с помощью Jetpack Compose "одеть" текст в фоновую форму.
Как создать 3D-границу в Jetpack Compose
Воспользуйтесь руководством по созданию модификатора 3D-границ и панели поиска с использованием этого модификатора. Вы научитесь рисовать тени и блики для получения эффекта выпуклости, а также узнаете, как написать TextField с индивидуальным стилем.
Реализация ролевого контроля доступа в Elasticsearch
Как защитить данные и предотвратить несанкционированный доступ? Пройдем этапы настройки, дадим рекомендации по эффективному ролевому контролю.
Создание базы данных на Rust
Опишем роли каждого уровня БД, изучим фундаментальные концепции: фреймы, страницы. А также планировщик дисков и внутренние механизмы диспетчера буферного пула, включая политику LRU-K вытеснения данных из кэша.
Рекомендации по работе с большими наборами данных на Java
Изучим нюансы эффективной обработки данных для оптимизации приложений. Рассмотрим надежные решения Java Spring, проиллюстрируем примерами с пояснениями.
Apache Spark — типичные ошибки и их устранение
Рассмотрим, как устраняются эти ошибки, выполняются оптимизации для совершенствования производительности и использования памяти приложений Spark. Проиллюстрируем примерами, дадим рекомендации.
Космическое приключение компилятора Golang
Исследуем кухню компиляции и разберемся, как исходный код Go превращается в исполняемый двоичный. Подробно опишем этапы и техники получения рецепта АСД и приготовим из ассемблерного кода вкусный машинный код.
5 проверенных методов для создания сверхбыстрых трейдинговых систем с низкой задержкой на Java
Создание эффективных трейдинговых систем на Java требует не только знания алгоритмов, но и ювелирной работы с памятью и процессором. Возьмите на вооружение пять рекомендаций, которые ускоряют обработку ордеров в разы — от выбора структур данных до битовых операций.
Как стать Android-разработчиком за 2 месяца
Хотите всего за пару месяцев научиться разрабатывать приложения с нуля? Воспользуйтесь простым руководством для начинающих по созданию первого в жизни Android-приложения.
Настройка приложения Go с проблемами сборки мусора
Как, выделяя больше памяти, сократить общее время сборки мусора и использования процессора? Расскажем, что получилось в настройке производительности.
Создание Copilot для визуального распознавания в Azure
Хотите создать чат-бота для обобщения и релевантного поиска видеоконтента в Azure? Ознакомьтесь с примером разработки и использования цифрового помощника Copilot. Он поможет быстро находить как ключевые моменты видеоролика, так и заданные фрагменты.
C++: практическое руководство по побитовым операциям
Изучим, что происходит на битовом уровне. Разберем основные побитовые операторы и реальные сценарии, дадим рекомендации и практические задачи с решением.
Дорожная карта iOS для разработчиков Android: основы
Хотите стать универсальным разработчиком, знающим особенности программирования как для Android, так и для iOS? Этот гайд расскажет о различиях и сходствах работы с этими двумя платформами.
Как создать анимацию мерцающего текста в Jetpack Compose
Воспользуйтесь руководством по созданию и применению анимации мерцающего текста в Jetpack Compose. Такая анимация позволит повысить плавность работы приложений, улучшить взаимодействие пользователей с интерфейсом, сделать более комфортным время ожидания.
Как создать атомарный загрузчик в Jetpack Compose
Jetpack Compose предлагает эффективные инструменты для разработки визуально привлекательной плавной загрузки. Предлагаем руководство по созданию 3D-анимации атомарного загрузчика, которая впечатлит самых претенциозных пользователей современных приложений.
C++: практическое руководство по пересечению множеств
Изучим нюансы set_intersection, проиллюстрируем примерами. Дадим рекомендации по производительности.
Пример сквозного ELT-процесса для хранилища данных с Postgres
Поэтапно сделаем витрину данных со всеми аспектами, разложим все по полочкам. Рассмотрим разные сценарии ее построения.
Признания начинающего главного инженера-программиста. Часть 2
В этой части признаний начинающего главного инженера речь пойдет о внедрении в процесс разработки BDD-методологии. Вы узнаете о ее преимуществах, увидите продвинутые сценарии BDD-тестирования, составленные с использованием синтаксиса Gherkin, и сможете оценить результаты BDD-подхода.
Эффективная стратегия тестирования Android-проектов. Часть 1
В этой части описан и обоснован сбалансированный подход к комплексному тестированию Android-приложений, включающий автоматизированные (модульные, интеграционные, сквозные, интерфейсные) и ручные тесты. Такая эффективная стратегия позволяет минимизировать время и усилия, получив максимальную отдачу.
Компонентный подход: организация навигации с помощью библиотеки Decompose. Часть 3
Компонентный подход позволяет масштабироваться до больших проектов с десятками или даже сотнями экранов. Узнайте, как с помощью Decompose и Jetpack Compose настроить сложную навигацию в таком приложении, а также как добавить уровни навигации.
C++: полное руководство по std::stoi
Изучим, как эффективно применяется эта функция и справляется с пограничными случаями в реальных приложениях. Обозначим типичные проблемы и их решения.
14 вопросов по валидациям на Ruby on Rails
Шпаргалка для собеседования по важной теме Ruby. Некоторые ответы снабжены примерами кода.
Как создать анимированный переключатель тем в Jetpack Compose
Сколько пользователей, столько и предпочтений. Темы - не исключение. Кому-то больше нравится темное оформление, кому-то - светлое. Сегодня посмотрим, как разработать оригинальный переключатель тем с помощью Jetpack Compose.
Оптимальные инструменты Firebase для мобильного приложения
Как упрощается процесс разработки с готовыми решениями аутентификации, уведомлений, баз данных реального времени? Изучим реализацию важного функционала: FCM, Remote Config, расширений, распространения приложений, устранения сбоев, мониторинга производительности.
Почему борьба GitHub с тостовыми уведомлениями — плохая новость для специалистов по доступности
Решение GitHub полностью отказаться от тостовых уведомлений в своих продуктах, мотивированное заботой о доступности, вызвало бурную дискуссию в сообществе. Но является ли запрет действительно решением проблемы?
Запись логов в Golang
Чем отличаются диагностические сообщения модуля log от функций fmt: Print, Panic, Fatal? Разберем настройку формата логов.
Девять вопросов на собеседованиях для разработчиков Android
Подробно разберем intent, жизненный цикл activity, сравним Serializable и Parcelable. А еще классы данных, расширения, корутины и потоки, рекомпозицию, поднятие состояния, побочные эффекты.
Как поразить интервьюеров умением инспектировать App Bundle
Хотите произвести неизгладимое впечатление при собеседовании на новую должность? Воспользуйтесь приведенными ниже советами по получению и инспектированию App Bundle.
Повышение безопасности Angular-приложения путем интеграции OCR и биометрии
Хотите защитить пользователей своих приложений от мошеннических действий? Сделайте это с помощью автоматического извлечения данных путем OCR и биометрических технологий. Предлагаем подробное руководство по интеграции OCR с биометрическими решениями.
C++: полное руководство по параметризованным классам
Изучим особенности создания и реального применения этих классов. Проиллюстрируем практическими реализациями и примерами.
Apple убивает Swift
В отличие от современных языков Python, Rust и Kotlin, великий Swift оказался задушен управлением корпораций. Поразмышляем о том, как диктаторское управление убивает наследие Латтнера и можно ли считать безнадежной текущую ситуацию с языком Swift.
Как сделать собственный Git с нуля на Go
Реализуем основную функциональность: hash-object, cat-file, init. Разберемся, как здесь управляются объекты и имитируется поведение команд в коде, а затем протестируем.
Компонентный подход: реализация экранов с помощью библиотеки Decompose. Часть 2
В этой части рассмотрим с позиций компонентного подхода реализацию сложных экранов с использованием библиотеки Decompose. Используя описанные методы, вы сможете управлять экранами любой сложности.
TrendNow: создание новостного Android-приложения с помощью Jetpack Compose. Часть 1
Это 1-я часть серии статей, посвященных современной Android-разработке на примере создания новостного агрегатора "TrendNow" с помощью Jetpack Compose. В 1-й части предлагается подробное руководство по созданию базовой функциональности новостного приложения.
Автоматическое масштабирование CI с помощью Kraken CI
Kraken CI — это современная локальная система CI/CD с открытым исходным кодом, которая обладает высокой масштабируемостью и ориентирована на тестирование. Kraken CI имеет лицензию Apache 2.0....
4 шага к совершенству: правила для идеальных функций
Функции — это блоки кода, выполняющие требуемые действия. Они являются фундаментальными составляющими любого проекта разработки. Без них мы не сможем ни обработать данные, ни представить их...
UX или UI - на что уделить внимание?
Дизайнеры со всего мира часто и сами затрудняются ответить, что важнее — UI- или UX-дизайн. Мало кто воспринимает эти интерфейсы по отдельности и мало...
Комментарии: за или против?
Скажите, вы за или против комментариев в коде? Однозначного и простого ответа на этот вопрос нет и не будет, собственно как и на другой...
Что такое бессерверная платформа?
Понятие о бессерверной платформе
Бессерверная платформа помогает разрабатывать и развёртывать функции AWS Lambda вместе с необходимыми им инфраструктурными ресурсами AWS. Фактически это интерфейс командной строки,...








































































































