
Evgeniy
10.01.2017
17:49:48
и что одну сущность можно передавать

Aleh
10.01.2017
17:50:13
да и какая разница

Google

Aleh
10.01.2017
17:50:30
суть не в этом же

Evgeniy
10.01.2017
17:50:40
в том что независишь от бд
представил проект где каждый день меняется бд

Sergey
10.01.2017
17:50:58
так же как и с хибернейтом, пока ты не зависишь от БД ты не зависишь от БД)

Evgeniy
10.01.2017
17:51:23
вопрос в том надо ли это ?

Sergey
10.01.2017
17:51:33

Evgeniy
10.01.2017
17:51:35
приложению прямо 100% не зависить

Sergey
10.01.2017
17:51:44

Aleh
10.01.2017
17:51:49
суть не втом, что можно менять

Sergey
10.01.2017
17:51:52
суть в том что бы бизнес логика не зависила
а не приложение

Evgeniy
10.01.2017
17:51:58
да

Google

Sergey
10.01.2017
17:52:03
и это достигается

Aleh
10.01.2017
17:52:03
а в том, что можно логику и работу с хранилищем хранить отдельно
а значит и тестировать

Evgeniy
10.01.2017
17:52:07
doctrine Это magic mapper

Aleh
10.01.2017
17:52:18
и в случае нагрузок оптимизировать независимо

Evgeniy
10.01.2017
17:52:18
я знаю зачем доктрина)
и hibernate

Sergey
10.01.2017
17:52:24
в 2 словах
если больше двух слов - то уже сомнительно

finkel
10.01.2017
17:52:50

Evgeniy
10.01.2017
17:52:50
object relation mapper
там 3 слова

Sergey
10.01.2017
17:53:06
persistence ignorance
вот эти два слова

Evgeniy
10.01.2017
17:53:26
в том чтобы данные хранящиеся в реляционном виде (БД) преобразовывать в объектный и наоборот

Sergey
10.01.2017
17:53:51

Aleh
10.01.2017
17:54:03
или active record )

Google

Sergey
10.01.2017
17:54:16
завернуть что бы получился row data gateway и норм

Evgeniy
10.01.2017
17:54:21
ar сильно завязано на структуру бд

Sergey
10.01.2017
17:54:34
как раз таки ей и положено

Evgeniy
10.01.2017
17:54:48
модель зависящая от хранения

Sergey
10.01.2017
17:54:58
ты можешь бизнес логику вынести в доменную сущность которая будет хранить данные внутри ar моделек

Evgeniy
10.01.2017
17:55:32
ок )

Sergey
10.01.2017
17:55:36
class User
{
/**
* @var UserDataModel
*/
private $userData;
}
вот о чем я

Aleh
10.01.2017
17:55:45
но просто вроде все ок с таким подходом и хаскель тогда один из самых ОО языков программирования)

Sergey
10.01.2017
17:56:24

Evgeniy
10.01.2017
17:57:00
вообщем ООП головного мозга наверно также плохо как и ФП головного мозга и подобного)

Sergey
10.01.2017
17:57:02
тип тренд ФП с монадами и т.д. это лишь повторение того что подразумевалось под ооп
что бы понять предпосылки появления всего этого булшита
то самое которое goto considered harmful

Evgeniy
10.01.2017
17:58:21
что именно Дэйкстры почитать

Google

Evgeniy
10.01.2017
17:58:31
мне нравиться как он пишет он норм мужик)

Sergey
10.01.2017
17:58:35
http://david.tribble.com/text/goto.html
вот тут с пояснениями и разбором мыслей

Evgeniy
10.01.2017
18:00:01
это про ненависть к goto ?

Aleh
10.01.2017
18:00:40
это объяснение проблемы с goto
про сложность верификации такой программы

Evgeniy
10.01.2017
18:01:33
у меня где то перевод избранных статей его лежит

Sergey
10.01.2017
18:01:41
это про ненависть к goto ?
Here Dijkstra observes that humans are better at visualizing static relationships than dynamic relationships. Thus, he argues, we should minimize the difference between the two when expressed as program code, so that the dynamic (nonconstant) aspects of the program are evident in the structure of the source code itself.

Evgeniy
10.01.2017
18:01:46
даже поставлено todo чтобы их прочитать как время будет)

Admin
ERROR: S client not available

Aleh
10.01.2017
18:01:51

Sergey
10.01.2017
18:01:55
вот например одна из основных мыслей которые заставили меня сильно много думать

Aleh
10.01.2017
18:38:18

finkel
10.01.2017
19:17:20

Aleh
10.01.2017
19:19:13

finkel
10.01.2017
19:21:19

Aleh
10.01.2017
19:26:55

finkel
10.01.2017
19:29:35
И почему так?
ну я не говорю, что плохо это читать, просто интересуюсь, какой с этого профит? Скажем так, меня это удивило.
А плохо, никогда не думал на эту тему, но наверно потому, что несёт путаницу.

Aleh
10.01.2017
19:35:59
Их понимать надо для того, чтобы яснее понимать принципы, когда что-то стоит делать, а когда не стоит

Google

Andrey
10.01.2017
19:43:07

finkel
10.01.2017
19:47:20

Sergey
10.01.2017
20:49:52
ну тоесть 90% информации описывает почему вообще такие штуки не очень хорошо. Не конкретно goto а почему вообще нам надо писать код по другому. ПОнимание этого позволит тебе лучше понять себя.

Evgeniy
10.01.2017
20:56:47
а можно просто писать на битриксе и не забивать голову всякими умными словами

Sergey
10.01.2017
20:57:38

da horsie
11.01.2017
06:44:22
насколько бредовой выглядит идея сделать все модели immutable?
а сеттеры заменить на что-то вроде withProperty('new value'): self
@fes0r Сергей ^

Sergei
11.01.2017
07:53:03

da horsie
11.01.2017
07:54:01
не знаю. пытаюсь понять возможные последствия для архитектуры

Aleh
11.01.2017
07:54:20
Сеттеры или их замена плохо)

da horsie
11.01.2017
07:55:02
я почитал про CQRS у Фаулера
вроде как это связанные вещи

Aleh
11.01.2017
07:55:12
Именно так и выглядят ValueObjects

da horsie
11.01.2017
07:55:15
но все равно не понятн

Evgeniy
11.01.2017
08:00:35
имхо это может дать плюсы в много поточной среде

Sergei
11.01.2017
08:00:43
я почитал про CQRS у Фаулера
в моем понимании оно про то, что в некоторых случаях (ээээ "доменах предметной области") отображение/чтение и изменение данных происходят существенно разным образом. в С++ к примеру у каждого класса потенциально имеется ДВА интерфейса - для чтения и для записи.

Evgeniy
11.01.2017
08:00:47
где хорошо чтобы все было имутабельно
в случае с пхп большого профита врятли стоит ожидать

da horsie
11.01.2017
08:01:15

Evgeniy
11.01.2017
08:01:26
я написал имхо

Sergei
11.01.2017
08:01:28
с точки зрения "модель только для чтения" - это immutable модель