Project
Sorting Tool (Kotlin)
Hard
481 completions
~ 20 hours
4.3Become familiar with Collections and learn to work with files, arguments, and the command line.
Provided by
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
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:
Start by teaching your program to process numeric data. Feed it some numbers and ask it to determine the largest value and its frequency in the data set.
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
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:)
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 ...
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: