
Saen
16.08.2017
21:19:54
я это понимаю) по началу както пытался все проектить, но оно так се получалось, или выяснялось что мне не все выдали, или проект сворачивался на ходу
я както потерял надежду в этой конторе на это))

Sergey
16.08.2017
21:20:05

Saen
16.08.2017
21:20:09
собственно, ищу работу))))

Google

Max
16.08.2017
21:21:26
Ну, ок. Понятно, что часто сразу все пишут реализации, потом выделяют абстракции. Так бывает удобнее и быстрее. Но это же не повод не иметь интерфейсов. Мне кажется в начале речь зашла не об этом.

Sergey
16.08.2017
21:21:31
потому сейчас я трачу на "проектирование" не более пары дней. Есть задачи где надо тратить больше времени, есть задачи где надо для начала оценку рисков произвести

Aleh
16.08.2017
21:22:05

Saen
16.08.2017
21:22:09
как
вот как оценивать риски?
расскажите, я не знаю

Max
16.08.2017
21:22:31

Aleh
16.08.2017
21:22:32
при этом нет речи о том, чтобы не иметь интерфейсы совсем, а только о том, что заводить их надо по необходимости

Sergey
16.08.2017
21:22:50

Max
16.08.2017
21:23:14

Sergey
16.08.2017
21:23:45
расскажите, я не знаю
ну пример такой. Ты делаешь систему и у тебя есть внешние зависимости. Прикидываешь "что будет если упадет эта хрень" и оцениваешь как твоя система отреагирует и какой будет "дэмэдж" для пользователей. Сводишь риски к минимальным (в плане если оно упадет то данные не пострадают) и вуаля.

Aleh
16.08.2017
21:23:51

Google

Aleh
16.08.2017
21:23:56
это необходимость

Sergey
16.08.2017
21:24:02

Saen
16.08.2017
21:24:03
а
я думал хитрая вуду магия
так всреднем известно. мне пока проекты с хай рпс или высоким потоком бабла не приходилось кодить, поэтому культура оценки рисков не высока у меня

Sergey
16.08.2017
21:25:21
я думал хитрая вуду магия
не... просто иногда это не очень очевидная штука. У меня был модуль на блокчейнах и мы недостаточно уделили времени анализу поведения оного при форках (это когда у тебя цепочка транзакций раздваиваются и транзакции могут "пропадать"). Ну вот недостаточный анализ и "хилые" ассампшены привели к потере примерно $50К. И это еще повезло.

Max
16.08.2017
21:26:07
вот понадобился тебе интерфейс - берешь и заводишь
Ok, я разработчик мадженты, знаю, что много других компаний расширяют мадженту. Я делаю CustomerInterface, чтобы дать возможность другим делать свои реализации кастомеров. Я делаю Customer класс для базовой реализации. Без суффикса конфликт.

Sergey
16.08.2017
21:26:11
повезло потому что проблему заметили через 15 минут после возникновения
класс Order достоен особого места

Max
16.08.2017
21:27:04
Уходишь от темы.

Aleh
16.08.2017
21:27:05

Max
16.08.2017
21:27:30

Sergey
16.08.2017
21:27:34

Saen
16.08.2017
21:27:45

Sergey
16.08.2017
21:27:46
MagentoCustomer

Aleh
16.08.2017
21:27:51

Sergey
16.08.2017
21:28:02

Saen
16.08.2017
21:28:10
к к к комбо

Google

Max
16.08.2017
21:28:18

Aleh
16.08.2017
21:28:25

Saen
16.08.2017
21:28:25
бля, я чет ссу с большим баблом пока работать)
надо в банк знач идти
:D

Sergey
16.08.2017
21:28:44

Aleh
16.08.2017
21:28:50

Max
16.08.2017
21:29:02

Aleh
16.08.2017
21:29:04
зачем тогда разделять CustomerInterface и Customer?

Sergey
16.08.2017
21:29:23
просто возможно можно CustomerInterface разделить на что-то более конкретное?
ну и что разработчики обычно делают с этим CustomerInterface?

Max
16.08.2017
21:29:44

Aleh
16.08.2017
21:29:45
или кто-то юзает? Почему все не юзают?

Sergey
16.08.2017
21:30:02

Max
16.08.2017
21:30:17

Sergey
16.08.2017
21:30:27

Aleh
16.08.2017
21:30:33

Sergey
16.08.2017
21:30:36
как можно подменить? что можно подменить?
блин, проще глянуть

Google

Aleh
16.08.2017
21:30:58

Max
16.08.2017
21:31:00
Вы что прикалываетесь? :)

Sergey
16.08.2017
21:31:14
сча найду твоих кастомеров в магенте

Saen
16.08.2017
21:32:17
забавно, а много кто может быть кастомером чтобы прям интерфейс?

Max
16.08.2017
21:33:01

Saen
16.08.2017
21:33:11
нет, не страшное
тут скорее вопрос, зачем

Sergey
16.08.2017
21:33:30
я тут насчитал 2 CustomerInterface.
пока-что

Max
16.08.2017
21:33:34
Может быть просто своя реализация кастомера.

Sergey
16.08.2017
21:33:36
какой смотреть?

Saen
16.08.2017
21:33:45
чтоб дисцилированую науку в код, можно и так

Sergey
16.08.2017
21:33:45

Aleh
16.08.2017
21:33:48

Max
16.08.2017
21:33:54

Sergey
16.08.2017
21:34:09
но называются одинаково

Aleh
16.08.2017
21:34:31
да просто 2 разных bounded context

Google

Saen
16.08.2017
21:34:31

Sergey
16.08.2017
21:34:33
Magento\Customer\Api\Data\CustomerInterface
этот? не похоже просто

Aleh
16.08.2017
21:34:50
похоже на структура запроса

Sergey
16.08.2017
21:35:08
ответа скорее
типа "моделька"

Aleh
16.08.2017
21:35:10
ну я надеюсь, что это dto для запроса в неймспейсе Data
или ответ, да

Sergey
16.08.2017
21:35:33
раз два три я доктор ти-би-бо а что у нас внутри нука, четыре пять шесть и ты внутри такой же как и все фу, скука

Aleh
16.08.2017
21:36:05
а он только пару минут смотрел код магенты
брр

Sergey
16.08.2017
21:36:56
class Customer extends \Magento\Framework\Model\AbstractModel

Aleh
16.08.2017
21:37:13
типичный active record

Sergey
16.08.2017
21:37:22
https://github.com/magento/magento2/blob/develop/app/code/Magento/Customer/Model/Customer.php#L234-L278
вот за что я ненавижу магенту
расширяемость, абстракции
дрань обычная

Aleh
16.08.2017
21:38:16
https://github.com/magento/magento2/blob/develop/app/code/Magento/Customer/Model/Customer.php#L285 гыгыгы

Max
16.08.2017
21:38:46
Ой, дайте ваш код глянуть

Aleh
16.08.2017
21:39:48
https://github.com/magento/magento2/tree/develop/app/code/Magento/Customer/Model так тут же нет никакого CustomerInterface
ну т.е. нет никакого конфликта имен