
Виктор
13.10.2017
21:18:32
да - это чат в телеграмме

Sergey
13.10.2017
21:18:43

Виктор
13.10.2017
21:18:44
посмотри вебхук что присылает - там увидишь такой объект

Sergey
13.10.2017
21:18:53
сек

Google

Виктор
13.10.2017
21:18:54
это напиши вопрос Дурову и его команде
создай чат с ботом и напиши что-то боту
вот там будет вместо имени группы ФИО и логин

Alan
13.10.2017
21:19:40
тогда мб это не чат
а чатбот )

Sergey
13.10.2017
21:19:51

Виктор
13.10.2017
21:20:02
Ну логично:)

Sergey
13.10.2017
21:20:05
а потому в целом все корректно, надо придерживаться устоявшейся терминологии

Vlad
13.10.2017
21:20:19
бот в телеге создается за 2 клика мышкой так то

Виктор
13.10.2017
21:20:33
Блин

Sergey
13.10.2017
21:20:39
дока открывается быстрее

Google

Виктор
13.10.2017
21:20:47
В вебхуке есть в ответе узел chat - я честно не помню что там в доке
я с ответами работал
мне этого было достаточно

Sergey
13.10.2017
21:21:00
https://core.telegram.org/bots/api#chat

Виктор
13.10.2017
21:21:00
для решения конкретной задачи

Sergey
13.10.2017
21:21:12
там в last_name и т.д. имя другой стороны

Виктор
13.10.2017
21:21:13
я знаю что он так отвечает и вижу это по ответам - че мне еще в доку лезть

Sergey
13.10.2017
21:21:22
имеет смысл только для приватных дискуссий

Виктор
13.10.2017
21:21:33
забей - мне это надо было в БД хранить для моих целей

Sergey
13.10.2017
21:21:39
короч вжух и у нас класс-структура данных с публичными полями

Vlad
13.10.2017
21:21:40

Виктор
13.10.2017
21:21:50
а я не буду переходить с кемелКейза потому что так решили в телеграме

Sergey
13.10.2017
21:22:01

Виктор
13.10.2017
21:22:14

Sergey
13.10.2017
21:22:29
короч, повторюсь
задачки

Виктор
13.10.2017
21:22:34
x-debug юзаю

Sergey
13.10.2017
21:23:01
что-то в духе "как сделать оформление заказа в каталоге без единого геттера/сеттера"

Виктор
13.10.2017
21:23:56
короч, повторюсь
ну короче на самом деле - может быстрее пистаь без геттеров сеттеров. Но если блин на большом проекте где уже 100 раз ты дергал свойство объекта тебе придется что-то изменить в формате например свойства при чтении, или появится задача при записи что-то например поправить в другом свойстве - материться придется долго возможно и наличие у тебя геттеров и сеттеров как раз облегчает поддержку

Google

Виктор
13.10.2017
21:24:28
там все сделали давно:)
там и про классы то не так давно узнали

Chupa
13.10.2017
21:24:56
В шторме парой кликов генерятся геттеры, сеттеры. Не особо долго.

Виктор
13.10.2017
21:25:07
ага
офигенна тема
а потом взял - и если надо что-то обработать при установке свойства - чпок одну строчку - и не паришься что у тебя что-то может в бизнес-логике где-то сломаться

Sergey
13.10.2017
21:25:58

Vlad
13.10.2017
21:26:10
ага и в свое время, когда была симфони 3.0 и пхп 7.1 генерация штормовская криво работала
а bin/console так как нужно

Sergey
13.10.2017
21:26:25
да вы суть упускаете
хотя... о чем это я.... кто вкурсе что такое informaton hiding и зачем оно надо? или open/close? или protected variations?
были ли у кого проблемы с тем что есть 10 сервисов которые машнят что-то с геттерами и сеттерами в сущности и хер пойми как оно работает и как оно должно работать

Виктор
13.10.2017
21:29:30
хер пойми как работает - зависит от тех кто писал код и умения того кто его смотрит отлаживать код. А не от геттеров и сеттеров... Ну мне так кажется...:)

Sergey
13.10.2017
21:30:34
короч ладно, я так понял что никому не интересно пофилосовствовать
про Деметру там поболтать (раз геттеры/сеттеры не причем), про семантику там

