Kotlin Exercises, Data Structure, Algorithms, Design Patterns.
Basics | Classes | Collections | Concurrency | Interfaces | Functions |
---|---|---|---|---|---|
Enums | Abstract Class | Lists | Coroutine: Builder and Jobs | Interface with code | Infix Function |
Delegate Property | Data Class | Loop and Ranges | Coroutine: Scopes | Sealed Interface | Local Function |
Lambdas | Properties | Maps | Coroutine: with Context | Operator Overloading | |
Number | Several Constructors | Sequences | Flows | Lambdas with Receivers | |
Scope Functions | Single Constructor | Sets | Shared Flow | Extension Function | |
String Template | Open Class | Channel | Extension Property | ||
Sealed Class | Callback Flow | Inline, Noinline, Crossline | |||
Visibility Modifier | Reified | ||||
Type Alias | Contracts | ||||
Custom Delegate | TailRec | ||||
Class Delegation | |||||
Objects in Kotlin | |||||
Class With Statics |
Arrays | Binary Tree | Graph | Strings | Greedy | Ordering |
---|---|---|---|---|---|
Non Constructible Change | Find Closest Value In BST | Depth First Search | Counting Valleys | Minimum Waiting Time | Insertion Sort |
Sorted Squared Array | Branch Sums | Repeated String | Class Photos | Merge Sort | |
Tournament Winner | Node Depths | TandemBicycle | |||
Transpose Matrix | Height Of A Binary Tree | ||||
Two Number Sum | Evaluate Expression Tree | ||||
Validate Subsequence | Postorder Traversal | ||||
Jumping On The Clouds | Preorder Traversal | ||||
Left Rotation |
Creational | Structural | Behavioral |
---|---|---|
Facade | Chain of Responsibility | |
Decorator | Command | |
Mediator | ||
State |
- 📖 Design Patterns: Elements of Reusable Object-Oriented Software.
- 📖 Head First Design Patterns: Building Extensible & Maintainable Object-Oriented Software.
- 📖 Agile Software Development: Principles, Patterns, and Practices.
- 🎥 Design Pattern Video Tutorial - Derek Banas.
Single Responsibility | Open Closed | Liskov's Substitution | Interface Segregation | Dependency Inversion |
---|---|---|---|---|
OpenClosedInitial | LiskovRectangle | |||
OpenClosedViolation | LiskovViolationSquare | |||
OpenClosedConformity |