Book Image

Introduction to JVM Languages

Book Image

Introduction to JVM Languages

Overview of this book

Anyone who knows software development knows about the Java Virtual Machine. The Java Virtual Machine is responsible for interpreting Java byte code and translating it into actions. In the beginning, Java was the only programming language used for the JVM. But increasing complexity of the language and the remarkable performance of the JVM created an opening for a new generation of programming languages. If you want to build a strong foundation with the Java Virtual Machine and get started with popular modern programming languages, then this book is for you. The book will begin with a general introduction of the JVM and its features, which are common to the JVM languages, helping you get abreast with its concepts. It will then dive into explaining languages such as Java, Scala, Clojure, Kotlin, and Groovy and will show how to work with each language, their features, use cases, and pros and cons. By writing example projects in those languages and focusing on each language’s strong points, it will help you find the programming language that is most appropriate for your particular needs. By the end of the book, you will have written multiple programs that run on the Java Virtual Machine and know about the differences between the various languages.
Table of Contents (21 chapters)
Title Page
Credits
About the Author
About the Reviewer
www.PacktPub.com
Customer Feedback
Preface

Chapter 10. Kotlin Programming

In this chapter, we are going to write a small desktop GUI application in Kotlin using the JavaFX toolkit. While we mostly used Kotlin's REPL in the previous chapter, we will now be using the Eclipse IDE again for writing code. Just as was the case with both Scala and Clojure, we will need to install a plugin to do this. As this plugin is available in the Eclipse Marketplace, the installation process is a breeze.

As a build tool, we will be using Apache Maven, a build tool that was originally created for Java but can be extended with plugins to support other languages, such as Kotlin. It builds projects by reading an XML file that defines all dependencies and plugins to use during different phases and goals of the building process. We'll use a preconfigured template provided by the Kotlin team as the template for this project. Here's the list of topics that will be covered:

  • Kotlin for the Eclipse IDE plugin
  • Apache Maven
  • Creating a JavaFX desktop GUI application...