Как стать автором
Обновить
890.82
OTUS
Цифровые навыки от ведущих экспертов
Сначала показывать

Тестирование gRPC. Часть 2

Время на прочтение4 мин
Количество просмотров3.6K

В предыдущей статье мы с вами рассмотрели тестирование фреймворка gRPC. Но демо проект созданный моим коллегой Михаилом Петровым, был улучшен моим в другим коллегой

Читать далее
Всего голосов 8: ↑7 и ↓1+6
Комментарии0

Создание бессерверного веб-приложения AWS

Время на прочтение5 мин
Количество просмотров2.7K

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

Читать далее
Всего голосов 13: ↑9 и ↓4+5
Комментарии1

Понимание архитектуры Astro островов

Время на прочтение7 мин
Количество просмотров4.1K

В настоящее время мы все привыкли видеть появление новых фреймворков, которые обещают произвести революцию в сфере веб-разработки. Тем не менее, чаще всего мы остаемся привязанными к конкретной библиотеке пользовательского интерфейса (React, Vue, Svelte и т.д.) для определения наших компонентов и создания пользовательского опыта.

На этот раз ситуация поменялась! Используя возможности Vite.js, мы получили Astro: агностический фреймворк, который может работать как SSG (генератор статических сайтов) и обеспечивать SSR (рендеринг на стороне сервера).

Читать далее
Всего голосов 6: ↑5 и ↓1+4
Комментарии0

Rust: ни в коем случае не используйте unwrap() в продакшене

Время на прочтение4 мин
Количество просмотров3.8K

В этой статье речь пойдет о том, почему использовать метод unwrap() для типов Result в продакшн коде Rust крайне нежелательно.

Читать далее
Всего голосов 20: ↑11 и ↓9+2
Комментарии18

С чем едят микросервисы

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров4.4K

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

Но для начала поговорим о том, как было плохо раньше.

Читать далее
Всего голосов 22: ↑11 и ↓110
Комментарии6

Kotlin-сервер без JVM — реальность?

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров4.7K

Не секрет, что Kotlin может использоваться для создания всех компонентов FullStack-приложения - от мобильных приложения для Android/iOS и веб-сайтов на Kotlin JS до бэкэнда (например, с использованием Ktor, http4k и micronaut). Но все же многих останавливает от использования Kotlin для создания API тот факт, что код запускается в хоть и оптимизированной, но все же Java виртуальной машине. Есть ли решение у этой проблемы? Да, и в этой статье мы обсудим способы компиляции приложения на Kotlin для создания API в нативный код и подводные камни, которые нас ожидают на этом пути.

Читать далее
Всего голосов 15: ↑14 и ↓1+13
Комментарии4

Инструменты для тестирования Kafka

Время на прочтение4 мин
Количество просмотров16K

Во многих компаниях использование брокеров сообщений является неотъемлемой частью процесса разработки высокопроизводительных систем. И одним из самых популярных на сегодняшний день является Kafka. Kafka — это не только брокер сообщений, но и разделитель журналов. Кроме того, с помощью Kafka мы можем моделировать различные сценарии тестирования. Но чтобы применить это на практике, нам нужен UI инструмент для работы с Kafka. Итак, в сегодняшней теме мы рассмотрим самые популярные UI инструменты и коснемся их функционала и возможностей для тестеров.

Читать далее
Всего голосов 12: ↑9 и ↓3+6
Комментарии7

Python package registry в GitLab

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров6.7K

О чем статья: при разработке проектов, и, особенно, распределенных приложений, возникает необходимость использования некоторых частей приложения в качестве отдельных модулей. Например скомпилированные классы для gRPC, модули для работы с БД, и многое другое, могут применяться в неизменном виде в кодовой базе десятка микросервисов. Оставив за скобками копипасту, как "хорошую" плохую практику. Можно рассмотреть git submodules, однако, такое решение не очень удобно тем, что, во-первых, нужно предоставлять разработчикам доступ к конкретным репозиториям с кодовой базой, во-вторых, нужно понимать, какой коммит надо забрать себе, и в-третьих установка зависимостей для кода, включенного в проект как субмодуль, остается на совести разработчика. Менеджеры пакетов (pip, или, лучше, poetry), умеют разрешать зависимости из коробки, без лишних действий, и, в целом, использование менеджера пакетов значительно проще, чем работа с субмодулем. В статье рассмотрим, как организовать реестр пакетов в GitLab, а также различные подводные камни, поджидающие на пути к удобной работе с ним.

Для кого: статья будет полезна разработчикам, столкнувшимся с необходимостью организации приватного реестра пакетов, в качестве руководства по организации такого реестра в GitLab.

Читать далее
Всего голосов 7: ↑7 и ↓0+7
Комментарии4

Интеграция Primefaces в приложение на Spring Boot. Часть 8 — Композитная форма для редактирования сложных данных

Время на прочтение14 мин
Количество просмотров847

Описывается пример интеграции библиотеки компонентов пользовательского интерфейса Primefaces, построенной на основе фреймворка JavaServer Faces (JSF), в MVC приложение на Spring Boot.

Первая часть | Вторая часть | Третья часть

Четвертая часть | Пятая часть | Шестая часть | Седьмая часть

Читать далее
Всего голосов 8: ↑7 и ↓1+6
Комментарии0

Принципы работы OLTP-систем. Требования ACID

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров4.7K

