Introduction to JVM Languages

Explore the Java Virtual Machine with modern programming languages
Preview in Mapt

Introduction to JVM Languages

Vincent van der Leun

Explore the Java Virtual Machine with modern programming languages
Mapt Subscription
FREE
$29.99/m after trial
eBook
$25.20
RRP $35.99
Save 29%
Print + eBook
$44.99
RRP $44.99
What do I get with a Mapt Pro subscription?
  • Unlimited access to all Packt’s 5,000+ eBooks and Videos
  • Early Access content, Progress Tracking, and Assessments
  • 1 Free eBook or Video to download and keep every month after trial
What do I get with an eBook?
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with Print & eBook?
  • Get a paperback copy of the book delivered to you
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with a Video?
  • Download this Video course in MP4 format
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
$0.00
$25.20
$44.99
$29.99 p/m after trial
RRP $35.99
RRP $44.99
Subscription
eBook
Print + eBook
Start 30 Day Trial

Frequently bought together


Introduction to JVM Languages Book Cover
Introduction to JVM Languages
$ 35.99
$ 25.20
Introduction to JVM Languages - JVM, Java, Scala [Video] Book Cover
Introduction to JVM Languages - JVM, Java, Scala [Video]
$ 124.99
$ 106.25
Buy 2 for $35.00
Save $125.98
Add to Cart

Book Details

ISBN 139781787127944
Paperback450 pages

Book Description

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

Chapter 1: Java Virtual Machine
JVM implementations
Why develop on JVM?
Popular use cases
JVM concepts
Java editions
Other languages on JVM
Summary
Chapter 2: Developing on the Java Virtual Machine
JDK
Class organization with packages
Java Class Library
Running JVM applications on the command line
Eclipse IDE
Summary
Chapter 3: Java
OOP in Java
Writing Java code
Style guide
Quiz
Summary
Chapter 4: Java Programming
Configuring Eclipse IDE
Creating a web service in Java
Summary
Chapter 5: Scala
Installing Scala
Scala's Read-Eval-Print-Loop shell
Functional versus imperative programming
Scala language syntax and rules
OOP in Scala
Scala's standard library
Functional programming in Scala
Quiz
Summary
Chapter 6: Scala Programming
Scala IDE for the Eclipse plugin
SBT
Creating an Akka project
Summary
Chapter 7: Clojure
Installing Clojure
Clojure's interactive shell (REPL)
Clojure language
Working with Java classes
Managing states with agents
Style guide
Quiz
Summary
Chapter 8: Clojure Programming
The Counterclockwise plugin for Eclipse IDE
Leiningen's build tool
Creating executable programs in Clojure
Creating a new Counterclockwise project
Exploring monads by applying test-driven development
The Luminus web framework
Summary
Chapter 9: Kotlin
Installing Kotlin
Kotlin's REPL interactive shell
Kotlin language fundamentals
OOP in Kotlin
Procedural programming in Kotlin
Style guide
Quiz
Summary
Chapter 10: Kotlin Programming
Kotlin for the Eclipse IDE plugin
Apache Maven
Creating a JavaFX desktop GUI application
Summary
Chapter 11: Groovy
Installing Groovy
Groovy Language
Groovy Development Kit (GDK)
Dynamic and static programming
Quiz
Summary
Chapter 12: Groovy Programming
Installing the Groovy Eclipse plugin
Apache Ivy and IvyDE
Creating and configuring the project
Java Database Connectivity (JDBC)
Generating XML using MarkupBuilder
The Vert.x microservice platform
Summary
Chapter 13: Other JVM languages
Oracle Nashorn
Jython (Python)
JRuby (Ruby)
Frege (Haskell)
Ceylon
Summary
Chapter 14: Quiz Answers
Chapter 3: Java
Chapter 5: Scala
Chapter 7: Clojure
Chapter 9: Kotlin
Chapter 11: Groovy

What You Will Learn

  • Gain practical information about the Java Virtual Machine
  • Understand the popular JVM languages and the Java Class Library
  • Get to know about various programming paradigms such as imperative, object-oriented, and functional
  • Work with common JVM tools such as Eclipse IDE, Gradle, and Maven
  • Explore frameworks such as SparkJava, Vert.x, Akka and JavaFX
  • Boost your knowledge about dialects of other well-known programming languages that run on the JVM, including JavaScript, Python, and Ruby

Authors

Table of Contents

Chapter 1: Java Virtual Machine
JVM implementations
Why develop on JVM?
Popular use cases
JVM concepts
Java editions
Other languages on JVM
Summary
Chapter 2: Developing on the Java Virtual Machine
JDK
Class organization with packages
Java Class Library
Running JVM applications on the command line
Eclipse IDE
Summary
Chapter 3: Java
OOP in Java
Writing Java code
Style guide
Quiz
Summary
Chapter 4: Java Programming
Configuring Eclipse IDE
Creating a web service in Java
Summary
Chapter 5: Scala
Installing Scala
Scala's Read-Eval-Print-Loop shell
Functional versus imperative programming
Scala language syntax and rules
OOP in Scala
Scala's standard library
Functional programming in Scala
Quiz
Summary
Chapter 6: Scala Programming
Scala IDE for the Eclipse plugin
SBT
Creating an Akka project
Summary
Chapter 7: Clojure
Installing Clojure
Clojure's interactive shell (REPL)
Clojure language
Working with Java classes
Managing states with agents
Style guide
Quiz
Summary
Chapter 8: Clojure Programming
The Counterclockwise plugin for Eclipse IDE
Leiningen's build tool
Creating executable programs in Clojure
Creating a new Counterclockwise project
Exploring monads by applying test-driven development
The Luminus web framework
Summary
Chapter 9: Kotlin
Installing Kotlin
Kotlin's REPL interactive shell
Kotlin language fundamentals
OOP in Kotlin
Procedural programming in Kotlin
Style guide
Quiz
Summary
Chapter 10: Kotlin Programming
Kotlin for the Eclipse IDE plugin
Apache Maven
Creating a JavaFX desktop GUI application
Summary
Chapter 11: Groovy
Installing Groovy
Groovy Language
Groovy Development Kit (GDK)
Dynamic and static programming
Quiz
Summary
Chapter 12: Groovy Programming
Installing the Groovy Eclipse plugin
Apache Ivy and IvyDE
Creating and configuring the project
Java Database Connectivity (JDBC)
Generating XML using MarkupBuilder
The Vert.x microservice platform
Summary
Chapter 13: Other JVM languages
Oracle Nashorn
Jython (Python)
JRuby (Ruby)
Frege (Haskell)
Ceylon
Summary
Chapter 14: Quiz Answers
Chapter 3: Java
Chapter 5: Scala
Chapter 7: Clojure
Chapter 9: Kotlin
Chapter 11: Groovy

Book Details

ISBN 139781787127944
Paperback450 pages
Read More

Read More Reviews

Recommended for You

Clojure: High Performance JVM Programming Book Cover
Clojure: High Performance JVM Programming
$ 63.99
$ 44.80
Android Things Projects Book Cover
Android Things Projects
$ 31.99
$ 22.40
Learning Elasticsearch Book Cover
Learning Elasticsearch
$ 39.99
$ 28.00
Game Audio Development with Unity 5.X Book Cover
Game Audio Development with Unity 5.X
$ 35.99
$ 25.20
Learn Arduino Prototyping in 10 days Book Cover
Learn Arduino Prototyping in 10 days
$ 27.99
$ 19.60
Mastering Concurrency Programming with Java 8 Book Cover
Mastering Concurrency Programming with Java 8
$ 43.99
$ 30.80