Skip to content

eclipse/eclipse-collections-kata

Repository files navigation


Eclipse Collections Kata

A kata is an exercise in martial arts. A code kata is an exercise in programming which helps hone your skills through practice and repetition. The Eclipse Collections Kata is a fun way to help you learn idiomatic Eclipse Collections usage. This particular kata is set up as a series of unit tests which fail. Your task is to make them pass, using Eclipse Collections.

What you will need to build the katas

  1. JDK 11 (use pom.xml to build project) or JDK 17 (use pom-jdk17.xml to build project)
  2. Maven 3.6.1+
  3. IDE of your choice that has support for JDK 11 or JDK 17

Initialize Kata

Clone this repo or simply download and extract the master zip file, then follow the instructions below for your IDE/platform.

Eclipse users

You can import the project from "Import" => "General" => "Existing Projects into Workspace". Select "eclipse-collections-kata" directory as root directory, make sure to choose "Search for nested projects" option and finish.

IntelliJ IDEA users

Initialize IntelliJ IDEA project with the command below.

You can open the project from "File" => "Open..." => choose "eclipse-collections-kata" folder.

NetBeans users

Linux/Mac/Windows:

Open as a Maven project

You can open the project directly from "File" => "Open Project..." => choose "eclipse-collections-kata" folder. In the "Open Project" dialog you might select the option "Open Required Projects" to automatically open the two modules.

Work on Kata exercises

There are seven separate Java 11 katas under different directories:

  1. Pet Kata
  2. Company Kata
  3. Candy Kata
  4. Converter Method Kata
  5. Top Methods Kata
  6. Lost and Found Kata
  7. Jackson Kata

There are also Java 17 katas supported as well:

  1. Records Kata
  2. Haiku Kata
  3. Wordle Kata

By default, the project is set up to build JDK 11 compatible katas. To work on katas that use Java 17, use/import pom-jdk17.xml instead to build the project.

To get started, you can refer to slides for the Instruction and Pet Kata to learn how to set-up Kata, basic features of Eclipse Collections corresponding to each Pet Kata exercise and then solutions. Check out the pet kata solutions module tests for your reference.

To learn wider range of functionalities, slides for Company Kata are now available online as well.

To learn more about the Bag data structure, take a look at the Candy Kata.

Check out Lost and Found Kata and solutions to learn more advanced data structures and APIs in Eclipse Collections, many of which will have no equivalent in the JDK today.

Enjoy happy learning with Eclipse Collections Kata!

How to Contribute

We welcome contributions! We accept contributions via pull requests here in GitHub. Please see How To Contribute (from the Eclipse Collections project) to get started.

Reference Guide

The Eclipse Collections Reference Guide is a great way to get an overview of the extensive features available in the framework.

Presentations

The API Design of Eclipse Collections covers the design decisions that went into making Eclipse Collections and guiding its evolution from Java 4 through Java 17. The content of the presentation is also available in a convenient to read markdown format.