На чем пишешь ? sf4 ?zelenin писал(а): ↑2018.02.11, 20:35своего рода рекурсия: за день потратил больше времени на форум, чем за предшествующую неделю, на "сраться с фанатиком" в споре о том, что не нужно тратить время на форуме на "сраться с фанатиками".ElisDN писал(а): ↑2018.02.11, 20:30Может быть.rugabarbo писал(а): ↑2018.02.11, 17:29 Только давай будем честными, чистого "давать" в мире не существует. Даже отдавая, ты на самом деле выносишь что-то для себя. То есть, "давать" – это такой другой (более эффективный) способ "брать". Все мы в итоге эгоисты, просто реализуем эгоизм по разному, так природой заложено, поэтому не надо тут "святых речей" об отдаче всего себя любимого на растерзание действительности во имя массового просвещения.
Автолюбители кончились, а теперь четыре дня "бодаемся" про "эгоизм", "брать/давать" и "сообщество". Смысл? Вместо пары коммитов Вы уже двенадцать сообщений сочинили.rugabarbo писал(а): ↑2018.02.11, 17:29 И я как раз говорю про то, что можно "отдавать" себя с большей эффективностью, чем бодаться днями напролёт с "автолюбителями". А ты мне пытаешься про азы саморазвития рассказать. Например, в этой теме фанатизм и автолюбительство просто зашкаливает. Об этом и мой вопрос: какой смысл? Лучше пару коммитов в yii отправить, чем бодаться со стеной. Нет? Не так?
Без обид - фанатик в данном случае без негативного подтекста.
Yii2 - атака хейтеров и что делать дальше?
-
- Сообщения: 680
- Зарегистрирован: 2017.06.21, 13:50
Re: Yii2 - атака хейтеров и что делать дальше?
Re: Yii2 - атака хейтеров и что делать дальше?
без разницыtrueorfalse писал(а): ↑2018.02.11, 21:58На чем пишешь ? sf4 ?
Re: Yii2 - атака хейтеров и что делать дальше?
Тут свою роль конечно играет моя призма. Ведь любой диалог проходит как минимум ч/з две призмы. А реальность, как известно, где-то там между ними.
По моему мнению вы просто в "зоне комфорта". И наверно до поры до времени в этом нет ничего плохого. А может и вовсе нет ничего плохого - хоть до 100 лет в ней находись (:
Призма мешает увидеть вашу философию. Своя философия мешает.
По моему мнению вы просто в "зоне комфорта". И наверно до поры до времени в этом нет ничего плохого. А может и вовсе нет ничего плохого - хоть до 100 лет в ней находись (:
Призма мешает увидеть вашу философию. Своя философия мешает.
Re: Yii2 - атака хейтеров и что делать дальше?
rugabarbo, ты ударился филосовствовать, нам это никак не поможет.
- samdark
- Администратор
- Сообщения: 9489
- Зарегистрирован: 2009.04.02, 13:46
- Откуда: Воронеж
- Контактная информация:
Re: Yii2 - атака хейтеров и что делать дальше?
Чем тут писать, помогли бы с 2.0.14 За неделю с 200+ тикетов до 19-и раскидали уже: https://github.com/yiisoft/yii2/milestone/24
Нравится Yii? Давайте сделаем его лучше!.
Re: Yii2 - атака хейтеров и что делать дальше?
Лично у меня нет мотивации по философским причинам (которые уже многократно здесь озвучивал).samdark писал(а): ↑2018.02.12, 12:50 Чем тут писать, помогли бы с 2.0.14 За неделю с 200+ тикетов до 19-и раскидали уже: https://github.com/yiisoft/yii2/milestone/24
Вышел из Yii-разработки по всем фронтам.
Наблюдаю.
-
- Сообщения: 680
- Зарегистрирован: 2017.06.21, 13:50
Re: Yii2 - атака хейтеров и что делать дальше?
Samdark дело говорит.
Чем ввести пустой диалог, идите на github пользы в разы будет больше.
Вроде люди взрослые, но не видите дальше 0 1.
Чем ввести пустой диалог, идите на github пользы в разы будет больше.
Вроде люди взрослые, но не видите дальше 0 1.
- samdark
- Администратор
- Сообщения: 9489
- Зарегистрирован: 2009.04.02, 13:46
- Откуда: Воронеж
- Контактная информация:
Re: Yii2 - атака хейтеров и что делать дальше?
rugabarbo, ну, в том, куда вышли. Не суть важно.
Нравится Yii? Давайте сделаем его лучше!.
Re: Yii2 - атака хейтеров и что делать дальше?
я думал ветка заглохла, ее удалили и забыли давно тут не бывал, спасибо 2.0.14
не согласен. 5 лет в хорошем институте творят чудеса
у нас есть только один вуз в котором учили 6 лет - там ваще бомба
специалист без во и с во - огромная разница, за 5 лет в интернетах и комьюнитях конечно получишь информацию, но без во - качество этой информации на уровне .... низком уровне
но учась в вузе - не останешься без информации которую получишь в интернетах и комьюнити, а если еще есть и вектор приложения энергии...
5 лет вуза - это срок без которого никуда, и не считаю его большим - без него путь будет действительно длиннее и сложнее
за выпускниками хороших вузов - очередь работадателей типа яндекс, маил, гугл и тд.
пс. в России.
псс. не путать во купленное и во полученное в результате бессонных ночей
Re: Yii2 - атака хейтеров и что делать дальше?
+1samdark писал(а): ↑2018.01.30, 14:22 И да, в Symfony 4 и правда большинство вопросов из топика решены. Вот только с решением прилагается более высокий порог входа, дебаг посложнее, получающийся более абстрактным код (баг коде на Yii видно сходу, а код на Symfony выглядит даже с багом корректно и без отладки, как правило, не вылавливается), программирование мета-языком в конфигах, залипающие кеши и другие издержки сверх-гибкости. Ну и вишенка на торте — компиляция кода (в некоторых системах типа OroCRM она может занимать три-четыре минуты). В принципе, работать со всем этим можно, привыкаешь, но иногда спрашиваешь себя, чего бы не перепрыгнуть сразу на Java, ведь там всё так же, только язык для такого стиля разработки более подходящий.
а еще джава имеет очень странное свойство - она всегда глючит. а часть глюков вообще - гениальная - решается только повышением производительности железа
а еще может я как всегда слишком туп и незряч, подскажите уважаемые специалисты по "архитектурам" фреймворков некоторые следующие моменты:
как в доктрине реализовать форинкей по 2-3-4-6-99 полей ? (при этом эти поля не праймари кей в целевой таблице!)
как в доктрине подключить поведение к модели, в симфони к контроллеру и тд ? или там такого в принципе нет ?
как в симфони сделать экшен классом ? чтоб я его мог тиражировать с нужными мне параметрами а не писать каждый раз ?
вспомню еще - напишу, но вот както пару десятков синьоров кичащихся своими познаниями симфони сделавших хренову тучу проектов упоминать которые нельзя потому что меня пришлось бы убить - мне так и не ответили на несколько десятков моих вопросов - которые у меня возникли после беглого ознакомления с симфони и yii
да мне пофиг какой симфони "академичный" .... простые вещи на юии - в симфони решаются в 5 раз дольше .... да еще и лови глюки с кешем и компиляцией, с ассетами и тд тд тд...
вот фрибсд - тоже академичная система, но она простая как кирпич, надежная как лом, порог входа ниже чем у линукса, и самое главное - она даже в отличии от линукса - логичная, а логичная она потому что в ней есть архитектура. в линуксе ее (архитектуры) нет. так вот симфони - это линукс а не фрибсд.
пс. фрибсд хоронят с 4 версии ................................. и никак похоронить не могут, пхп хоронят еще с младеньчества....... а судьи кто ?
Последний раз редактировалось sm-vasya 2018.03.08, 01:18, всего редактировалось 5 раз.
Re: Yii2 - атака хейтеров и что делать дальше?
не спорю, что когда по юии задаешь в гугле вопрос то часто выходишь на ваш одноименный блог. дальше мысль я закончу позже.ElisDN писал(а): ↑2018.02.11, 17:11 Пока ищете профит лично для себя, за полтора года несколько таких "упёртых педагогов" вроде ElisDN и zelenin "выростили" 146 тем по архитектуре, где познакомили половину участников Yii-форума с альтернативными практиками и фреймворками. Где показали, что помимо замкнутой и местами тупиковой Yii-песочницы есть более обширный мир PHP со своими практиками и инструментами для "движения вперёд" и развития себя как разностороннего программиста.
Да и в этом топике конструктивные ответы принесли плоды для автора:
пока не налетели "автолюбители".
сейчас же без троллинга и подъ..к задаю серьезный вопрос - покажите пожалуйста результат своего умственного труда который вы считаете верхом совершенства, ну или по крайней мере максимум чем вы можете гордится.
я имею ввиду в первую очередь урок/статью/пример а не благодарности других собеседников
Re: Yii2 - атака хейтеров и что делать дальше?
Doctrine придумана для высокоуровневого программирования объектов вместо низкоуровневой возни с БД. Здесь рулит ООП, а не SQL.
Сначала нужно определиться, из каких соображений появилась необходимость составного ключа. Обычно только для того, чтобы ссылаться напрямую на вложенную сущность или VO другого агрегата, а не на его корень. А это уже с точки зрения агрегатов нелогично и лишь повышает внешнюю связанность. Поэтому, как вариант, оставляем связь на корень агрегата, а второе поле делаем простым числовым $xxxId. А в миграции прописываем нормальный составной FK вручную. В итоге получаем логически понятный код:
Код: Выделить всё
class OrderRow {
public function getProduct() {
return $this->product;
}
public function getModification() {
return $this->product->getModification($this->modificationId);
}
}
Код: Выделить всё
class OrderRow {
public function getModification() {
return $this->modification;
}
}
Если программировать в Symfony как в Yii, то получаем затык "как же мне тут запилить поведения". Если же как в Symfony, то всё логично и удобно.
Поведение в Yii - это миксин для магического добавления методов и подписчик для отлова событий. Миксины легко реализуются просто трейтами, содержащими чистые методы с параметрами. Подписчики - через EventSubscriber. Если корректно разбивать код по ответственностям, то поведения оказываются или трейты не нужны. Их методы переходят в сервисы, а поля сущности заполняются уже готовыми данными. То есть вместо смеси с поведением внутри AR:
Код: Выделить всё
$post->image = $file;
$post->save(); // с сохранением файла в beforeSave()
echo $post->getThumbUrl('medium');
Код: Выделить всё
$image = $uploader->uploadImage($file, Post::class);
$post->setImage($image);
...
echo $uploader->getThumbUrl($post-getImage(), 'medium');
Для отлова событий выполнения контроллера пишем тот же Event Subscriber.
Например, в админке нам нужно к компаниям и к товарам сделать подгрузку городов. Выносим код получения городов в отдельный класс, потом дёргаем его из всех экшенов с индивидуальными параметрами:
Код: Выделить всё
function actionAjaxRegion1($request) {
return new JsonResponse($this->regions->getAutocompleteResults($request->get('query'), self::LIMIT1));
}
function actionAjaxRegion2($request) {
return new JsonResponse($this->regions->getAutocompleteResults($request->get('query'), self::LIMIT2));
}
Если же у сервиса куча меняющихся настроек, то в DI определяем несколько сервисов от одного класса с разными настройками и именами и контекстуально прокидываем в нужные контроллеры. Это вариант уже с магией.
Либо, если выносить в сервис не хочется, то всё-таки записываем сам экшен отдельным классом и в DI прописываем его два экземпляра под именами action.regions1 и action.regions2. Потом в маршрутах прописываем controller: action.regions1 и action.regions2.
Последний раз редактировалось ElisDN 2019.04.03, 01:38, всего редактировалось 1 раз.
Re: Yii2 - атака хейтеров и что делать дальше?
я вас не спрашивал зачем мне нужен составной ключ, я вас поставил перед фактом, что без составного ключа решение не предлагать. собственно вопрос закрыт, итого два десятка + 1 уже не смогли ответить.ElisDN писал(а): ↑2018.03.08, 02:40Doctrine придумана для высокоуровневого программирования объектов вместо низкоуровневой возни с БД. Здесь рулит ООП, а не SQL.
Сначала нужно определиться, из каких соображений появилась необходимость составного ключа. Обычно только для того, чтобы ссылаться напрямую на вложенную сущность или VO другого агрегата, а не на его корень. А это уже с точки зрения агрегатов нелогично и лишь повышает внешнюю связанность. Поэтому, как вариант, оставляем связь на корень агрегата, а второе поле делаем простым числовым $xxxId. А в миграции прописываем нормальный составной FK вручную. В итоге получаем логически понятный код:
Re: Yii2 - атака хейтеров и что делать дальше?
Я программирую всего четырнадцать лет, так что ещё не всё умею. Напишите мне в личку лет через сорок. Может тогда до совершенства дойду и что-нибудь свободное и идеальное наваяю.
Остальное кроме статей и вебинаров, к сожалению, рабочие коммерческие проекты. Их исходники показать не могу.
Re: Yii2 - атака хейтеров и что делать дальше?
беседовать про "архитектуру" с вами так же бесполезно. 20 + 1ElisDN писал(а): ↑2018.03.08, 02:40Если программировать в Symfony как в Yii, то получаем затык "как же мне тут запилить поведения". Если же как в Symfony, то всё логично и удобно.
Поведение в Yii - это миксин для магического добавления методов и подписчик для отлова событий. Миксины легко реализуются просто трейтами, содержащими чистые методы с параметрами. Подписчики - через EventSubscriber. Если корректно разбивать код по ответственностям, то поведения оказываются или трейты не нужны. Их методы переходят в сервисы, а поля сущности заполняются уже готовыми данными. То есть вместо смеси с поведением внутри AR: