Топовий відос. Ми в свій час підсіли на Actions (не на пакет, а на підхід) і дуже раді що обрали це рішення. Близько 5 років проєкт уже працює на Actions декілька разів поміняв напрямок і бізнес повністю змінився, але архітектура усе пережувала і гарно себе почуває
Вітаю. У наступному відео вже є перші екшени. Не стандартні, але все ж. Скоро змонтую відео з їх тестами. А в майбутньому їх буде дуже багато, кожен метод api, команда, або якась дія - action. Якщо все ок, то встигну ними набриднути :)
А ось мені не дуже заходить концепеція екшинів. Я декілька проектів робив екшинами. (Без пакету але концепцією) Так - це круто! Маленький клас, відповідає за щось одне, не дублюється - все ок. Але коли проект хоча б середнього розміру - це стільки багато класів що мені важче щось знайти (згадати) аніж мати один сервісний шар і шукати метод в класі (умовно) Але підхід - цікавий і часто піднімається на різних конференціях.
Цілком можливо що особисто у мене хибне ставлення до сервісів. Аутсорс славиться "якістю" коду і сервіси тут не виняток. Екшени ж дозволили реалізувати проєкт кодом якого можна хвалитися, в умовах аутсорсу. Глобально, використовувати чи ні будь-який підхід це питання до команди. Якщо архітектурні рішення однорідні й всі їх виконують - все буде ок.
Приклад. Я можу видалити будь-який коментар на каналі - дія. А ще можу забанити користувача на каналі - це також дія. А ще можу видалити коментар та забанити користувача однією кнопкою - дія в якій викликається інша дія (ну або дія в якій викликаються 2 дії). Ну або ж приклад з більшості інтернет-магазинів - зробити замовлення та створити акаунт. Один апі запит, 2 різні дії які також працюють окремо один від одного.
@@butthurtdeveloper8578 Добре. Давайте візьмемо за приклад зробити замовлення та створення аккаунту. Ви пишете про один апі запит. Ви маєте на увазі таке ? 1. робиться апі запит на створення замовлення. 2. Action створення замовлення створює його і тут же уточнює чи зареєстрований акаунт. Якщо ні, то він викликає Action створення акаунта. 3. Action створення аккаунта створює його. 4. Після цього Action створення замовлення надає відповідь користувачу. Так ?
@oldodyn Даруйте, ютуб не сповістив про повідомлення. Якщо не вдаватися в деталі, то так. І це же екшен реєстрації, працює як окремий API метод (asController) а в прикладі замовлень він працює як об'єкт (AsObject). Це прямо практичний приклад, але сприймайте AsObject як публічний метод сервісу. Він виконує якусь одну дію й описаний в окремому файлі. Ми її можемо ізолювати, протестувати та викликати де нам треба (або мокати в тестах для ізоляції тесту). AsObject не краща назва яка заплутує, але такий вибір автора пакета.