10 JetBrains Extensions to Fight Technical Debt
Editor extensions are great friends in adding a process for managing tech debt to our existing workflow. Let's look at the 10 best JetBrains extensions to fight tech debt!
Join the DZone community and get the full member experience.
Join For FreeMy last article on 10 VS Code Extensions to Fight Technical Debt got over 50.000 views and 500 reactions.
It doesn't surprise me as today I see many Engineering teams under huge pressure to build fast and often lacking time to fix and clean up their codebase.
In such situations, technical debt quickly builds up, and Engineers are looking for ways to keep their codebase healthy while shipping fast.
Editor extensions are our great friends in adding a process for managing tech debt to our existing workflow, so let's take a look at the best extensions to fight tech debt for JetBrains!
Refactoring and Tech Debt Tools
1. RefactorInsight
RefactorInsight enhances IDE representation of code changes with refactoring information that supports Java and Kotlin.
- Identify refactorings in Pull Requests.
- Label the commits that contain refactorings.
- See refactorings at any specific commit selected in the Git Log tab.
- Look at the refactoring history for classes, methods, and fields.
Language support: Java and Kotlin
2. Stepsize Issue Tracker in IDE
Stepsize is the first issue tracker for Engineers. It helps Engineers not only create better TODOs and code comments, but also prioritize technical debt, refactoring work, and more:
- Create and view code issues directly in your editor.
- See issues affecting the features you're working on.
- Add issues to your sprints with Jira, Asana, Linear, Azure DevOps, and GitHub integrations.
Language support: Any language
3. New Relic CodeStream
New Relic CodeStream is a developer collaboration platform for code discussions and reviews.
It supports pull requests from GitHub, BitBucket, and GitLab, issue management from Jira, Trello, Asana, and 9 others, and provides code discussion that ties it all together.
- Create, review and merge GitHub pull requests.
- Get feedback on work-in-progress with pre-PR code reviews.
- Have discussions with your teammates about your code.
Language support: Any language
TODOs and Comments
4. Comments Highlighter
This plugin allows creating custom highlighting for commented lines and language keywords. The plugin has the possibility to define custom user tokens for commented line highlighting.
Language support: Commented lines highlighting is supported for any language, highlighting of language keywords supports Java, Kotlin, PHP, C/C++/ObjectiveC, and C#
5. Better Comments
The Better Comments extension will help you create more human-friendly comments in your code. With this extension, you will be able to categorize your annotations into:
- Alerts
- Queries
- TODOs
- Highlights
Language support: Any language
Bugs and Security Vulnerabilities
6. SonarLint
SonarLint lets you fix coding issues before they exist: like a spell checker, SonarLint highlights Bugs and Security Vulnerabilities as you write code, with clear remediation guidance so you can fix them before the code is even committed.
Language support: C, C++, Java, JavaScript, TypeScript, Python, C#, Kotlin, Ruby, HTML, and PHP
7. SpotBugs
IntelliJ SpotBugs plugin provides static byte code analysis to look for bugs in Java code from within IntelliJ IDEA.
SpotBugs is a defect detection tool for Java that uses static analysis to look for more than 400 bug patterns, such as null pointer dereferences, infinite recursive loops, bad uses of the Java libraries, and deadlocks.
SpotBugs can identify hundreds of serious defects in large applications (typically about 1 defect per 1000-2000 lines of non-commenting source statements).
Language support: Java
8. Snyk Vulnerability Scanner
Snyk's Vulnerability Scanner helps you find and fix security vulnerabilities and code quality issues in your projects.
- Find and fix security issues.
- See a list of different types of issues, bucketed into categories.
- Get actionable fix advice.
Language support: Any language
9. Zero Width Characters Locator
Inspired by a question on Stack Overflow — this plugin adds an inspection that prevents some hard-to-find bugs related to invisible zero width characters in source code and resources. Usage — make sure that the "Zero width unicode character" inspection is enabled.
Language support: Any language
10. CodeMR
CodeMR is a software quality and static code analysis tool that helps software companies for developing better code, better quality products.
CodeMR visualizes code metrics and high-level quality attributes (coupling, complexity, cohesion, and size) in different views, such as Package Structure, TreeMap, Sunburst, Dependency, and Graph Views.
Language support: Java, Kotlin, and Scala
Published at DZone with permission of Alex Omeyer. See the original article here.
Opinions expressed by DZone contributors are their own.
Comments