Алексей
13.10.2017
22:23:42
@fes0r Без сеттеров-геттеров херово с сонатой работать. Но:
- Я не фанат геттеров-сеттеров
- Я не фанат сонаты, просто с ней приходится работать
- Это про лечение добровольно обретённой проблемы костылями. То есть, некорректный ответ на твой вопрос, т.к. "работать с сонатой" - это не цель проекта.


Егор
13.10.2017
23:01:25
@fes0r допустим весьма распространённая ситуация - есть сущность File, в БД хранится относительный путь. Один из слушателей Доктрины во время postLoad через сеттер пропихивает в сущность File какой-нибудь \SplFileInfo или Symfony\File (предварительно сконкатенировав путь к файлам с относительным путём из БД). Зачем? Чтобы были гарантии в коде, так как Symfony\File бросает исключение, если файл с таким путём не существует: https://github.com/symfony/symfony/blob/master/src/Symfony/Component/HttpFoundation/File/File.php#L36
Как эту задачу решить без сеттеров? В доках Symfony всё как обычно на сеттерах: https://symfony.com/doc/current/controller/upload_file.html

Алексей
13.10.2017
23:02:08

Google

Егор
13.10.2017
23:03:00
Нет, кстати бандл не гуглится

Алексей
13.10.2017
23:03:33

Sergey
13.10.2017
23:58:51
я к примеру храню FileReference объект который внутри хранит только относительный путь и, к примеру, тип хранилища (бывает так что у меня их 3 например)
если мне вдруг надо поработать с файлом - то это как часть инфраструктуры, и там я могу сделать "дерефересинг" файла
а то что описывается с SplFile - это скорее всего связано с валидацией сущности как данных формы. что опять же - немного не то что стоит делать.


Arky
14.10.2017
02:47:26
Мне как начинающему нужно знать как работать без сеттеров/геттеров? И какие материалы по этому есть?)

Daniel
14.10.2017
07:16:20

Admin
ERROR: S client not available

Daniel
14.10.2017
07:16:30
Книжка 5к стоит, я офигел от жизни такой
Хочется как-то маленько начать отходить от стека пхп
Посмотрел го, в принципе классно, но что-то большое на нем сложно наверное делать одним проектом
C# - это же еще не совсем линукс, хотя вот в компании крупной начали на нет кор делать, он тип универсально под линукс
А так еще джава есть
Из таких крупных языков
Хочется прям энтерпрайз энтерпрайз лвл
@Enleur ты вроде на джаве спринг и еще много на чем пишешь?

Alan
14.10.2017
09:40:06
https://github.com/drone/drone

Google

Sergey
14.10.2017
09:40:06

Alan
14.10.2017
09:40:09
ну вроде не маленькое)

Sergey
14.10.2017
09:40:11
+ спринг

Alan
14.10.2017
09:40:49
имхо яву даже читать просто полезно пока кодишь на пхп)
там и материалов в разы больше

Daniel
14.10.2017
09:41:52
ну вроде не маленькое)
Это очень сложно, потому что мне например жизненно необходимо, чтобы был какой-то LTS продукт, который уже 100 раз съел собаку и сказал "вот вам бест практис". Здесь же ты сам себе художник и это немного пугает, как будто голый пхп.

Sergey
14.10.2017
09:43:13

Sergey
14.10.2017
09:44:26

Moz
14.10.2017
10:05:38
вы про java или js?)

Arky
14.10.2017
10:22:41


Sergey
14.10.2017
10:23:19
ну я так делаю делеко не всегда
просто есть задачи где в целом пофиг, но я сейчас стараюсь вместо геттеров и сеттеров для подобных задач юзать просто публичные поля
хотя это от команды зависит конечно и от того как они привыкли
ну мол тебе говорят "можно поменять имя" например - ну ты и не заморачиваешься. Или говорят "можно зарегать юзера" и ты делаешь new User().
это легко и просто
но упускаются важные моменты - типа откуда юзеры берутся? может быть есть рефералка? А может еще чего? может перед юзером есть что-то еще что уже должно заниматься их созданием?
не говоря уже про такие вещи как инкапсуляция, когда ты просто делаешь сеттер и размазываешь проверки по коду, который этот сеттер юзает
увеличивается дублирование (причем часто - не так явно как хотелось бы), страдает семантика кода, усложняется понимание.
но это все серьезная проблема только для серьезных проектов, где тебе не удастся разобраться в бизнес логике за пару часов


Arky
14.10.2017
10:27:19
Тоесть читается сложно?)

Sergey
14.10.2017
10:27:36
скорее код не передает что он делает