Вам, видимо, не до конца понятен кейс. Представьте, что разработчик на удалёнке, он привлекается для решения небольшой задачи, а не в штат на века, причем еще под вопросом уровень его компетенции, ответственности, готовности работать в обозначенных условиях. Что ж теперь, каждому разворачивать убунту, перестраивать его под своё рабочее окружение и т.д? Нужно максимально быстро включить человека в работу и проверить его в боевых условиях. Поставьте себя на место человека. Работаете вы себе спокойно на винде, верстаете странички, пишите простенький js, на стороне клиента. И тут вас привлекают для решения некоторых задач и говорят — «будешь использовать эту ОС, эту IDE, и т.д». Одним это покажется нормальным, другим — полным бредом.
Вроде того, да. В частности, что и откуда установить, как сгенерировать ключи, как подключить удаленный git-пепозиторий и клонировать с него проект себе на локальную машину. Знаю, мануалов много, но для некоторых людей всё неочевидно. Именно поэтому и написал, «если нужно — опубликую»)
Статья не посвящена тому, что docker не подходит. Но если его применение не на кончиках пальцев, то использование xampp куда быстрее и проще. А так, разумеется, что для человека, который уже владеет всеми возможностями docker, возможно, это не составит проблем.
Опять же, symfony рекомендует отладку в локальном окружении, а не на удаленных (или виртуальных) серверах.
Из недостатков, да — рабочее окружение только одно, нужно ставить доп. компоненты и т.п. Но если взять за отправную точку ситуацию, когда человек не владеет ни docker, ни vagrant, ни xampp, чем ему будет проще запустить php+mysql на локальной машине?
Люди, которые сидят на фронтэнде, к сожалению, но в силу специфики, не всегда владеют тем, что происходит на сервере. Не говорю за всех, но, если, например, нужна только верстка, и человек хорошо делает верстку, он не всегда хочет и может погружаться во всё остальное. У него есть IDE, с помощью которого он клепал красивые страницы, но ни разу не разворачивал у себя окружение, которое может запустить php фреймворк или готовый движок.
Некоторые работают на удалённом сервере, но повторюсь, подключение к проектам symfony удалённо — плохой вариант по нескольким причинам:
1. не все IDE умеют синхронизировать реалтайм
2. если качать на ком всю директорию, адски долго
3. без доп настроек режим отладки в symfony работает только локально (настройки простые, но, на мой личный взгляд) лишние
4. если проект на сервере, то и git репозиторий на сервере. Допустим, на сервере нет графического интерфейса работы с git. Фронтенд разработчик должен делать комиты
git commit -a -m 'your commit message here'
подключившись к серверу по ssh? А если я не хочу давать доступ по ssh?
Ну и, наконец, фреймворк symfony изначально позиционирует возможность работать с ним локально. Значит нужно решение, которое позволяет работать с ним локально. Не на виртуальной машине, не на удалённом сервере, а именно локально. Кто с symfony не работал, тот не поймет.
Тема к тому, что если нужно локальное окружение для symfony, которое позволяет вести отладку с помощью встроенного веб-сервера, не нужно усложнять, достаточно использовать xampp. Увы, не всегда сходу приходит именно простое решение.
Если цель — получить стандартный магазин, то вопросов нет, но на секунду предположим, что мы хотим добавить что-нибудь эдакое, что выходит за понимание стандартных функций.
Например:
— применительно для Москвы и Московской области, если доставка в МО, то предоставить клиенту возможность выбрать свой дом на карте и автоматически высчитать доплату за каждый км от МКАД, сразу включить эту доплату в стоимость доставки.
— добавить возможность пользователю самостоятельно компоновать товар и по разным хитрым схемам высчитывать стоимость (например, составная пицца)
— партнёрка, которая будет начислять баланс покупателям за покупки, совершенные по их рекомендациям
В общем любые фантазии, которые каким-то образом могут стимулировать продажи.
Не получится ли, что на конкретные задачи нет сторонних плагинов, а запиленные доработки слетят после первого же серьёзного обновления движка?
Да, есть такое дело. Одному клиенту делал простенький проект+сопровождение вообще без админки, т.к. локальные правки было проще вносить непосредственно в код. Он до сих пор периодически спрашивает логин и пароль для того, чтобы вносить какие-то изменения )))
В этом то всё и дело. Что уйдя от готовых решений в пользу чего-то своего пару лет назад, сегодня я понимаю, что в итоге создается нечто похожее на то, что и так уже было реализовано другими. Другой вопрос, что обеспечит необходимую гибкость: коробочные решения или фрейморвки с модулями?
Дело в том, что сейчас базовые знания php, js, html, mysql + свежие познания symfony позволяют создавать несложные сервисы. Вот и пытаюсь для себя понять, стоит ли дальше идти в этом направлении, создавая собственный код, используя расширения и фреймворки. Или же выбрать какой-то гибкий и функциональный движок, разобраться в нём, и уже допиливать его под все нестандартные потребности. Собственно моё смятение связано именно с этим вопросом. Выбрать, в каком направлении лучше копать.
Когда я начал прорабатывать структуру для модуля монетизации интернет-сервиса (расширенные возможности по платной подписке + партнёрка), то структура данных стала сильно походить на структуру данных обычного интернет магазина. Так ли это? Есть ли какие-то некоробочные решения для подобных задач?
Опять же, symfony рекомендует отладку в локальном окружении, а не на удаленных (или виртуальных) серверах.
Из недостатков, да — рабочее окружение только одно, нужно ставить доп. компоненты и т.п. Но если взять за отправную точку ситуацию, когда человек не владеет ни docker, ни vagrant, ни xampp, чем ему будет проще запустить php+mysql на локальной машине?
Некоторые работают на удалённом сервере, но повторюсь, подключение к проектам symfony удалённо — плохой вариант по нескольким причинам:
1. не все IDE умеют синхронизировать реалтайм
2. если качать на ком всю директорию, адски долго
3. без доп настроек режим отладки в symfony работает только локально (настройки простые, но, на мой личный взгляд) лишние
4. если проект на сервере, то и git репозиторий на сервере. Допустим, на сервере нет графического интерфейса работы с git. Фронтенд разработчик должен делать комиты
подключившись к серверу по ssh? А если я не хочу давать доступ по ssh?
Ну и, наконец, фреймворк symfony изначально позиционирует возможность работать с ним локально. Значит нужно решение, которое позволяет работать с ним локально. Не на виртуальной машине, не на удалённом сервере, а именно локально. Кто с symfony не работал, тот не поймет.
Например:
— применительно для Москвы и Московской области, если доставка в МО, то предоставить клиенту возможность выбрать свой дом на карте и автоматически высчитать доплату за каждый км от МКАД, сразу включить эту доплату в стоимость доставки.
— добавить возможность пользователю самостоятельно компоновать товар и по разным хитрым схемам высчитывать стоимость (например, составная пицца)
— партнёрка, которая будет начислять баланс покупателям за покупки, совершенные по их рекомендациям
В общем любые фантазии, которые каким-то образом могут стимулировать продажи.
Не получится ли, что на конкретные задачи нет сторонних плагинов, а запиленные доработки слетят после первого же серьёзного обновления движка?