In this article, we will introduce libraries and frameworks that are often used in system development in Java. I will explain briefly. We hope that it will be of some help when selecting technology.
JDK -Oracle JDK It is a Jdk with paid support. Instead of costing $ 2.5 per user each month It has LTS and endorsement from Oracle. We recommend using this if you place great importance on security or if you feel comfortable with support.
・ Open JDK It's a free jdk. Basic performance and yesterday are no different from the above. We recommend using this for personal development.
・ Eclipse If you're starting your career as a Java engineer, it's probably an IDE you've heard of. In fact, it can handle many languages, not just Java. I have been indebted many times in practice. Compared to modern editors, it may be slower and have fewer plugins, It is an IDE that can be used in active duty. A similar tool is the Spring Tool Suite (STS).
・ MicroSoft VS Code It is an open source lightweight editor created based on web technology using Node.js library, Electron, etc. There are many examples of use in languages such as JavaScript and Python, By introducing a set of extensions called Java Extension Pack, you can easily build a comfortable development environment comparable to Eclipse.
・ Struts2 I haven't heard many examples of adoption these days, but it is a framework that has prevailed in Java. ** Adopting MVC model, describe the processing of Web application in the class called Action class, We will develop by describing the transition destination in the configuration file called struts.xml. ** **
・ Spring MVC Probably, it is the No. 1 framework among Java frameworks in terms of adoption example name recognition. ~~ I personally think that all languages are about the same as Ruby on rails. ~~ Compared to other frameworks, it has a wider range of responsibility for DB linkage and transaction management. ** Dependency injection (DI) simplifies source code writing and supports aspect-oriented programming. ** ** In the past, there was a problem that creating and maintaining a configuration file was troublesome (not a problem peculiar to Spring), but there is also a framework that solves the problem of Spring Boot.
・ Play Framework It's famous and popular as a Scala framework rather than Java, but of course you can use Java as well. Compared to the above framework, it is lighter and easier to build an environment, and it is easier to write a configuration file. ** Describe the routing settings in a file called the routes file, and decide which process to call in response to the request from the screen. ** ** It's one of the frameworks influenced by Ruby on rails, so This framework is recommended for those who want to develop quickly, or for those who have experience developing with Ruby on rails or Django to study Java.
・ JUnit It is a unit test library in Java that can be said to be self-explanatory. You can use AssertEquals () and annotations such as Test and Setup to write a concise and easy-to-understand test.
・ Jython A library that provides Python that runs on the JVM. (Current final version is Python2 series) This is useful when you are developing in Java but want to call a Python library.
-Apache POI It is a library that can be used when creating Excel or CSV in Java. It is more sophisticated than Java's standard API and allows you to develop more concisely. Please note that it uses a lot of memory.
・ Git Compared to SVN above, I am not good at managing documents (it is treated as binary data), There are many advantages such as easy branch creation and few restrictions on merging. This is recommended for new development.
I personally develop OpenJdk + VSCode + Play + Git In practice, I work with Oracle Jdk + Eclipse + Spring + SVN, The personal development configuration is highly recommended.
I will write about JMockit, Jenkins, and build tools in the future. Also, if there is something you would like me to post, I would appreciate it if you could write it in the comment section.
Recommended Posts