
Meet your instructor, a seasoned full-stack engineer, and discover how IntelliJ is the tool of choice for developing and configuring applications, with new features and tricks to explore.
If you would like to create a personal cheat sheet of things to memorize, consider creating a new scratch file (see lecture in the Misc section) to note down the things and shortcuts that you intend to start using.
You can download, unzip and open the "coding-java" folder in IntelliJ if you want to code along with me. It contains sample code for this course.
The online-course-app is a sample application used in the Spring Integration section of this course.
Learn to comment code in Java, XML, and YAML with line and block comments, using keyboard shortcuts to comment and uncomment across multiple lines.
Shortcuts covered in this lecture:
reformat code
optimize imports
join lines
Note 1: you can also export your customized code formatting settings to share it with other team members from the settings dialog.
To make sure other developers (with other IDEs) adhere to the same code formatting rules, consider using a ".editorconfig" file. This is described in a separate lecture in the bonus section.
Note 2: In the settings, you can enable auto-formatting and import optimization as a default action to be performed on save. The version control commit dialog also has checkboxes to run these actions before committing.
Refactor safely by introducing a string to string hash map for replacements and iterating the map to apply changes, with tests ensuring behavior stays consistent.
Explore type migrations and constructor signature changes by converting a price field from a wrapper to a primitive double, previewing impacted locations, and cleaning up the pay method.
Note for color-blind users: To modify the line coverage colors, go to 'File | Settings | Editor | Color Scheme | General' and choose "Line coverage" from the tree of options.
JaCoCo is often used to calculate test coverage metrics on CI/CD systems - having the same percentages in IntelliJ and on a build server is a good idea. This lecture shows you how to change the setting in IntelliJ.
Tip: To better memorize shortcuts for various tool windows, display the tool window numbers in the IDE.
Open the find dialog with ctrl+shift+f to search the entire project or a custom scope, preview results, refine with file mask filters, and review matches in the find window.
Explore using regular expressions for search and replace in a comma-separated file, matching a date with capture groups and reformatting it to a dash-delimited pattern via replacements.
Explore viewing type and method hierarchies in IntelliJ IDEA 2021 for Java and Kotlin developers. Navigate between superclasses, subclasses, and method implementations using hierarchy shortcuts and the actions dialog.
Navigate large IntelliJ IDEA projects by using shortcuts to find files, classes, and symbols across modules and packages. Explore go-to-class and search-everywhere features, plus typing highlights and package views.
Access recently opened files with the recent files shortcut, scroll, or type to trim results. Use control shift plus you to view more context in the structure and module windows.
Open the favorites window, create a new list like code samples, and add files or packages to organize key Java files. Access favorites via shortcuts or the Find Action dialog.
Open the project window and press Ultan Insert to insert new angular dependencies or angular schematics to generate, for example, a new cloth inside our app folder.
Access maven settings quickly in the Maven settings dialog in IntelliJ, adjust output level, thread count, and maven version (bundled or wrapper), and configure a custom settings XML for proxies.
Use the Maven tool window to view the effective POM and generate a dependencies diagram, identifying transitive dependencies and classpath conflicts, then apply exclusions to prevent loaded dependencies.
Open the git tool window in IntelliJ IDEA to view local and remote branches and commit history with diffs; filter by user, date, or path.
Switch to a new branch in IntelliJ to develop a web API endpoint, use git checkout to switch, create a local branch, and mark favorites to keep them on top.
You may skip this lecture if you are not interested in the ktor framework.
In this coding exercise, we add a new web endpoint to our ktor project which returns the current time, so that we have some local changes for committing and pushing.
Customize the version control color scheme to distinguish changed lines, including blue and green indicators, with options for color blindness and custom colors in the editor settings.
Explore shelf and stash workflows in IntelliJ: switch branches with local changes, resolve conflicts, and manage multiple change lists by shelving, unshelving, and applying changes later.
Customize pre-commit checks by enabling code reformatting, import optimization, and test runs; choose analyzer profiles and filter checks, enabling a lightweight Scotland profile before committing.
Explore how to amend commits, edit messages, and rewrite history with interactive rebase in IntelliJ, including squashing commits, rewording, and undoing unintended commits before opening a pull request.
Explore git submodules to manage multiple projects with linked repositories, like a JavaScript library used across apps. Learn cloning, updating, and syncing submodules, resolving detached head state, and version bumps.
Discover non suspending log breakpoints in IntelliJ IDEA 2021 to inspect variables without pausing. Hold shift and click the gutter to enable it, then evaluate values and use filters.
Evaluate expressions at breakpoints, add watches, and change variable values to enter the desired if branch during debugging in IntelliJ IDEA.
In this exemplary debugging session, we analyze a typical issue with concurrent access on seemingly thread safe code. Breakpoint settings can be modified to suspend the current thread only instead of everything. This is often needed in such scenarios.
Learn to alter execution flow and return values in a Java debugging session with IntelliJ IDEA 2021, using breakpoints, simulate exceptions, and force custom returns.
Go to https://www.jetbrains.com/help/idea/pro-tips.html#dcevm for more information on how DCEVM can overcome some reloading limitation sin debugging sessions (mentioned at the end of the lecture).
I invite you to join my IntelliJ IDEA course, which will not only cover many keyboard shortcuts but also other productivity boosters like strategies for debugging and refactoring - all condensed into a single well structured course.
This course is intended for all software engineers and developers who would like to unlock the full potential of their IDE.
I am using the Ultimate edition of IntelliJ in this course- if you do not have a license then you can either use the 30 day trial version of intelliJ or simply skip the (few) parts which are not applicable to the community edition.
This is a hands-on course - meaning lectures are mostly screencasts with additional explanations. Sample code is provided as a downloadable zip archive so that you can code along with me - this will help you a lot to actually memorize the shortcuts and contents of the course.
The lectures are kept short, so that you can watch them anytime (e.g. during your coffee breaks) and so that you can skip the parts that you already know and re-watch what you forgot.
The course will be updated from time to time when new IDE releases introduce meaningful changes or features.
Feel free to take a look at the free preview videos before enrolling.