
Mykola
21.03.2018
10:54:07
только голову заморочите себе бессмысленной чепухой

Sergey
21.03.2018
10:55:01

Mykola
21.03.2018
10:55:26
там нечего переписывать

Sergey
21.03.2018
10:55:56
там нечего переписывать
ну да.... как и в десятках статей по инкапсуляции что я прочитал которые не объясняют очевидную связь между инкапсуляцией и связанностью)

Google

Mykola
21.03.2018
10:56:07
ну, разве что ты хочешь где-то процентов на 80 переписать)

Sergey
21.03.2018
10:56:19
и в итоге у людей класс на 40 полей с геттерами и сеттерами это инкапсуляция)
к слову - никто не подскажет источник этого крутого тэзиса что основные принципы ООП это инкапсуляция, полиморфизм и наследование?

Mykola
21.03.2018
10:58:25
это сложно
я как-то находил, но забыл
попробуй через англицкую викупедию

Bohdan
21.03.2018
10:59:42
то бишь, он построил три сферы применения наследования, которые не должны пересекаться
1. тупо шейринг кода - онтологические наследование, специализация
2. наследник = подтип, LSP, вроде как еще отсылка к утиной типизации
3. наследник просто ужесточает контракт, определяемый родителем
так?

Evgenij
21.03.2018
11:00:32

Bohdan
21.03.2018
11:01:03
в англ источниках сейчас вижу четыре: тройка + абстракция

Mykola
21.03.2018
11:26:50
1. чтоб указать связь понятий (типа онтология)
2. чтоб удовлетворять полиморфизм
3. чтоб шарить код
это днище утверждать, что все эти подходы не имеют ничего общего

Google

Bohdan
21.03.2018
11:31:21
тогда к чему относится кусок про контракт?

Ilia
21.03.2018
11:32:54

Mykola
21.03.2018
11:45:15
то у него трейты, то еще какая ерунда
@fes0r , когда будешь писать про наследование, не забудь упомянуть, что оно не является "наследованием" на самом деле

Sergey
21.03.2018
11:47:48

Mykola
21.03.2018
11:48:29
ну шо накидывать... наследование - это такая штука, которая возникает между сущностями, а не между типами
типа ты можешь чо-то унаследовать от родителей
но говорить "я унаследовал нос от класса людей" это не совсем правильно
тут надо разобрать какие-то другие подходящие по смыслу вещи

Bohdan
21.03.2018
11:51:50

Mykola
21.03.2018
11:51:51
как то "классификация", "абстракция", "конкретизация", "прототипирование"

Bohdan
21.03.2018
11:52:04
если уж проводить аналогии с реальным наследованием

Sergey
21.03.2018
11:52:36
там как раз таки сущности

Ihor
21.03.2018
11:54:12

Bohdan
21.03.2018
11:54:32

Ihor
21.03.2018
11:55:09
да я в последнее время не всё читаю...
но я так смотрю, особо не используют этот принцип...

Sergey
21.03.2018
12:00:27

Google

Uiiuviiw
21.03.2018
14:23:52
а разве типы и наследование на одном уровне находятся чтобы о них говорить?
наследование же механизм, типы это свойства программы. естть теория типов но это опять о другом

Артур Евгеньевич
21.03.2018
14:26:43

Mykola
21.03.2018
14:27:26
наследование - это способ организовать полиморфизм в мире, где типы определяются набором свойств

Uiiuviiw
21.03.2018
14:28:00
типы предметной области это проектирование, а не типы из теории типов

Mykola
21.03.2018
14:28:26

Sergey
21.03.2018
14:29:11

Mykola
21.03.2018
14:30:51
многие программисты, особенно опытные, почему-то приходят к мнению, что программирование и реальный мир имеют мало общего
не надо так
это первый шаг к говнокоду
какой смысл быть опытным говнокодером?
пример: термин "наследование"
именно тот факт, что наследование в реальном мире является совсем не тем, чем его привыкли видеть в ооп, и порождает кучу непоняток
при этом даже альтернативаная терминология развивается: не родитель, а "базовый" класс, и т.д.
а все потому, что термин "наследование" родился исторически, и значально имел совсем другой контекст

Sergey
21.03.2018
14:39:10
https://softwareengineering.stackexchange.com/questions/142327/what-did-they-call-object-oriented-programming-before-alan-kay-invented-the-term
> I didn't like the way Simula I or Simula 67 did inheritance (though I thought Nygaard and Dahl were just tremendous thinkers and designers). So I decided to leave out inheritance as a built-in feature until I understood it better.

Uiiuviiw
21.03.2018
14:49:02
так правильно базовый класс а не родитель?

Sergey
21.03.2018
14:49:47
parent это не родитель, это предок в иерархии типов

Google

Uiiuviiw
21.03.2018
14:53:09
мне больше по душе вообще не употреблять родитель.как то завелось что родитель дети из объектного мира, а не типов
и я не так выразился. так правильно базовый класс!а не родитель.?

Sergey
21.03.2018
14:57:38
да, правильнее базовый класс если у тебя базовые классы. Там где прототипы правильнее прототипы.
а вообще хер знает)

Arky
21.03.2018
15:09:12

Sergey
21.03.2018
15:10:39
а суперкласс?)0
а так ли важно имя?) понимаешь ли ты что за этими названиями стоит?)
я вот признаюсь что не доконца понимаю) и мне интересны мысли @Lividgreen на этот счет
это к слову одна из причин по которой я стараюсь не юзать наследование.... я просто хз зачем оно надо....

Arky
21.03.2018
15:12:10

Arthur
21.03.2018
15:13:16
кстати, почему когда наследуешь класс, то пишешь extends, а не к примеру inherite
подмена понятий
типа мы расширяем возможности базового класса, если extends

Anton
21.03.2018
15:14:40

Sergey
21.03.2018
15:15:05

f4rt~
21.03.2018
15:18:01

Adel
21.03.2018
15:18:04
это не копипаст ли ларки?
хотя я уверен чтонаписано лучше чем там :)

Sergey
21.03.2018
15:24:16
у меня основная сейчас идея это "валидация данных до мэппинга а мэппинг как хочешь так и делай".

Hell
21.03.2018
20:08:18
http://www.yegor256.com/2014/12/01/orm-offensive-anti-pattern.html

Google

Hell
21.03.2018
20:08:57
не читал. но нужно ли осуждать то, что написал этот фанатик

Adel
21.03.2018
20:09:02
ой хватит. обсуждали это здесь уже. и не раз

Hell
21.03.2018
20:09:13

Adel
21.03.2018
20:10:06
он "изобрел" Transaction Script + декоратор и считает это true OOP...

Hell
21.03.2018
20:12:51
а что на самом деле является True OOP?

Adel
21.03.2018
20:13:41
судя по последним трендам этого чатика - Actor model )

Sergey
21.03.2018
20:24:12
а что на самом деле является True OOP?
https://softwareengineering.stackexchange.com/questions/142327/what-did-they-call-object-oriented-programming-before-alan-kay-invented-the-term - знакомься
далее читай про actor model)

pew
22.03.2018
05:28:58
упс
тут убивают инакомыслящих?

Sergey
22.03.2018
05:37:13

Ilia
22.03.2018
07:21:58