Транзакция - достаточно обширное понятие, которое используется в разных сферах жизни. Существует банковская транзакция - это операция, которая состоит в переводе денежных средств с одного счёта на другой. Или бывает банкоматная транзакция – выдача денег либо проведение иной операции с помощью терминала. В юриспруденции понятию «транзакция» придается значение схожее со значением понятия «сделка», а в психологии - это факт коммуникации между людьми (трансакция).

Наконец, для информационных технологий «транзакция» - это последовательность (одна или несколько) операций по работе с данными. Чтобы организовать правильный обмен данными к транзакциям и транзакционным системам применяются некоторые требования, которые легли в основу архитектуры современных баз данных.

Читать далее
Всего голосов 14: ↑9 и ↓5+4
Комментарии4

Преимущества пользовательских историй перед требованиями и юзкейсами

Время на прочтение6 мин
Количество просмотров1.4K

Экстремальное программирование (XP) ввело практику выражения требований в форме пользовательских историй. Пользовательская история – это краткое описание функциональности, рассказанное с точки зрения пользователя, представляющее ценность для него самого, либо для заказчика программного обеспечения, и обычно имеет форму шаблона, состоящего из трех частей.

С другой стороны, сценарий использования (юзкейс) – это обобщенное описание набора взаимодействий между системой и одним или несколькими участниками, где участник – это либо пользователь, либо другая система. Варианты использования могут быть написаны в виде неструктурированного текста или соответствовать структурированному шаблону.

Читать далее
Всего голосов 6: ↑5 и ↓1+4
Комментарии0

CSLA .NET: земля обетованная для вашей бизнес-логики

Время на прочтение13 мин
Количество просмотров2.8K

Инструменты, которыми мы располагаем как .NET-разработчики, поистине впечатляют. Вы можете позволить себе выбирать наиболее подходящий из многочисленных фреймворков пользовательского интерфейса, таких как UWP, WPF, Windows Forms, и различных фреймворков пользовательского интерфейса для веб-клиентов, среди которых можно выделить Angular и React. И у нас даже есть несколько вариантов взаимодействия с базами данных, таких как Entity Framework, Dapper и т.д.

Читать далее
Всего голосов 8: ↑6 и ↓2+4
Комментарии0

Лучшие библиотеки Java для тестирования в 2023 году

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров6.9K

Большинство из нас стремятся быть более эффективными, действенными и содержательными в тестировании. И мы делаем все необходимое для этого. Лучший способ сделать это — проводить автоматизированное тестирование вместо ручного. И, конечно же, мы хотели бы знать все современные тенденции в мире автоматизации. Только так мы можем быть на вершине нашей профессии.

Читать далее
Всего голосов 16: ↑8 и ↓80
Комментарии17

Справочники и документы. В чем сила 1С

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров7.9K

Много узкоспециализированных объектов или небольшое количество универсальных? Истина, как обычно, посередине. Справочники и документы в 1С - это пример удачного попадания в эту середину. Разумеется, речь не о том, что видит пользователь, а о том, чем оперирует разработчик. Идея " а давайте у нас будут не таблицы базы данных, а справочники и документы", при всей своей внешней неброскости, не столь проста. О чем и поговорим далее

Читать далее
Всего голосов 13: ↑12 и ↓1+11
Комментарии4

Визуализация данных с помощью Python Dash

Время на прочтение8 мин
Количество просмотров21K

В этом руководстве вы получите представление о том, на что способен Dash, и как интегрировать его в свой рабочий процесс.

Читать далее
Всего голосов 6: ↑5 и ↓1+4
Комментарии2

Объект многоточие в Python

Время на прочтение4 мин
Количество просмотров17K

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

Читать далее
Всего голосов 23: ↑23 и ↓0+23
Комментарии4

Компьютерное зрение: ранняя остановка для экономии времени и вычислительной мощности

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров2.3K

Привет Хабр! В очередном продолжении темы компьютерного зрения. Сегодня мы сосредоточимся на обратных вызовах, EarlyStopping и LearningRateScheduler.

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

Читать далее
Всего голосов 9: ↑9 и ↓0+9
Комментарии1

Резервное копирование и восстановление СУБД MySQL

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров16K

О необходимости выполнения резервного копирования для любых важных данных, будь то файлы, образ ОС или базы данных, написано множество статей. Поэтому убеждать читателя в необходимости бэкапить СУБД MySQL я не буду. Напомню лишь, что помимо бэкапа необходимо регулярно проверять резервные копии на возможность восстановления.

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

Читать далее
Всего голосов 10: ↑10 и ↓0+10
Комментарии3

Архитектурные шаблоны взаимодействия с базами данных

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров11K

В первой статье мы рассмотрели шаблоны проектирования, применимые в программировании приложений. Однако сейчас сложно представить серьезное бизнес-приложение без базы данных. Большие объемы данных требуют хранения и обработки. И то насколько оптимально построена связь между уровнем прикладного кода и уровнем БД во многом зависит быстродействие системы в целом. Поэтому важно правильно построить взаимодействие с СУБД. В этой статье мы рассмотрим шаблоны взаимодействия с базами данных. Правильно выбранный шаблон взаимодействия позволит избежать многих проблем при разработке и получить качественное приложение.

Читать далее
Всего голосов 15: ↑9 и ↓6+3
Комментарии5

Информация

Сайт
otus.ru
Дата регистрации
Дата основания
Численность
101–200 человек
Местоположение
Россия
Представитель
OTUS