
Aleksey
19.05.2018
11:12:21
http://php.net/manual/ru/functions.arguments.php#functions.arguments.type-declaration

Aleksey
19.05.2018
11:12:48
Какую магию поведения?
Например есть форма, со сложной бизнесс логикой, которая должна манипулировать несколькими моделями и предоставлять интерфейс редактирования сразу нескольких моделей. (вот хочет заказчик именно такой интерфейс) Если какая либо из моделей не задана, форма должна будет создать ее во время сохранения, если задана (передается через $_GET), то должна инициализироваться в контроллере.
прозрачно для контроллера это делается через сеттер

R
19.05.2018
11:13:39
насколько я помню, основной плюс за сеттеры/геттеры в том, что свойство объекта нельзя поменять напрямую, что вроде как безопасней

Google

Aleksey
19.05.2018
11:13:44
http://php.net/manual/ru/functions.returning-values.php#functions.returning-values.type-declaration

R
19.05.2018
11:14:24
это защищает от кривой архитектуры, когда неопытный разраб пытается кривыми руками залезть туда, куда не нужно

Aleksey
19.05.2018
11:14:24

Like
19.05.2018
11:14:45
> Сначала научи меня свойстам тип задавать

Aleksey
19.05.2018
11:15:28
вот тип возвращаемого значения
пока что необязательно и при инициализации нет возможности явно задать. но php и не тягается с java или другим языком со строгой типизпцией

Like
19.05.2018
11:15:31
Я 2 раза тебе четко написал
> Задать тип свойству
Мы ведь о сеттерах говорили, нет?
Или ты думаешь, что если у тебя чел в переменную может засунуть что угодно, а в геттере стоит :int. то это не твой косяк?

Google

Aleksey
19.05.2018
11:18:07
> Сначала научи меня свойстам тип задавать
я сказал что появляеются возможности строгой типизации.
function getQwert() : string {}
вот пример
а ты чего хотел то вообще??
у меня такое ощущение, что ты за контекстом беседы не следишь и хз как домысливаешь за других их слова...
реально непонятно, что ты доказать то хочешь??? что геттеры и сеттеры это исчадье ада или еще что-то??

Like
19.05.2018
11:18:07
Это crud

Aleksey
19.05.2018
11:18:29

Like
19.05.2018
11:18:30
Если ты все таки думал про геттеры
> Или ты думаешь, что если у тебя чел в переменную может засунуть что угодно, а в геттере стоит :int. то это не твой косяк?
На, держи
Я пишу на 7ой пыхе уже год, я точно научился в этот дерьмовейший type hinting
Требования к внешнему виду - бизнес логика?
У тебя идет обновление данных у записи
Есть новости
Человек сразу обновляет данные у поста, немного сеошку затронул и теги - в каком месте это бизнес логика? И в каком месте это сложно?

Aleksey
19.05.2018
11:20:06
внутри модели бизнесс логика, она обусловлена ТЗ и требованиеем заказкика к GUI

Like
19.05.2018
11:20:24
Ты просто обновляешь данные у записей в бд
Успокойся уже...

Aleksey
19.05.2018
11:22:22
ты просто реализуешь поведение внутри сеттера, так чтобы те, кто будут его пользовать не знали как устроено внутри. Ты успокойся.

Aleksey
19.05.2018
11:22:40

Like
19.05.2018
11:22:48

Google

R
19.05.2018
11:22:54
а кто за что топит? я что-то потерял ход мысли

Like
19.05.2018
11:22:56
Все очень плохо

Aleksey
19.05.2018
11:23:01

Like
19.05.2018
11:23:08
Что от этого изменится?
Мы сейчас вроде как в контексте пхп говорим

Aleksey
19.05.2018
11:23:51
вы начали с того, что privat свойства + сеттеры это не инкапсуляция.

Like
19.05.2018
11:24:05
Читай внимательнее

Aleksey
19.05.2018
11:24:36
А тебе какое дело?
я пытаюсь понять твою логику. ты очень странно связал вместе геттеры и сеттеры со строгой типизацией - я пытаюсь обдумать почему??? для этого хочу понять с каким языком со строгой типизацией ты работал... вот как-то так.

Like
19.05.2018
11:24:55

Aleksey
19.05.2018
11:26:35
Это не основа икнапсуляции
ладно, может не основа. и может даже не одна из основ. поведай мне, что основа инкапсуляции? мне чисто для саморазвития))

Like
19.05.2018
11:26:54

Aleksey
19.05.2018
11:29:43
Зачем мне разрушать твой манямирок?)
да не переживай за мой мирок. ты сделаешь доброе дело. позволишь на взглянуть на этот вопрос с другой точки зрения. одну и тот же момент можно же по разному объяснить.

Aleksey
19.05.2018
11:30:00

Aleksey
19.05.2018
11:30:07
вот я взгляну на это твоими глазами

R
19.05.2018
11:30:15
в сеттере, помимо присвоения, можно еще что-то полезное выполнить

Like
19.05.2018
11:31:12
Я вроде как не заявлял о том, что сеттеры прям всегда херня не нужная
Но они в большинстве случаев не нужны

Google

Like
19.05.2018
11:31:21
Абсолютно

Aleksey
19.05.2018
11:32:54

R
19.05.2018
11:33:17

Like
19.05.2018
11:33:49

Aleksey
19.05.2018
11:34:08

Like
19.05.2018
11:34:14
Покажи мне юзкейс

Aleksey
19.05.2018
11:34:21
или я должен для тебя обобщить?

Like
19.05.2018
11:34:23
Я не пишу на йии

Aleksey
19.05.2018
11:34:43

Like
19.05.2018
11:34:49

R
19.05.2018
11:35:09
проверяется тип, проверяются свойства (безопасные/не безопасные)

Like
19.05.2018
11:35:34

R
19.05.2018
11:35:43
проверяются свойства (безопасные/не безопасные)
это уже валидация данных

Aleksey
19.05.2018
11:36:04
Ясн
бро, ты своей трактовкой основ инкапсуляции может все же поделишься??

Like
19.05.2018
11:36:05

Aleksey
19.05.2018
11:36:07

Like
19.05.2018
11:36:14

Google

Like
19.05.2018
11:36:20
Тут у чела манямирок еще хуже
Не йиист в чате по йии

R
19.05.2018
11:37:02
это он про массив

Like
19.05.2018
11:37:03
Это fluent inteface?

Aleksey
19.05.2018
11:37:06

Like
19.05.2018
11:37:15

R
19.05.2018
11:38:09
а кстати, массив разложить по свойствам, без сеттера придется больше кода писать

Like
19.05.2018
11:38:38
@kingomost у тебя класс должен говорить что он умеет, но не говорить как он это умеет

Aleksey
19.05.2018
11:38:58

Like
19.05.2018
11:39:07
?

R
19.05.2018
11:39:26
ну вот сегодня чел спрашивал, как одну модель в другую перегнать
чем не юзкейс?

Like
19.05.2018
11:39:50

Aleksey
19.05.2018
11:40:13

R
19.05.2018
11:40:15
а массив fromArray?

Like
19.05.2018
11:40:26