Класс! Хотим больше видео про проектирование и архитектуру
@TimurShemsedinov
3 жыл бұрын
ну вот будет еще 8 лекций в этом курсе по GRASP, всего 10, а потом по SOLID пройдемся
@sandryeyev
3 жыл бұрын
@@TimurShemsedinov ждем с нетерпением!
@artemeelemann317
3 жыл бұрын
🔥
@user-vk4si1oz7w
3 жыл бұрын
@@TimurShemsedinov Просто супер!!! Тимур Гафарович, а когда будут лекции по SOLID?
@TimurShemsedinov
3 жыл бұрын
@@user-vk4si1oz7w В этом году запишу, пока ограничен по времени, пишу техстек Метархия, это важнее
@user-qv3di5nk9c
3 жыл бұрын
Круто. Спасибо большое
@colorofadog
3 жыл бұрын
Топ!
@rstark
3 жыл бұрын
Крутяк!
@yerassylaitkazy5506
3 жыл бұрын
Класс, спасибо
@vitaliikukhar4864
3 жыл бұрын
Лайк не глядя!
@TimurShemsedinov
3 жыл бұрын
Я надеюсь, ты посмотришь )
@vitaliikukhar4864
3 жыл бұрын
@@TimurShemsedinov Обязательно! Отличная тема!
@Nerossoul
3 жыл бұрын
Очень полезно.
@c_h_u_z_h_a_k
3 жыл бұрын
Отлично!
@Andrey-qf8uw
3 жыл бұрын
дякую!
@DzhigurdaAnton
3 жыл бұрын
мне нравится перевод Высокая сплочённость классов.
@Antonio-fm1sq
2 жыл бұрын
Спасибо!
@realfootball338
3 жыл бұрын
Refactoring GURU !!!!
@user-de2nf2ui1p
3 жыл бұрын
Какие более актуальные методологии вы имели ввиду в начале ролика, когда упоминали UML?
@thomasanderson3145
2 жыл бұрын
Интересно было бы послушать о кейсах, когда grasp идут в конфронтацию с solid и между собой
@TimurShemsedinov
2 жыл бұрын
SOLID:SRP противоречит GRASP:Polymorphism, потому, что полиморфизм размывает ответственность, рассредоточивая ее по цепочке наследников, а SRP концентрирует. Вообще полипорфизм я признаю только на 1 уровень: интерфейс или абстрактный класс (что хуже) и от них 1 уровень классов наследников. Если больше, то можно запутаться и лучше делать композицию или агрегацию. Они даже друг-другу противоречат, например, GRASP: Indirection частично противоречит GRASP: High Cohesion, иногда нам нужно понизать Cohesion, а иногда повышать, зависит от конкретного случая и интуиции инженера. GRASP Information Expert частично противоречит GRASP: Pure Fabrication. Это все вопрос баланса.
@user-tq2gx3qd5z
3 жыл бұрын
Тимур расскажите вы скорее всего герой ТС39 можно о ваших достижениях .
@TimurShemsedinov
3 жыл бұрын
Совсем нет
@HappyHippyHome
3 жыл бұрын
Чистая выдумка - что вы имеете ввиду под сменой предметной области? Смена проекта?
@TimurShemsedinov
3 жыл бұрын
В основном да, но бывает, что и в одном проекте очень сильно меняется предметная область, когда все переделывается или изменяются бизнес-процессы. В любом случае, чистая выдумка - это абстракция высшего порядка, она может переиспользоваться в разных проектах и гораздо менее подвержена изменениям предметной области. Бывакт, конечно, что нужно переходить от промисов к асинхронной композиции, но это не изменение самой чистой выдумки, а мы берем другую асинхронную абстракцию.
@661marker
3 ай бұрын
показалось описание controller и indeirection (по которому в пример приводится контроллер из mvc)- пересекаются.
@user-QesOrwuMqN
3 жыл бұрын
любые принципы/паттерны - должны иметь примеры кода, любые попытки описать их текстом - автоматическое переусложнение
@TimurShemsedinov
3 жыл бұрын
Смотрим примеры и это только начало курса kzitem.info/news/bejne/xHl-smdocpFypmU но это не значит, что о концепциях нельзя говорить человеческим языком
@vitaliizvarych6469
3 жыл бұрын
Подскажите когда будет продолжение?
@TimurShemsedinov
3 жыл бұрын
Сегодня 2 лекция в 21:45
@realfootball338
3 жыл бұрын
14:20 - Это о DepencyInjection ? Когда инстанс класса становиться свойством в другом классе.
@TimurShemsedinov
3 жыл бұрын
Если перндается в конструктор
@TimurShemsedinov
3 жыл бұрын
Еще по теме - kzitem.info/news/bejne/1YV_yXaos5erfmU
@vitiok78
3 жыл бұрын
Я вижу только одно адекватное решение всех этих проблем - это Typescript. А на фронтенде - Angular
@gccode1076
3 жыл бұрын
Кто может сказать почему лучше не применять в конструктуре класса, сразу метод валидации на входящие данные? Тогда как? Отдельным приватным методом в другом публичном методе? Тоже плохая идея. При учете что абстракция не протикает и зона отвественности класса ни нарушена. Валидация необщая а именно под эти данные. Смысла создавать класс под валидаци? Если придется поменять ее то тоже в одном классе.
@TimurShemsedinov
3 жыл бұрын
Валидацию лучше всего вынести в отдельную библиотеку, а потом снабжать модель метаданными в декларативном стиле и по ним валидировать. Вызывать валидацию из контроллеров.
@gccode1076
3 жыл бұрын
@@TimurShemsedinov про библиотеку не подумал. Благодарю.
@shokfake
3 жыл бұрын
- Пойдешь ко мне в штат? - Кем? - Криэйтором. - Это творцом? Если перевести? - Творцы нам тут на х... не нужны, - сказал он. - Криэйтором, Вава, криэйтором.
Пікірлер: 57