
Artur
05.05.2017
21:23:08
Это 1 сущтносиь

Sergey
05.05.2017
21:23:18

Artur
05.05.2017
21:23:24
Но такая что курс может ещё не быть заяатым

Google

Artur
05.05.2017
21:23:38
Или быть на 30%готовым

Sergey
05.05.2017
21:23:48

Artur
05.05.2017
21:24:01
Как так
Анонс курса
Курс

Oleg
05.05.2017
21:24:24

Artur
05.05.2017
21:24:29
Анонс может бытьтекстовое поле
А может быть 10 видео

Sergey
05.05.2017
21:24:50
если 90% копипасты то точно не тот случай

Artur
05.05.2017
21:25:00
Не копипаста
Это программист не понял манагера

Sergey
05.05.2017
21:25:20
ты с ним работаешь что-ли?

Artur
05.05.2017
21:25:22
90% типичного не понимания

Google

Artur
05.05.2017
21:25:25
Нет
Боженька миловал :)

Sergey
05.05.2017
21:25:53
так что я не знаю о чем ты вещаешь

Artur
05.05.2017
21:26:08
И я про то

Oleg
05.05.2017
21:26:13
Мы теоретически имеем ситуацию когда анонс есть но курса нет еще мы через полгода выпустим это но пока незнаем как это будет )

Artur
05.05.2017
21:26:19
Она копирует что?

Sergey
05.05.2017
21:26:23
контент
контент менеджер же

Artur
05.05.2017
21:26:28
Ссылки текста описания
У анонса то же описание что и у курса

Sergey
05.05.2017
21:26:38
"кроме видосов и галочки"

Artur
05.05.2017
21:26:44
То же назвпние

Sergey
05.05.2017
21:26:47
почитай внимательно о чем человек пишет и не неси чушь

Artur
05.05.2017
21:27:06
Епт

Артур Евгеньевич
05.05.2017
21:27:09

Artur
05.05.2017
21:27:09
Да хорош
Сериалы показывают до того как сняли сезон

Sergey
05.05.2017
21:27:44
самое смешное что кто-то там про "не множ сущности" а потом начали множить сущности

Google

Artur
05.05.2017
21:28:02
Где
Кто
Это одна сущность курс

Sergey
05.05.2017
21:28:30
и? это просто "курс по PHP" например и тебе надо сделать анонс нового курса

Artur
05.05.2017
21:28:35
У него есть части/сезоны есть эпизоды/уроки
Делаешь курс
Без учебных материалов

Sergey
05.05.2017
21:29:07
и для анонсов не придумали ничего лучше чем "а давайте курс скопипасним". Контент менеджер пожаловался, его работу упростили. Все счастливы.

Artur
05.05.2017
21:29:11
Добавляет текст и видео
Это косяк

Oleg
05.05.2017
21:29:29

Oleg
05.05.2017
21:29:51
Но поразмыли как размещать анонсы неготовых курсов

Artur
05.05.2017
21:29:51

Артур Евгеньевич
05.05.2017
21:29:57

Sergey
05.05.2017
21:29:58

Артур Евгеньевич
05.05.2017
21:30:09
вьюхи тоже не будет т.к там json отдается

Artur
05.05.2017
21:30:13
Для каждой недели например

Артур Евгеньевич
05.05.2017
21:30:15
и я должен оставить его таким же

Sergey
05.05.2017
21:30:26

Google

Oleg
05.05.2017
21:30:30

Artur
05.05.2017
21:30:49
А зареинженерить контроллеры это норм

Oleg
05.05.2017
21:31:32

Artur
05.05.2017
21:31:37
Тем более в теории там нет логики

Артур Евгеньевич
05.05.2017
21:32:03
там к сожалению есть
я делал git blame
большинство кода написано в 2012 году

Artur
05.05.2017
21:32:25
Да не важн
Хотя то что ты назвал это блейм

Admin
ERROR: S client not available

Artur
05.05.2017
21:32:50
Тогда как в пхпсторме это аннотейт
Плюс к в копилку

Артур Евгеньевич
05.05.2017
21:33:05
там почему то для всеех полей обхекта сделаны гетеры и сетеры в которых нихера нет кроме присвоений/возвращений значений
и даже внутри класса они используются, как мне кажется эт лишнее

