Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
96 changes: 96 additions & 0 deletions Skills/Additional.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
## Kotlin Programming Skills

### Language Fundamentals

- Variables and Data Types
- val: 🖐️ used
- var: 🖐️ used
- String: 🖐️ used
- Int: 🖐️ used
- Double: 🖐️ used
- Boolean: 🖐️ used
- Nullable types: 🎓 known
- Arrays: 🖐️ used

- Control Flow
- if: 🖐️ used
- when: 🖐️ used
- for and while loops: 🎓 known
- break and continue: 🎓 known
- return: 🖐️ used

- Functions
- Function declaration: 🖐️ used
- Default and named parameters: 🎓 known
- Lambda expressions: 🎓 known
- Higher-order functions: 🎓 known

- Classes and Objects
- Class declaration: 🖐️ used
- Object declaration: 🖐️ used
- Companion objects: 🎓 known
- Inheritance: 🎓 known
- Interfaces: 🖐️ used
- Data classes: 🎓 known

- Null Safety
- Safe calls (?.): 🖐️ used
- Elvis operator (?:): 🎓 known
- !! operator: 🖐️ used
- Safe casts (as?): 🎓 known

### Coroutines

- Basics of Coroutines
- suspend functions: 🎓 known
- launch and async builders: 🎓 known
- CoroutineScope: 🎓 known

- Coroutine Context
- Dispatchers: 🎓 known
- CoroutineExceptionHandler: 🎓 known

- Channels
- Send and Receive channels: 🎓 known
- Buffered channels: 🎓 known
- Conflated channels: 🎓 known

### Standard Library

- Collections
- List: 🖐️ used
- Set: 🎓 known
- Map: 🖐️ used
- Extension functions: 🎓 known
- Functional operations (map, filter, reduce): 🎓 known

- I/O Operations
- File operations: 🎓 known
- Input and Output streams: 🎓 known

- Regex
- Regular expressions in Kotlin: 🎓 known

### Android Development

- Views and Layouts
- XML layouts: 🖐️ used
- ViewGroup and View: 🖐️ used

- Activities and Fragments
- Activity lifecycle: 🎓 known
- Fragment lifecycle: 🎓 known

- RecyclerView
- Adapter and ViewHolder: 🎓 known
- ItemDecoration: 🎓 known

- ViewModel and LiveData
- ViewModel architecture: 🎓 known
- LiveData usage: 👂 heard

### Dependency Management

