Рубрика «kotlin» - 20

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

Что именно будем генерировать — не так важно.
Важно что мы опишем 3 вида объектов на основе которых сгенерируем взаимодействие фронтенда с бекендом, а кое где и полностью реализацию бекенда

Эти типы объектов:
1. Messages — объекты, которые будучи сериализoванными в JSON участвуют в обмене информации между фронтендом и бекендом
2. Endpoints — URI, который вызывает фронтенд вместе с описанием HTTP метода, параметров запроса, типа Request Body и типа респонса
3. Entities — Это такие messages, для которых них есть стандартные endpoints для Create/Update/List/Delete (может быть не все), они хранятся в базе данных и для них есть Data Access Object, или Spring JPA repository — вообщем зависит от технологии, но какой то доступ к базе данных

Фронтендом я не занимаюсь вообще, но
1) Знаю, что он пишется на Typescript, поэтому мы генерируем и классы тайпскрипта
2) Большая часть требований к бекенду приходит от разработчиков фронтенда.

Требования к коду

Читать полностью »

image

  • Jetpack Compose это отдельный набор инструментов разработанный для упрощения разработки UI. Он соединяет модель реактивного программирования с лакончностью и лёгкостью использования языка программирования Kotlin
  • ПРИМЕЧАНИЕ: Jetpack Compose в настоящее время находится в стадии ранних исследований, пре-альфа. Его API ещё не завершено и поэтому не следует использовать его в продакшене

Читать полностью »

Приглашаем вас на второй в России открытый митап Camunda BPM, который пройдет 30 мая 2019 года на площадке Райффайзенбанка в Нагатино.

Как прошел первый митап сообщества Camunda BPM можно посмотреть в этом посте.

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

Сильное сообщество – крутая площадка для развития, поэтому мы не только приглашаем вас на митап, но и активно зовем всех присоединяться к чату Camunda BPM User Group. С поддержкой комьюнити жить проще и веселее, ведь тогда появляется возможность что-то быстро спросить у коллег или просто скинуть интересную статью или мем.

Хотите в чат? Тогда вам сюда

Приглашаем на второй Camunda BPM Meetup Raiffeisenbank - 1
Читать полностью »

Попробуем, пользуясь официальным руководством и примерами кода, построить работающую систему навигации для будущего многоэкранного приложения в соответствии со стандартами Navigation Architecture Component. Статья включает следующие разделы:

Часть 1. Подготовительные работы
— 1.1. Создание проекта
— 1.2. Зависимости (Dependencies)
— 1.3. Страницы: создание фрагментов
— 1.4. Адреса: файл ресурсов типа «Navigation»
— 1.5. Фрейм: виджет NavHostFragment

Часть 2. Элементы навигации
— 2.1. Навигация с помощью кнопок
— 2.2. Боковое меню (Drawer)
— 2.3. Панель инструментов: Toolbar вместо ActionBar
— 2.4. Нижнее меню (Bottom Navigation)
— 2.5. Всплывающее меню (Overflow Menu)

Краткие выводы и ссылка на github

Читать полностью »

Очередной выпуск расскажет вам про новые иконки Google Play, главные вопросы Swift, о бесплатной музыке для проектов, покупке Realm и восторге от Интернета вещей.

Дайджест интересных материалов для мобильного разработчика #296 (22 — 26 апреля) - 1Читать полностью »

Рассказ о том, как в Android'е передать информацию из фрагмента (Fragment) в активность (Activity). Информация будет полезной для новичков (джуниоров), осваивающих программирование для Android, и вряд ли будет интересной для миддлов и сеньоров.

Запускаем IDE (integrated development environment) Android Studio. Создаём новый проект: File -> New -> New Project. Выбираем «Empty Activity», жмём «Next».
Читать полностью »

Создание калькулятора чаевых на Kotlin: как это работает? - 1

Рассказываем, как создать простое приложение для расчета чаевых на языке Kotlin. Если точнее, то Kotlin 1.3.21, Android 4, Android Studio 3. Статья будет интересной, в первую очередь, для тех, кто начинает свой путь в разработке Android-приложений. Она позволяет понять, что и как работает внутри приложения.

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

Дополнение к обзору с подведением итогов конференции JPoint 2019 для Java-разработчиков, проходившей 5-6 апреля 2019 года в Москве. Ещё больше обзоров докладов, больше фотографий, больше эмоций и впечатлений.

JPoint 2019: от рассвета до заката - 1
Читать полностью »

Reaktive — мультиплатформенная библиотека для реактивного Kotlin - 1

Многие сегодня любят реактивное программирование. В нём масса плюсов: и отсутствие так называемого "callback hell", и встроенный механизм обработки ошибок, и функциональный стиль программирования, который уменьшает вероятность багов. Значительно проще писать многопоточный код и легче управлять потоками данных (объединять, разделять и преобразовывать).

Для многих языков программирования существует своя реактивная библиотека: RxJava для JVM, RxJS — для JavaScript, RxSwift — для iOS, Rx.NET и т. д.

Но что мы имеем для Kotlin? Было бы логично предположить, что RxKotlin. И, действительно, такая библиотека существует, но это всего лишь набор расширений (extensions) для RxJava2, так называемый «сахар».

А в идеале хотелось бы иметь решение, соответствующее следующим критериям:

  • мультиплатформенность — чтобы иметь возможность писать мультиплатформенные библиотеки с использованием реактивного программирования и распространять их внутри компании;
  • Null safety — система типов Kotlin защищает нас от «ошибки на миллиард долларов», так что значения null должны быть допустимы (например, Observable<String?>);
  • ковариантность и контравариантность — ещё одна очень полезная особенность Kotlin, дающая возможность, например, безопасно привести тип Observable<String> к Observable<CharSequence>.

Мы в Badoo решили не ждать у моря погоды и сделали такую библиотеку. Как вы уже могли догадаться, назвали мы её Reaktive и выложили на GitHub.

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

Это – обзор нового в IntelliJ IDEA 2019.1. Ссылки в заголовках ведут на соотвествующие разделы на сайте, где всё описано детально, но на английском.

image
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js