Project

Sorting Tool (Kotlin)

Hard
481 completions
~ 20 hours
4.3

Become familiar with Collections and learn to work with files, arguments, and the command line.

Provided by

JetBrains Academy JetBrains Academy

About

In the modern world, data has become so abundant that processing it is no easy business. How can anyone make sense of all these words and numbers? In this project, you will write a program that processes textual and numeric data and sorts it. Your program will be able to determine the biggest or most frequent pieces of data and perform the necessary calculations on them. Data is waiting to be sorted!

Training project icon

Training project

This project allows you to practice and strengthen your coding skills, helping you get ready for more advanced tasks ahead.

What you'll learn

Once you choose a project, we'll provide you with a study plan that includes all the necessary topics from your course to get it built. Here’s what awaits you:
Data can also be words or phrases, and your program should be able to handle them just as well. Enable your program to process different types of data and determine the greatest/longest input elements, as well as their frequency in the data set.
Start implementing the core part of your program: sorting.
Implement sorting for all types of data and learn how to use Collections to calculate, store, and display the elements’ frequency.
Oh no! Someone is misusing the arguments! Make the program notify users about such errors if they occur.
Make it possible for your program to use files for input and output.

Reviews

Dalvir Singh Bains avatar
Dalvir Singh Bains
6 months ago
I've learned about Kotlin collections, branching and conditional statements. Moreover, it taught me to analyze the functional requirements of the system and how to think to map them to working code. It was a good learning experience:)
Jose Garza avatar
Jose Garza
7 months ago
Learned how to break down the project into sections using Test Driven Development & got a decent amount of practice writing tests first before finally submitting solutions. Applied maps to organize user arguments, applied null safety checks, and try-catch blocks for handling specifically thrown ...
Akbar Hamaminatu avatar
Akbar Hamaminatu
10 months ago
I've learned the fundamentals of computer algorithms, including analyzing their efficiency using Big O notation and understanding best, average, and worst-case complexities. I can write pseudocode, work with fixed-size and dynamic arrays, solve sorting problems using algorithms like insertion sort a ...

4.3

Learners who completed this project within the Kotlin Developer course rated it as follows:
Usefulness
4.5
Fun
4.3
Clarity
4.2