Спасибо Вам, за то что вы делаете. Спасибо, что делитесь своим опытом и знаниями!
@artem_travlo Жыл бұрын
лучшее объяснение принципов GRASP
@akopvardanian9922 жыл бұрын
По мне лучшее объяснение принципов GRASP
@varanakonda3 жыл бұрын
Вы крут! Спасибо, что делитесь знаниями!
@vladyslavkarpenko93723 жыл бұрын
Дякую! Гарний матеріал з добрим поясненням. 👍
@vitaliizvarych64693 жыл бұрын
Спасибо за контент!)
@ВіленКупрієнко3 жыл бұрын
Класс! Хотим больше видео про проектирование и архитектуру
@TimurShemsedinov3 жыл бұрын
ну вот будет еще 8 лекций в этом курсе по GRASP, всего 10, а потом по SOLID пройдемся
@sandryeyev3 жыл бұрын
@@TimurShemsedinov ждем с нетерпением!
@artemeelemann3173 жыл бұрын
🔥
@Денис-в5д5ь3 жыл бұрын
@@TimurShemsedinov Просто супер!!! Тимур Гафарович, а когда будут лекции по SOLID?
@TimurShemsedinov3 жыл бұрын
@@Денис-в5д5ь В этом году запишу, пока ограничен по времени, пишу техстек Метархия, это важнее
@vitaliikukhar48643 жыл бұрын
Лайк не глядя!
@TimurShemsedinov3 жыл бұрын
Я надеюсь, ты посмотришь )
@vitaliikukhar48643 жыл бұрын
@@TimurShemsedinov Обязательно! Отличная тема!
@andrii_suprun_ua2 жыл бұрын
Дякую за мудрість!
@ziyadseykhanov39673 жыл бұрын
Интересное и познавательное продолжение нас ждёт. Спасибо за лекцию
@rstark3 жыл бұрын
Крутяк!
@colorofadog3 жыл бұрын
Топ!
@ОлегПетров-п4у3 жыл бұрын
Спасибо за уроки!
@Andrey-qf8uw3 жыл бұрын
дякую!
@404Negative2 ай бұрын
промисы в реальной жизни существуют. давай так, если промисов не существует, то с меня лайк!
@СмтрТб3 жыл бұрын
Круто. Спасибо большое
@realfootball3383 жыл бұрын
Refactoring GURU !!!!
@Nerossoul3 жыл бұрын
Очень полезно.
@yerassylaitkazy55063 жыл бұрын
Класс, спасибо
@c_h_u_z_h_a_k3 жыл бұрын
Отлично!
@DzhigurdaAnton3 жыл бұрын
мне нравится перевод Высокая сплочённость классов.
@Antonio-fm1sq2 жыл бұрын
Спасибо!
@thomasanderson31452 жыл бұрын
Интересно было бы послушать о кейсах, когда grasp идут в конфронтацию с solid и между собой
@TimurShemsedinov2 жыл бұрын
SOLID:SRP противоречит GRASP:Polymorphism, потому, что полиморфизм размывает ответственность, рассредоточивая ее по цепочке наследников, а SRP концентрирует. Вообще полипорфизм я признаю только на 1 уровень: интерфейс или абстрактный класс (что хуже) и от них 1 уровень классов наследников. Если больше, то можно запутаться и лучше делать композицию или агрегацию. Они даже друг-другу противоречат, например, GRASP: Indirection частично противоречит GRASP: High Cohesion, иногда нам нужно понизать Cohesion, а иногда повышать, зависит от конкретного случая и интуиции инженера. GRASP Information Expert частично противоречит GRASP: Pure Fabrication. Это все вопрос баланса.
@НикитаКононов-д9ц3 жыл бұрын
Какие более актуальные методологии вы имели ввиду в начале ролика, когда упоминали UML?
@HappyHippyHome3 жыл бұрын
Чистая выдумка - что вы имеете ввиду под сменой предметной области? Смена проекта?
@TimurShemsedinov3 жыл бұрын
В основном да, но бывает, что и в одном проекте очень сильно меняется предметная область, когда все переделывается или изменяются бизнес-процессы. В любом случае, чистая выдумка - это абстракция высшего порядка, она может переиспользоваться в разных проектах и гораздо менее подвержена изменениям предметной области. Бывакт, конечно, что нужно переходить от промисов к асинхронной композиции, но это не изменение самой чистой выдумки, а мы берем другую асинхронную абстракцию.
@661marker7 ай бұрын
показалось описание controller и indeirection (по которому в пример приводится контроллер из mvc)- пересекаются.
@vitaliizvarych64693 жыл бұрын
Подскажите когда будет продолжение?
@TimurShemsedinov3 жыл бұрын
Сегодня 2 лекция в 21:45
@user-QesOrwuMqN3 жыл бұрын
любые принципы/паттерны - должны иметь примеры кода, любые попытки описать их текстом - автоматическое переусложнение
@TimurShemsedinov3 жыл бұрын
Смотрим примеры и это только начало курса kzbin.info/www/bejne/mXSrfWZobsR0qZI но это не значит, что о концепциях нельзя говорить человеческим языком
@user-vlad20203 жыл бұрын
Тимур расскажите вы скорее всего герой ТС39 можно о ваших достижениях .
@TimurShemsedinov3 жыл бұрын
Совсем нет
@shokfake3 жыл бұрын
- Пойдешь ко мне в штат? - Кем? - Криэйтором. - Это творцом? Если перевести? - Творцы нам тут на х... не нужны, - сказал он. - Криэйтором, Вава, криэйтором.
@gccode10763 жыл бұрын
Кто может сказать почему лучше не применять в конструктуре класса, сразу метод валидации на входящие данные? Тогда как? Отдельным приватным методом в другом публичном методе? Тоже плохая идея. При учете что абстракция не протикает и зона отвественности класса ни нарушена. Валидация необщая а именно под эти данные. Смысла создавать класс под валидаци? Если придется поменять ее то тоже в одном классе.
@TimurShemsedinov3 жыл бұрын
Валидацию лучше всего вынести в отдельную библиотеку, а потом снабжать модель метаданными в декларативном стиле и по ним валидировать. Вызывать валидацию из контроллеров.
@gccode10763 жыл бұрын
@@TimurShemsedinov про библиотеку не подумал. Благодарю.
@vitiok783 жыл бұрын
Я вижу только одно адекватное решение всех этих проблем - это Typescript. А на фронтенде - Angular
@realfootball3383 жыл бұрын
14:20 - Это о DepencyInjection ? Когда инстанс класса становиться свойством в другом классе.
@TimurShemsedinov3 жыл бұрын
Если перндается в конструктор
@TimurShemsedinov3 жыл бұрын
Еще по теме - kzbin.info/www/bejne/qoCslHWor8qtgZI