Мови програмування
Kotlin (Prod)
Kotlin є моєю основною мовою з 2020 року. Те, що починалося як альтернатива Java для розробки Android, швидко стало моїм стандартом для всього, від серверних служб до мультиплатформних проєктів. Навіть веб-сайт, який ви зараз переглядаєте, був створений за її допомогою. Кожен проєкт, над яким я працював з 2021 року, використовував гнучкість та лаконічність Kotlin.
Стек
- kotlinx.coroutines (Flow тощо), RxJava (спочатку переважно).
- kotlinx.serialization, Gson (спочатку переважно), Moshi.
- Ktor, OkHttp, Retrofit, Fuel, Okio (спочатку переважно)
- RSocket, gRPC, Rest
Android
Архітектури
Дизайн
- XML (з ViewBinding / DataBinding)
- Jetpack Compose (Material2 + Material3) (переважно)
- Бібліотеки Accompanist
Бібліотеки
- Room, SQLDelight
- Picasso, Glide, Coil
- Firebase
- Admob
- Android Lifecycle (ViewModel тощо)
Ви можете переглянути використання деяких бібліотек тут.
Мультиплатформа
Java
Java займає місце в моїй основі, хоча зараз я її не так часто використовую. Мій останній великий проєкт був для університету – Telegram-бот. До цього я використовував її для різних проєктів, таких як Sketchcode.
Хоча Kotlin краще відповідає моїм потребам, я все ще стежу за оновленнями Java – це як старий друг, якого нечасто бачиш, але ніколи не втрачаєш зв'язку.
Те саме, що й з досвідом Kotlin. Я використовував її раніше.
PHP
Моє перше програмістське кохання. PHP був тим, як я відкрив радість створення речей. Хоча я пішов далі, я поважаю, як розвивалася мова. Вона забезпечувала мій перший великий проєкт, Sketchcode, і дала мені безцінний досвід в оптимізації та масштабованості.
Стек:
- Laravel
- Json, XML
- тощо
Найчастіше я використовував чистий PHP, пишучи нескладні CRUD.
Python
Я лише поверхнево знайомий з Python – пишу сценарії, створюю невеликі проєкти та допомагаю другу з коледжу освоїти основи. Цікавий факт: цей друг тепер клянеться Kotlin, завдяки мені.
TypeScript (Prod)
Новіше доповнення до мого інструментарію, TypeScript з'явився під час rrpc, проєкту для генерації RPC-сервісів за допомогою RSocket.
Крім того, зараз я використовую його щодня для своїх робочих завдань.