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
- JDK 11
- Maven 3.6.1+
- IDE of your choice that has support for JDK 11
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 katas under different directories:
- Pet Kata
- Company Kata
- Candy Kata
- Converter Method Kata
- Top Methods Kata
- Lost and Found Kata
- Jackson Kata
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.