Artur
05.05.2017
21:33:31

Sergey
05.05.2017
21:34:21
сущность становится репрезентацией объекта курса
контроллеру до фени сущность это или нет
если они еще и с виду одинаковые - то пофигу от слова совсем

Google

Oleg
05.05.2017
21:35:20

Артур Евгеньевич
06.05.2017
10:09:59
Implementing Domain-Driven Design 1st Edition
by Vaughn Vernon читла кто нить?

Aleh
06.05.2017
10:12:15
да

Артур Евгеньевич
06.05.2017
10:18:36
Ну и как? Имею ввиду простоту восприятия

Aleh
06.05.2017
11:00:01
легче и практичнее Эванса
но не знаю как она без знаний из Эванса пойдет

Andrey
06.05.2017
13:04:07
Кто может нормально объяснить почему квадрат нельзя от прямоугольника наследовать? Стандартные объяснения знаю, но они меня не убеждают ни капли. Ну или объясните почему этот пример как пример дают )


Артур Евгеньевич
06.05.2017
13:07:49
вот более наглядный пример
lsp - допустим есть тип Птица и есть подтипы: орёл, цапля, воробей. Все птицы умеют летать и во всех местах программы вместо птицы можно будет подставить три эти реализации и всё будет работать.
Substitutability is a principle in object-oriented programming stating that, in a computer program, if S is a subtype of T, then objects of type T may be replaced with objects of type S (i.e. an object of type T may be substituted with any object of a subtype S) without altering any of the desirable properties of T (correctness, task performed, etc.). More formally, the Liskov substitution principle (LSP) is a particular definition of a subtyping relation, called (strong) behavioral subtyping,
Но есть ещё пингвин, который летать не умеет но он ЯВЛЯЕТСЯ птицей, добавляем пингвина в нашу программу и опять говорим всем птицам лететь, все выполняют команду, пингвин бросает UnsupportedOperationException. Или пингвин должен летать, т.к. он ЯВЛЯЕТСЯ птицей или он не должен быть птицей. Пингвин это нарушение lsp, пример из реального мира: java collection framework.


Andrey
06.05.2017
13:12:05
Тот же косяк, что и с квадратом. Кто сказал, что птица летает? Страус - птица, но он разве летает? Или курица? Да, курица может пролететь чуть-чуть, но ёжик тоже может, если ему помочь ))) здесь косяк в другом: вместо "летающие птицы" используют просто "птицы", но это не значит, что одним из родителей не может быть "птица". Разве не так?
На птицу навесили обязанность, которой она не должна обладать. Это не проблема птиц, это проблема того, кто решил заставить птиц летать

Артур Евгеньевич
06.05.2017
13:13:31
я не знаю как то объяснить, ты вероятно рано или поздно придешь к этому, тут смысл в том что лучше мыслить интерфейсами а не классами, как мне кажется

f4rt~
06.05.2017
13:14:03
Тот же косяк, что и с квадратом. Кто сказал, что птица летает? Страус - птица, но он разве летает? Или курица? Да, курица может пролететь чуть-чуть, но ёжик тоже может, если ему помочь ))) здесь косяк в другом: вместо "летающие птицы" используют просто "птицы", но это не значит, что одним из родителей не может быть "птица". Разве не так?
в том то и смысл The Liskov Substitution Principle,если я не ошибаюсь, ты должен иметь возможность подменить экземпляр на его подтип без изменения правильности выполнения программы

Sergey
06.05.2017
13:14:27

Aleh
06.05.2017
13:14:37
примеры из реального мира не очень, но это скорее показывает развитие системы. До того, как мы узнали про пингвинов все птицы летали
и поэтому интерфейс собственно это и описывал
нет смысла в "летающих птицах", когда все птицы летают

Andrey
06.05.2017
13:15:29
Интерфейсы/классы по сути одно и тоже, в некоторых языках нет интерфейсов. Через интерфейсы получим те же косяки, т.е. проблема не в этом

Sergey
06.05.2017
13:16:18

Andrey
06.05.2017
13:16:24

Sergey
06.05.2017
13:16:44
что бы можно было делать "птиц" и что они умеют как композицию

Aleh
06.05.2017
13:17:39