In fact most IDEs are extensible through the use of
plug-ins. And by the way, note that plug-ins might be
called differently on different platforms. For example, if you're using
a Microsoft Visual Studio, plug-ins are normally called add-ins, but
the concept is more or less the same. So, what
is a plug-in? Well, let's imagine our IDE to be
this box. A plug-in is additional functionality that you can
actually plug into this box so that this box starts
offering more features to the user. For example, you
can add to Eclipse the Checkstyle plug-in. Which, paraphrasing the
Checkstyle website, helps you ensure that your Java code
complies with a set of coding standards by inspecting the
code and pointing out items that deviate from a
defined set of coding rules. Again, this is a functionality
the core of Eclipse doesn't have. You can add
the Checkstyle plug-in, and this functionality will become available in
the IDE. Another example of plug-in is the EGit plug-in which
adds support for the Git version control system in Eclipse. And
actually this is something that we'll cover in detail, we'll have
a demo, and we will actually use it throughout the class, so
I'm not going to say anything more about the EGit plug-in for
now. But again, what the plug-in will do is to add
the Git functionality to Eclipse. A functionality that is not in
the core of Eclipse and that is available to the user after
you add the plug-in.