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

Лого

На Хабре тысячи статей про то, как сделать Телеграм бота под разные языки программирования и платформы. Тема далеко не новая.

Но Telegraff – лучший фреймворк для реализации Телеграм ботов и я это под катом докажу.

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

«Для сообщества критически важно установить стандарты»: Марсин Москала о Kotlin - 1

Пару лет назад было много блог-постов «смотрите, какой интересный язык Kotlin», где объяснялись основы. В 2019-м разжёвывать азы уже не требуется, зато теперь появляется публикация совсем другого формата. Марсин Москала, который уже не первый год учит людей этому языку, сейчас выпускает книгу «Effective Kotlin» — то есть уже не просто «как писать на Kotlin», а «как писать на Kotlin наилучшим образом».

А скоро Марсин приедет к нам на Mobius с докладом. Поэтому мы поспрашивали его и про новую книгу, и про доклад, и про обучение людей Kotlin, и о происходящем в индустрии вокруг этого языка. И про то, чем различаются слова «effective» и «efficient».
Читать полностью »

Обработка ошибок в Kotlin-Java: как правильно это делать? - 1

Источник

Обработка ошибок в любой разработке играет важнейшую роль. В программе может пойти не так практически всё: пользователь введёт некорректные данные, или они могут прийти такими по http, или мы ошиблись при написании сериализации/десериализации и в процессе обработки программа падает с ошибкой. Да может банально закончится место на диске.

спойлер

¯_(ツ)_/¯, нет единого способа, и в каждой конкретной ситуации придётся подбирать наиболее подходящий вариант, но есть рекомендации, как это делать лучше.

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

Розеттский код: измеряем длину кода в огромном количестве языков программирования, изучаем близость языков между собой - 1
Скачать файл с кодом и данные можно в оригинале поста в моем блоге

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

Этот ресурс предоставляет уникальную возможность сравнить коды программ на разных языках, этим мы и займемся в этой статье. Она является полной переработкой и доработкой статьи Джона Маклуна "Code Length Measured in 14 Languages".
Читать полностью »

Привет! Меня зовут Соснин Илья. Я работаю в Lamoda Android разработчиком. Крашу кнопочки, прогаю списочки и, к сожалению, пишу аналитику…

Lamoda — это Data Driven Company, в которой все решения принимаются на основе поведения пользователей. Сначала мы наблюдаем и только потом делаем выводы. Поэтому несложно догадаться, что аналитика у нас есть, и она нам очень нужна.

В расшифровке моего доклада митапа Mosdroid #18 Argon я расскажу, как устроен наш SDK и почему рефлексия — это не всегда плохо. А также отвечу на главный вопрос этой темы: «Как внедрить аналитику и не сломать приложение?».
image
Для начала задам один простой вопрос: “Как вы думаете, сколько у нас установок в Google play?”.
Читать полностью »

Все вокруг говорят про голосовых помощников, Алису, Google Assistant, что они умеют, чего не умеют… А мы взяли и написали фреймворк для создания мобильных голосовых ассистентов. Да еще и с открытым исходным кодом! Пока мы это сделали только для Android, и теперь ищем крутого iOS-разработчика, кто с легкостью портирует Kotlin код на Swift.
Под катом рассказываем, зачем мы вообще это делаем, что у нас получилось и кого именно мы ищем в команду Aimybox.
Aimybox в поиске: фреймворку для создания голосовых ассистентов нужен мастер iOS - 1

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

Проблемы пакетной обработки запросов и их решения (часть 2) - 1
Это продолжение статьи «Проблемы пакетной обработки запросов и их решения». Рекомендуется сначала ознакомиться с первой частью, так как в ней подробно описана суть задачи и некоторые подходы к ее решению. Здесь же мы рассмотрим другие методы.
Читать полностью »

Logo

Привет! Меня зовут Юрий Влад, я Android-разработчик в компании Badoo и принимаю участие в создании библиотеки Reaktive — Reactive Extensions на чистом Kotlin.

В процессе работы мы столкнулись с тем, что в случае с Kotlin Multiplatform continuous integration и continuous delivery требуют дополнительной настройки. Необходимо иметь в распоряжении несколько виртуальных машин на различных операционных системах, чтобы собрать библиотеку полностью. В этой статье я покажу, как настроить continuous delivery для вашей Kotlin Multiplatform библиотеки.

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

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

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

Например, в языке Scala для этого используется определенный класс Try.

def inputStreamForURL(url: String): Try[Try[Try[InputStream]]] = parseURL(url).map { u =>
     Try(u.openConnection()).map(conn => Try(conn.getInputStream))
}

В Java мире с помощью библиотеки Vavr также можно обрабатывать ошибки в функциональном стиле.
Читать полностью »

КДПВ

В 2016-м году я опубликовал перевод статьи про 5 перспективных языков программирования, в которой прогнозировался их рост в ближайшие 2-3 года.
Зачастую прогнозы так и остаются прогнозами, без последующего анализа. Но я решил, что это непорядок. И посколько 3 года уже пролетели, пора подвести промежуточные итоги и посмотреть, что произошло с этими языками за это время.

Однако, прежде чем мы перейдём к пятёрке наших героев, хочется уделить немного внимания предсказанному в той же статье переходу Swift и Go из второго эшелона в первый.

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


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