- Gradle
- Build scripts: 🎓 known
- Dependency configurations: 🎓 known
70 changes: 35 additions & 35 deletions Skills/Async.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,24 +3,24 @@
- Theory
- Event loop: 🎓 known
- try..catch: 🎓 known
- Non-blocking: 👂 heard
- Async I/O
- Thread pool
- Pattern Reactor
- CAS operations
- Non-blocking: 🎓 known
- Async I/O: : 🎓 known
- Thread pool: 🎓 known
- Pattern Reactor: 🎓 known
- CAS operations: 🎓 known
- epoll
- kqueue
- Completion ports
- Event ports
- Completion ports: 🎓 known
- Event ports: 👂 heard
- libuv
- Race conditions
- Dead locks
- Live locks
- Concurrent programming: 👂 heard
- Parallel programming: 👂 heard
- Actor Model
- Thread
- Process
- Race conditions: 🎓 known
- Dead locks: 🎓 known
- Live locks: 🎓 known
- Concurrent programming: 🎓 known
- Parallel programming: 🎓 known
- Actor Model: 🎓 known
- Thread: 👂 heard
- Process: 👂 heard
- Async contracts
- Callbacks: 🎓 known
- Callback-last-error-first: 🎓 known
Expand All @@ -33,31 +33,31 @@
- Async Generator: 🎓 known
- Async Iterator: 🎓 known
- Event: 🎓 known
- Coroutine
- Goroutine
- Signal
- Stream
- Chain of responsibility
- Middleware
- Locks
- Coroutine: 🎓 known
- Goroutine: 👂 heard
- Signal: 🎓 known
- Stream: 🎓 known
- Chain of responsibility: 👂 heard
- Middleware: 🎓 known
- Locks: 🎓 known
- Async adapters and utils
- callbackify: 🎓 known
- promisify: 🎓 known
- asyncify
- callbacks compose
- async compose
- asyncify: 🎓 known
- callbacks compose: 🎓 known
- async compose: 🎓 known
- Async abstractions interfaces
- EventEmitter: 🎓 known
- Observable/Observer: 🎓 known
- Readable
- Writable
- Transform
- Async Pool
- Async Queue
- Async Collector
- Semaphore
- Mutex
- Spin Lock
- Readable: 🎓 known
- Writable: 🎓 known
- Transform: 🎓 known
- Async Pool: 🎓 known
- Async Queue: 🎓 known
- Async Collector: 🎓 known
- Semaphore: 🎓 known
- Mutex: 👂 heard
- Spin Lock: 🎓 known
- JavaScript & Node.js specific
- Timers: 🎓 known
- setImmediate: 🎓 known
Expand All @@ -68,7 +68,7 @@
- Promise double resolve
- child_process
- worker_threads
- Atomics
- Atomics: 👂 heard
- High resolution clock
- Callback hell
- Promise hell
Expand Down
30 changes: 15 additions & 15 deletions Skills/NodeJS.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,16 +20,16 @@
- Dependencies: npm, node_modules: 🎓 known
- Dependencies: package.json and package lock: 👂 heard
- Module-based permissions model
- Isolation with modularity
- Dependency injection
- Isolation with modularity: 🎓 known
- Dependency injection: 🎓 known
- DI containers
- Coupling and cohesion
- Framework agnostic approach
- Environment
- Command line arguments: 🎓 known
- Node.js CLI: 👂 heard
- Process-based permissions
- Graceful shutdown
- Graceful shutdown: 🎓 known
- Clustering
- Watch filesystem changes with --watch
- Internal API
Expand Down Expand Up @@ -62,10 +62,10 @@
- Module node:zlib
- Application structure and architecture
- Isolation between layer: 🎓 known
- Multilayer approach
- Multilayer approach: 🎓 known
- Separation of concerns
- Inversion of control
- Dependency injection
- Dependency injection: 🎓 known
- GRASP
- SOLID
- GoF patterns
Expand Down Expand Up @@ -105,22 +105,22 @@
- DNS
- Fetch API
- IncomingMessage
- SQL injection
- SQL injection: 🖐️ used
- noDelay
- keep-alive
- ALPN
- SNI callback
- SSL certificates
- Protocol agnostic approach
- Technique and tools
- Native test runner
- Logging
- Application configuring
- Native test runner: 🎓 known
- Logging: 🎓 known
- Application configuring: 🎓 known
- Testing: 🎓 known
- CI/CD
- Readable
- Writable
- Transform
- CI/CD: 🎓 known
- Readable: 🎓 known
- Writable: 🎓 known
- Transform: 🎓 known
- back pressure
- Buffer
- Console: 🎓 known
Expand All @@ -130,8 +130,8 @@
- Availability
- Flexibility
- Data access
- Data access layer: 👂 heard
- Repository: 👂 heard
- Data access layer: : 🎓 known
- Repository: : 🎓 known
- Active record
- Query builder
- Object-Relational Mapping
Expand Down
80 changes: 40 additions & 40 deletions Skills/Paradigms.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,21 +5,21 @@
- Imperative programming: 🎓 known
- Structured programming: 🎓 known
- Non-structured programming: 👂 heard
- Functional programming: 👂 heard
- Functional programming: : 🎓 known
- Prototype-based programming: 🎓 known
- Object-oriented programming: 🎓 known
- Object-oriented programming: 🙋 explained
- Object-based programming: 🎓 known
- Generic programming: 🎓 known
- Concurrent computing: 👂 heard
- Asyncronous programming: 👂 heard
- Parallel programming: 👂 heard
- Concurrent computing: 🎓 known
- Asyncronous programming: 🎓 known
- Parallel programming: 🎓 known
- Reactive programming: 👂 heard
- FRP (Functional-reactive)
- Automata-based programming
- Domain-specific languages
- FRP (Functional-reactive): 👂 heard
- Automata-based programming: 👂 heard
- Domain-specific languages: 👂 heard
- Multi-paradigm programming: 🎓 known
- Metaprogramming
- Actor model: 👂 heard
- Metaprogramming: 👂 heard
- Actor model: 🎓 known
- OOP basics
- constructor: 🖐️ used
- new: 🖐️ used
Expand All @@ -31,36 +31,36 @@
- Private fields: 🎓 known
- Field declarations
- Inheritance: 🎓 known
- Parent class
- Polymorphism
- Abstract class
- Interface
- Encapsulation
- Hidden class
- Object form
- instance
- Introspection
- Reflection
- Parent class: 🖐️ used
- Polymorphism: 🖐️ used
- Abstract class: 🖐️ used
- Interface: 🖐️ used
- Encapsulation: 🎓 known
- Hidden class: 🎓 known
- Object form: 🎓 known
- instance: 🎓 known
- Introspection: 🎓 known
- Reflection: 🎓 known
- Patterns
- Singleton: 🎓 known
- Factory Method
- Abstract Factory
- Adapter
- Observer
- Strategy
- Facade
- Proxy
- Chain of Responsibility
- Command
- Iterator
- State
- Bridge
- Builder
- Factory Method: 🎓 known
- Abstract Factory: 🎓 known
- Adapter: 🎓 known
- Observer: 🎓 known
- Strategy: 🎓 known
- Facade: 🎓 known
- Proxy: 🎓 known
- Chain of Responsibility: 👂 heard
- Command: 🎓 known
- Iterator: 🎓 known
- State: 🎓 known
- Bridge: 🎓 known
- Builder: 🎓 known
- Prototype: 🎓 known
- Composite
- Decorator
- Flyweight
- Mediator
- Memento
- Template Method
- Visitor
- Composite: 👂 heard
- Decorator: 🎓 known
- Flyweight: 👂 heard
- Mediator: 👂 heard
- Memento: 👂 heard
- Template Method: 🎓 known
- Visitor: 🎓 known