Как заставить Android Studio ругаться на код по вашим правилам: создаем пользовательские Lint и Detekt

Привет, Хабр! На связи Алина, старший Android-разработчик в команде Инвестиций «Совкомбанк Технологии». Сегодня поговорим о том, как заставить Android Studio самостоятельно следить за порядком в коде – без ручных проверок и без вечных напоминаний в командном чате. В этой статье мы создадим практические правила для инструментов статического анализа кода и разберем, как внедрить их в проект. На примере lint рассмотрим контроль архитектуры пакетов и обязательную документацию с QuickFix, а на примере detekt – проверку неизменяемого состояния представления без Android-зависимостей и миграцию с RxJava на Coroutines.

https://habr.com/ru/companies/sovcombank_technologies/articles/1005922/

#Lint #Detekt #Android #QuickFix #Анализ_кода #Правила #Kotlin #Java #Suppress #Тесты

Как заставить Android Studio ругаться на код по вашим правилам: создаем пользовательские Lint и Detekt

Привет, Хабр! На связи Алина, старший Android-разработчик в команде Инвестиций «Совкомбанк Технологии». Сегодня поговорим о том, как заставить Android Studio самостоятельно следить за порядком в коде...

Хабр

This is the latest installment in my series on developing custom Detekt rules. In this part, we discuss how to set up a repository to make it more contributor-friendly. https://medium.com/@yaugenslizh/how-to-engage-the-community-to-contribute-to-your-repository-part-5-00ef73ac4c56

#android #kotlin #detekt #lint #development

How to engage the community to contribute to your repository. Part 5

In the last part, I want to share several tips that make your repository more attractive to contributions and helps reduce manual work for keeping your Detekt rules up to date. The earlier parts of…

Medium
I am happy to share a new article from a series about Detekt. Here, I talk about different ways to distribute custom #Detekt rules. I would be happy to receive any feedback about it. https://buff.ly/3PjIpCg #Kotlin #Android #Linter #Dev #Mobile #Tool
Sharing Custom Detekt rules. Part 4 - Yauhen Slizh - Medium

In the last three parts, we found out what Detekt is, how to write our own rule, and how to test them. Now it is time to make your rule more flexible and independent of the original project. In this…

Medium

Как ускорить проверку приложения с помощью Impact-анализа: Часть 1 — Статические анализаторы

Когда команда растёт, а кодовая база стремительно увеличивается, время выполнения проверок может стать настоящей проблемой. Unit-тесты, UI-тесты, статический анализ — все эти процессы начинают занимать слишком много времени, замедляя разработку. Звучит знакомо? В этой статье я поделюсь опытом нашей команды в Циан: расскажу, как мы перешли от полного выполнения всех проверок к выборочному запуску, снизив их длительность. И почему сделать это проще, чем кажется. Если вы считаете, что выборочный запуск статических анализаторов — это сложно и дорого в поддержке, я покажу, как обойтись всего 200 строками кода. Хочется запускать проверки только там, где это действительно нужно, и ускорить работу своей команды? Тогда читайте дальше.

https://habr.com/ru/companies/cian/articles/861922/

#разработка_под_android #программирование #разработка_мобильных_приложений #разработка_мобильного_приложения #мануал #impact_analysis #detekt #статический_анализ_кода #ускорение_разработки

Как ускорить проверку приложения с помощью Impact-анализа: Часть 1 — Статические анализаторы

Когда команда растёт, а кодовая база стремительно увеличивается, время выполнения проверок может стать настоящей проблемой. Unit-тесты, UI-тесты, статический анализ — все эти процессы начинают...

Хабр
Today, I received an email about my submission to #DroidCon in #Italy. My talk on writing a custom #Detekt rule wasn't accepted for the agenda. I'm not sad about it, but I was surprised that the organizers gave me a free ticket to the conference. This motivates me to prepare a more interesting presentation for next year. I'm also considering the possibility of attending the conference in person. #Android #Conference #Mobile #Kotlin
I am glad to share my new article about developing Detekt custom rules. In it, I describe the process of testing rules. I show how important it is to write tests that cover all functionality. https://buff.ly/3TQgoVr #Android #Detekt #Kotlin #Programming #Dev #Lint
Testing of Detekt rule. Part 3 - Yauhen Slizh - Medium

We reach to one is important part of programming — testing. In Part 2 we wrote the rule based on a real piece of code in the project. In real life, we very often have different variants of cases that…

Medium
I was so happy a few days ago because I received my first #GitHub issue for my small open-source project, https://buff.ly/4ej2jrQ. I fixed it and received positive feedback. It was very motivating. Issues, pull requests, and comments are 👍 for developers. #Detekt #Kotlin #Dev #Android #Linter #Programming #Dev
GitHub - Kiolk/Detekt-rules

Contribute to Kiolk/Detekt-rules development by creating an account on GitHub.

GitHub
I released a new version of my custom #Detekt rule. It has a small fix in the iteration logic. What do this rule and how it adds to project you can find here https://buff.ly/4ej2jrQ#Github #Android #Lint #Kotlin #Dev #Release. Don't be shy - use it and add a star to the repo!
GitHub - Kiolk/Detekt-rules

Contribute to Kiolk/Detekt-rules development by creating an account on GitHub.

GitHub
I am happy to share the next part of my series on Detekt. This time, I talk about writing a custom rule, from idea to implementation. I would appreciate any feedback and comments. #Detekt #Android #Kotlin #Lint #Mobile #Development #Programming https://buff.ly/3XXKwkw
Write a custom Detekt rule. Part 2. - Yauhen Slizh - Medium

How we covered in Part 1 (What is Detekt and how to set it up to use in a project?): Detekt is a powerful lint checker that helps to keep our code clean. What should you do if you can’t find the…

Medium

Detekt: как статический анализ помогает улучшить код автотестов

Есть такое мнение, что качество кода автотестов не так важно в сравнении с основной кодовой базой. Однако это тоже код, который приходится поддерживать с соответствующими накладными расходами. Если не следить за его качеством, то и тут могут возникать проблемы. И у каждой ошибки есть своя цена. Было бы здорово, если бы о них можно было узнать как можно быстрее и без привлечения лишних ресурсов. Это может касаться как простых ошибок, на которые не хочется тратить время специалистов, так и неочевидных ошибок, у которых иногда непросто определить причину. Меня зовут Николай, и я инженер в мобильной платформенной команде Яндекс Еды. В этой статье я расскажу, как мы повышаем качество кода автотестов Android-приложения. И в этом нам помогает статический анализ.

https://habr.com/ru/companies/yandex/articles/779152/

#detekt #static_analysis #static_code_analysis #quality_gates #kotlin #android #kaspresso #marathon #allure #тестирование

Detekt: как статический анализ помогает улучшить код автотестов

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

Хабр