Pull to refresh

Приглашаем на MOSDROID May Meetup 20 мая

Reading time2 min
Views1.7K


Достаточно давно появилась идея создать независимое сообщество Android разработчиков Москвы, мы планируем проводить мероприятия на площадках различных компаний и создавать сообщество от разработчиков и для разработчиков. Самое главное – мы планируем проводить подобные мероприятия регулярно. Поэтому мы сделали MOSDROID и спешим пригласить вас присоединиться к первому митапу, который состоится в московском офисе Kaspersky Lab, 20 мая в 17:45.

В программе встречи три доклада, подробности читайте под катом
Читать дальше →
Total votes 10: ↑9 and ↓1+8
Comments1

Quality pipelines в мобильной разработке, часть 1: Android

Reading time6 min
Views6.4K


фото с Unsplash по запросу "pipeline"


Общий подход


Привет! Я начинаю серию постов о пайплайнах в разработке и не только, которые помогают удостовериться в качестве разрабатываемых мобильных приложений. Главная идея в том, чтобы осветить все подходы к мобильной разработке, актуальные сейчас: нативную разработку для Android и iOS, React Native, Xamarin и Flutter. Я начну с Android, но сначала хотел бы дать общее представление, о чём это всё.


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

Читать дальше →
Total votes 21: ↑21 and ↓0+21
Comments0

Сохраняем код чистым в приложении на Flutter

Reading time4 min
Views5.4K

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

Читать далее
Total votes 8: ↑8 and ↓0+8
Comments1

Расширяем Android Lint

Level of difficultyMedium
Reading time6 min
Views1.9K

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

Читать далее
Total votes 11: ↑10 and ↓1+9
Comments1

Место встречи изменить нельзя, или ЛК ждет в гости всех Android-разработчиков

Reading time2 min
Views3.2K


«Лаборатория Касперского» совместно с сообществом MOSDROID приглашают всех Android-разработчиков на новую встречу, которая пройдет 20 мая в нашем московском офисе. Наш митап будет посвящен востребованным инструментам и самым животрепещущим вопросам, стоящим на повестке дня у ваших коллег по цеху.

Сегодня область мобильной разработки под Android (доля ОС на рынке составляет уже 87%, что означает ее присутствие на девяти из десяти мобильных устройств) актуальна как никогда: некоторые приложения для смартфонов уже полностью заменяют аналоги в виде компьютерных программ. И следовательно, самое время обсудить это. По традиции мы подготовили для вас три доклада: в этот раз поговорим о Groovy, Kotlin и Lint.
Читать дальше →
Total votes 14: ↑9 and ↓5+4
Comments3

Советы по созданию современного Android-приложения. Лекция Яндекса

Reading time18 min
Views25K
Мы продолжаем публиковать материалы Школы мобильной разработки 2017 года. На очереди — большая лекция Android-разработчика Дмитрия Никитина из команды Яндекс.Почты. Дмитрий рассказывает, как подойти к созданию проекта с нуля, не потеряться среди множества библиотек и на что обратить внимание при выборе того или иного решения.


— Все вы как минимум пару месяцев программируете под Android. Возможно, кто-то программирует пару лет и уже от корки до корки прочитал developer.android.com. А возможно, нет. Но вы все наверняка знаете, как можно сделать многие вещи как минимум одним из способов. Но не секрет, что этих способов может быть много, у каждой команды они могут быть свои, и часто тот или иной способ выбран исключительно по историческим причинам.

Сегодня я хочу сделать небольшой обзор того, какие вообще есть альтернативы и средства разработки и на чем стоит акцентировать внимание при выборе той или иной библиотеки.
Total votes 47: ↑42 and ↓5+37
Comments0

Что такое Android Lint и как он помогает писать поддерживаемый код

Reading time6 min
Views17K

Что такое Android Lint и как он помогает писать поддерживаемый код


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


Кроме того, в Java и Kotlin, как и в любых других языках программирования, есть свои собственные конструкции, которые могут привести к снижению производительности.


Привет, Lint


Мы используем инструмент под названием Lint (или Linter) для избежания таких проблем. Lint — это инструмент для статического анализа кода, который помогает разработчикам изловить потенциальные проблемы ещё до того, как код скомпилируется.

Читать дальше →
Total votes 15: ↑14 and ↓1+13
Comments0

VIM и JSLint

Reading time4 min
Views3.1K
Вышло так, что я почти не пишу на хабрахабр — тому есть свои причины. Но очень хотелось бы поделиться одной вещью, которая наверняка будет полезна всем тем, кто работает с JavaScript'ом в vim’е, к тому же на хабрахабре я подобного материала не нашёл.
Читать дальше →
Total votes 44: ↑38 and ↓6+32
Comments16

Автоматизация повышения качества кода в Android

Reading time8 min
Views8.9K

Современные мобильные приложения уже вполне серьезные Enterprise проекты, которые разрабатываются десятками, а то и сотнями разработчиков, содержат в себе множество тысяч строк кода и постоянно меняются и развиваются. Уследить за такой огромной кодовой базой помогает процесс автоматизации проверок кода и работы приложения. Сегодня расскажу о том какие инструменты вы можете использовать, чтобы улучшить стабильность вашего кода и не допускать ошибок, а также сэкономить время коллегам во время pull request.

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

Читать
Total votes 11: ↑11 and ↓0+11
Comments11

Sublime Text: валидация синтаксиса, автодополнение (v.1.1)

Reading time2 min
Views29K
UPD: по совету комментаторов, заменил jsl на более новый eslint

Заметил у себя на работе, что многие JS-разработчики до сих пор используют «голый» Sublime Text, матерясь и чертыхаясь после каждой пропущенной запятой, непарной скобочки или еще какой опечатки. Поэтому написал краткий гайд по исправлению этого недоразумения, которым с вами и делюсь. Итак:
Читать дальше →
Total votes 28: ↑17 and ↓11+6
Comments9

Android Lint: оптимизируем проверку мердж-реквестов

Reading time6 min
Views1.2K

Привет, это Android-разработчик из «МТС Диджитал» Никита Пятаков. Когда я только начал работать над приложением «Мой МТС», мне нужно было время, чтобы адаптироваться и ознакомиться с проектом. На первых МР-ах коллеги подсвечивали готовые решения, которые можно переиспользовать. Когда к нам стали приходить новые разработчики, такие комментарии оставлял уже я. Это натолкнуло меня на мысль, что использование синтаксического анализатора оптимизирует процесс проверки. К тому моменту мы уже использовали Android Lint, так что выбирать не пришлось. 

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

Читать далее
Total votes 9: ↑9 and ↓0+9
Comments0

Oxlint — более быстрая альтернатива ESLint

Level of difficultyEasy
Reading time4 min
Views9.4K

Друзья, всем привет! Меня зовут Игорь Карелин, я frontend-разработчик в компании Домклик. Недавно стал общедоступен новый линтер «Oxlint», основанный на языке программирования Rust, и многие эксперты высоко оценили его. Какие преимущества Oxlint предоставляет по сравнению со своим предшественником ESLint?

Читать далее
Total votes 32: ↑32 and ↓0+32
Comments18