Introduction to JVM Languages – Clojure, Kotlin, and Groovy
4.4 (3 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
91 students enrolled

Introduction to JVM Languages – Clojure, Kotlin, and Groovy

Explore the world of static and dynamic programming with Clojure, Kotlin and Groovy
4.4 (3 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
91 students enrolled
Created by Packt Publishing
Last updated 12/2017
English
English [Auto]
Current price: $86.99 Original price: $124.99 Discount: 30% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 3.5 hours on-demand video
  • 1 downloadable resource
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • 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 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
Course content
Expand all 27 lectures 03:34:54
+ Clojure
5 lectures 37:50

This video provides an overview of the entire course.

Preview 03:57

In this video, we will get started with Clojure by installing it and creating a start script.

Installing Clojure
02:29

Before starting, we will look at the REPL shell and learn all about the Clojure language in this video.

Clojure's Interactive Shell (REPL) and Language
20:12

The Clojure team added several features to Clojure to ensure that Clojure can properly consume and create classes from the Java class library and other JVM libraries. Let’s see how that works in this video.

Working with Java Classes
04:21

To safely manage a mutable state in a multithreaded program, Clojure offers agents. In this video, we will learn to manage states with the help of agents.

Managing States with Agents
06:51

Now that you are done with the videos of section 1, let’s assess your learning. Here, are a few questions, followed by 4 options, out of which 1 is the correct option. Select the right option and validate your learning! The answers are provided in a separate sheet

Test your Knowledge
3 questions
+ Clojure Programming
6 lectures 40:33

To add Clojure support to Eclipse IDE, a plugin is required. In the Clojure world, this plugin is called Counterclockwise.

Preview 02:46

Leiningen is the de facto build tool used for Clojure development. So it is important to learn about it.

Leiningen's Build Tool
04:15

Until now, we have only entered snippets of code in Clojure's interactive REPL shell. To create executable programs in Clojure, you'll have to call an ordinary Clojure macro in your code that will instruct the built-in compiler to generate JVM .class files.

Creating Executable Programs in Clojure
06:59

Now that we've tried out Leiningen, we are ready to build our first project in Eclipse IDE using the Counterclockwise plugin. Let’s do that in this video.

Creating a New Counterclockwise Project
06:23

Monads are used in functional programming to build simple components. They are used to chain a series of operations in a safe way. Let’s look at the working of monads.

Exploring Monads by Applying Test-Driven Development
10:21

Luminus is a microframework for quickly building powerful web applications in Clojure.

The Luminus Web Framework
09:49

Now that you are done with the videos of section 2, let’s assess your learning. Here, are a few questions, followed by 4 options, out of which 1 is the correct option. Select the right option and validate your learning! The answers are provided in a separate sheet

Test your Knowledge
3 questions
+ Kotlin
4 lectures 36:33

Our first step as always is to install the required software. In this video, we will install Kotlin.

Preview 02:24

Kotlin also has a REPL interactive shell that can be used to try Kotlin snippets interactively. Let’s have some fun with it!

Kotlin's REPL Interactive Shell
01:30

We need to know the fundamentals of the Kotlin language before starting programming in it. This video will give us an insight of the Kotlin language.

Kotlin Language Fundamentals
12:28

Kotlin is first and foremost an OOP language. We will look at some of the basic concepts here. While Kotlin is a pure OOP language, it also supports procedural programming. So let’s begin, shall we?

  • Define classes, constructors and packages
  • Import members and add them to classes
  • Learn about inheritance and interfaces. Perform procedural programming
OOP and Procedural Programing in Kotlin
20:11

Now that you are done with the videos of section 3, let’s assess your learning. Here, are a few questions, followed by 4 options, out of which 1 is the correct option. Select the right option and validate your learning! The answers are provided in a separate sheet

Test your Knowledge
3 questions
+ Kotlin Programming
3 lectures 31:52

There is a Kotlin plugin available for Eclipse IDE to make things easy for us. Let’s explore it in this section.

Preview 02:06

Apache Maven is a famous build tool and is used by Kotlin developers. Hence it becomes essential for us to know about it.

Apache Maven
09:11

In this video, we will be building a simple desktop application in Kotlin, that makes use of the JavaFX GUI desktop toolkit.

Creating a JavaFX Desktop GUI Application
20:35

Now that you are done with the videos of section 4, let’s assess your learning. Here, are a few questions, followed by 4 options, out of which 1 is the correct option. Select the right option and validate your learning! The answers are provided in a separate sheet

Test your Knowledge
4 questions
+ Groovy
3 lectures 32:37

Installing Groovy is not much different from the other languages covered so far. So let’s do it in this video.

Installing Groovy
05:13

As the Groovy language is largely compatible with the Java language, it's an easy language to learn for Java developers. Also, Groovy comes with a large library of classes that can be used to make the life of a developer Easier in the Groovy Development Kit

Groovy Language and Development Kit
21:40

There is a difference between static and dynamic programming. Let’s look at it in this video.

Dynamic and Static Programming
05:44
Now that you are done with the videos of section 5, let’s assess your learning. Here, are a few questions, followed by 4 options, out of which 1 is the correct option. Select the right option and validate your learning! The answers are provided in a separate sheet
Test your Knowledge
3 questions
+ Groovy Programming
6 lectures 35:29

Groovy Eclipse, the plugin that adds Groovy support to Eclipse IDE, is on the Eclipse Marketplace. Let’s use it in our course.

Installing the Groovy Eclipse Plugin
02:57

Groovy has a built-in dependency manager called Grape, but it has issues when using it within Groovy Eclipse. Therefore, we will be using Apache Ivy for our dependency management in this section.

Apache Ivy and IvyDE
02:09

Now that we have installed all required plugins in Eclipse IDE, we can create the project.

Creating and Configuring the Project
04:46

The Java Database Connectivity (JDBC) standard is a standard that makes it possible to access Database management system (DBMS) servers in JVM applications. We will learn about it in this video.

Java Database Connectivity (JDBC)
11:15

Groovy's XML MarkupBuilder class is an example of a class that has been created using Groovy's dynamic programming features. We will work with it in this video.

Generating XML Using MarkupBuilder
04:47

Vert.x is a modern micro web service framework for the JVM platform. It has high performance and scalability.

The Vert.x microservice Platform
09:35

Now that you are done with the videos of section 6, let’s assess your learning. Here, are a few questions, followed by 4 options, out of which 1 is the correct option. Select the right option and validate your learning! The answers are provided in a separate sheet

Test your Knowledge
4 questions
Requirements
  • Basic practical knowledge of a modern programming language that supports object-oriented programming (JavaScript, Python, C#, VB. NET, and C++) is assumed.
Description

If you want to build a strong foundation with the Java Virtual Machine and get started with popular modern programming languages, then this video is for you.The video 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 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 course, you will have written multiple programs that run on the Java Virtual Machine and know about the differences between the various languages.

About the Author :

Vincent van der Leun is a software engineer living in the city of Utrecht in The Netherlands. Programming since the age of 8, he has worked with many different languages and platforms over the years. Rediscovering Java a few years ago, he loved it so much that he became an Oracle Certified Professional, Java 7 Programmer, and started the JVM Fanboy blog. Currently he works for CloudSuite, a company specializing in modern ecommerce solutions. At CloudSuite he works on various backend systems and web services, writes JavaScript code for frontend applications, supports consultants by providing complex SQL queries, and consumes coffee while having design-related discussions with fellow developers.

Who this course is for:
  • This video is meant for programmers who are interested in the Java Virtual Machine (JVM) and want to learn more about the most popular programming languages that can be used for JVM development.