You are previewing IntelliJ IDEA Essentials.
O'Reilly logo
IntelliJ IDEA Essentials

Book Description

Develop better software fast with IntelliJ IDEA

In Detail

Starting with a walkthrough of the main workspace, you will get up and running with IDEA from the word go. You will learn how to exploit IDEA's software development tools and use the various product features such as source code control, the debugger, and the many code generation tools.

You will then move on to advanced topics such as how IntelliJ helps in version control, managing change lists, viewing differences and changes, and reverting changes. You will also learn how IDEA can be used for agile development and web development, as well as its integration with frameworks such as Gradle.

Complete with tips and tricks, this book will make sure that you have an in-depth and extensive knowledge of informed programming.

What You Will Learn

  • Tailor IntelliJ IDEA to your needs and to the demands of your projects
  • Use IDEA's powerful software development tools to their fullest potential
  • Explore IntelliJ IDEA's impressive and extensive features and functionalities for successful software development
  • Set up a new project or import an existing one and run your project as standalone or using application servers
  • Explore and use IntelliJ IDEA's features, such as Live Templates and smart code completion
  • Create clean code that is solid and easy to maintain with refactoring tools
  • Coordinate with other developers using powerful version control features
  • Downloading the example code for this book. You can download the example code files for all Packt books you have purchased from your account at http://www.PacktPub.com. If you purchased this book elsewhere, you can visit http://www.PacktPub.com/support and register to have the files e-mailed directly to you.

    Table of Contents

    1. IntelliJ IDEA Essentials
      1. Table of Contents
      2. IntelliJ IDEA Essentials
      3. Credits
      4. About the Author
      5. About the Reviewers
      6. www.PacktPub.com
        1. Support files, eBooks, discount offers, and more
          1. Why subscribe?
          2. Free access for Packt account holders
      7. Preface
        1. What this books covers
        2. What you need for this book
        3. Who this book is for
        4. Conventions
        5. Reader feedback
        6. Customer support
          1. Errata
          2. Piracy
          3. Questions
      8. 1. Get to Know Your IDE, Fast
        1. Comparing the various editions
        2. Installing IntelliJ IDEA
        3. An overview of the workspace
          1. Tool windows
          2. View modes in tool windows
            1. Pinned Mode
            2. Docked Mode
            3. Floating Mode
            4. Split Mode
          3. Multiple views in tool windows
            1. Navigating inside the tool window
            2. Tool windows set up for a specific project
          4. Editor tabs
        4. Crafting your settings
          1. Searching for options
          2. Setting keyboard shortcuts
          3. Colors and fonts
          4. Picking your plugins
        5. Configuration tips and tricks
          1. Exporting and importing settings
          2. Sharing settings
          3. Tuning IntelliJ IDEA
        6. Summary
      9. 2. Off We Go – To the Code
        1. What is a project?
          1. Project structure and configuration
          2. Comparison of Eclipse, NetBeans, and IntelliJ IDEA terminologies
          3. The project
          4. Modules
          5. Folders
          6. Libraries
          7. Facets
          8. Artifacts
        2. Creating a project
          1. Creating a new project from scratch
          2. Importing the existing project
          3. Project format
            1. The directory-based format
            2. The file-based format
            3. The directory-based format versus the file-based format
        3. Summary
      10. 3. The Editor
        1. An overview of the editor and setup
          1. The gutter area
          2. The Status bar
          3. Tabs
          4. Scratches
          5. Scrollbar
        2. Navigating in the editor
          1. Navigating between files
          2. Navigating within a single file
          3. The Search Everywhere feature
        3. The editor basics
          1. Searching for and replacing text
          2. Syntax-aware selection
            1. Column selection mode
          3. Clipboard history
          4. Reformatting the code
          5. Code completion
          6. Language injection
          7. Generating code
          8. Code inspection
        4. Using Live Templates
          1. Postfix code completion
        5. Comparing files and folders
          1. Comparing files
          2. Comparing folders
        6. Looking for help
          1. Viewing inline documentation
          2. Viewing type definitions
          3. Looking for usages
          4. Viewing method parameters
          5. Viewing the external documentation
        7. Summary
      11. 4. Make It Better – Refactoring
        1. An overview of refactoring
        2. Refactoring actions
          1. Rename
          2. Find and Replace Code Duplicates
          3. Copy
          4. Move
          5. Move Instance Method
          6. Safe Delete
          7. Change Signature
          8. Type Migration
          9. Make Static
          10. Convert to Instance Method
          11. Extract refactorings
          12. Extract Variable
          13. Extract Constant
          14. Extract Field
          15. Extract Parameter
          16. Introduce Parameter Object
          17. Extract Method
          18. The Extract Method object
          19. Delegate
          20. Extract Interface
          21. Extract Superclass
          22. Inline
          23. Remove Middleman
          24. Wrap Return Value
          25. Invert Boolean
          26. Pull Members Up or Push Members Down
          27. Replace Inheritance With Delegation
          28. Convert Anonymous Class to Inner
          29. Encapsulate Fields
          30. Replace Constructor with Factory Method / Builder
          31. Generify
        3. Summary
      12. 5. Make It Happen – Running Your Project
        1. A temporary configuration
        2. The permanent configuration
          1. The Run/Debug configuration for a Java application
          2. Creating a Tomcat server local configuration
          3. The Node.js configuration
        3. Configuration defaults
        4. Sharing the configuration
        5. Running
        6. Summary
      13. 6. Building Your Project
        1. Editing Maven settings
        2. The Maven tool window
        3. Running Maven goals
        4. Using Gradle
        5. Executing Gradle tasks
        6. Summary
      14. 7. Red or Green? Test Your Code
        1. Enabling the testing plugins
        2. Creating the test
        3. Creating a run/debug configuration for the test
        4. Running or debugging the test
        5. Keyboard shortcuts
        6. Summary
      15. 8. Squash'em – The Debugger
        1. Debugger settings
        2. Setting up the JavaScript debugger
        3. Managing breakpoints
        4. Starting the debugger
        5. The Debug tool window
        6. Inspecting variables and evaluating expressions
        7. Debugger actions
        8. Keyboard shortcuts summary
        9. Summary
      16. 9. Working with Your Team
        1. Enabling version control
        2. Checking out the project from the repository
        3. Configuring version control
        4. Working with version control
          1. Changelists
          2. Adding files to version control
          3. Committing files
          4. Getting changes from the repository
          5. Browsing the changes
          6. Reverting the local changes
          7. Using the difference viewer
          8. Displaying the history
            1. The log viewer
        5. Quickly executing VCS actions
          1. Keyboard shortcuts
        6. Summary
      17. 10. Not Enough? Extend It
        1. Setting up the environment and project
        2. Developing the plugin functionality
        3. Deploying and publishing
        4. Summary
      18. Index