• Админка для laravel?

    daemonhk
    @daemonhk
    ПсиХоПат
    Проблема "админок" для любого фреймворка в том, что дальше CRUD'а и спизж... дизайна они уехать не могут.
    Ответ написан
    1 комментарий
  • Какие в 2021 есть PHP CMS с базовыми функциями?

    6031996f23b33741213877.jpeg
    Ответ написан
    Комментировать
  • Как избежать повтора инклюдов в ООП PHP?

    @eandr_67
    web-программист (*AMP, Go, JavaScript, вёрстка).
    Во первых, в современном коде файлы никто не инклюдит - много лет назад для автоматической загрузки классов придумали https://www.php.net/manual/ru/language.oop5.autolo.... И во всём коде сайта остаётся 2-3 include, один из которых - внутри генрируемого composer'ом автозагрузчика.

    Во вторых, все современные фреймворки имеют единственную точку входа: файл index.php, которому передаются все обращения к сайту. В этом файле производятся подключение конфига, и инициализация фреймворка. После чего управление передаётся роутеру, который разбирает URL запроса и передаёт управление нужному классу-контроллеру.

    В третьих, для автоматического создания объектов с автоматической же передачей конструктору нужных данных (в том числе и конфигурации) и исключения дублирования создаваемых объектов давным-давно придумали контейнеры внедрения зависимостей (DI) https://elisdn.ru/blog/116/psr7-framework-container (советую посмотреть все уроки этого цикла).
    Ответ написан
    23 комментария
  • Как быть медлительному разработчику?

    @tester12
    Для начала - посмотреть на коллег. Они в сроки укладываются или нет? Если нет, то что-то не так в организации, это уже вопросы к руководству. Если да, то вопросы к медлительному джуну. Значит он либо ничего не знает и тратит кучу времени на гугление "как это сделать", либо он занят ещё чем-то не тем.
    Ответ написан
    Комментировать
  • Как быть медлительному разработчику?

    Robur
    @Robur
    Знаю больше чем это необходимо
    уже больше полугода, и за это время зафейлил большую часть сроков по таскам

    Я за последние 8-10 лет зафейлил большую часть сроков по таскам. Потом понял что проблема в сроках.

    беру время с запасом, но часто и того не хватает.

    Какой запас? Есть давно выведенный эмпирический закон - оценку опытного разработчика надо умножать на pi, если вы джун и сами время определяете, то 2*pi, если вы хотите работать хардкорно, и 3*pi если более близко к реальности.

    Подскажите, как вы ведете задачи, чтобы укладываться в сроки?

    Надо ставить реальные сроки. Но оценка - одна из самых сложных задач. Если только вы не клепаете конвеером одно и то же. Ну и анализ постфактум, то что реально можно улучшить-изменить, надо исправлять.

    И не по теме, как относитесь к медлительным коллегам?

    Если работают хорошо и ответственно - то хорошо отношусь, если работают плохо и через жопу то плохо.
    Если медлительность объективна - то всегда есть причина и с ней можно поработать. Но не всегда даже и нужно.

    Я например могу сделать что-то супербыстро, пока мне объясняют задачу, в стиле "х**к, х**к и в продакшен", но предпочитаю делать дольше но лучше. Поэтому таски закрываю позже чем мог бы, но это такой код и результат, в котором я и окружающие уверены. Он и через полгода будет хорош, и багов в нем на порядок меньше.
    Ответ написан
    1 комментарий
  • Как лучше организовать рабочее окружение для веб разработчика?

    @xfg
    linux + docker + git вот и всё окружение.
    Ответ написан
    Комментировать
  • Regexp для белорусских номеров

    La2ha
    @La2ha
    Вот еще мой вариантик для мобильных
    ^(\+375|80)(29|25|44|33)(\d{3})(\d{2})(\d{2})$
    Ответ написан
    1 комментарий
  • Архитектура Laravel приложения .. Как правильно понять всю структуру?

    JhaoDa
    @JhaoDa
    LaravelRUS Team
    Фасады в ларавел это не те фасады, которые паттерн, это псевдостатические алиасы для вызова методов элементов контейнера. Многие их не юзают, тем более, что оно без плагина barryvdh/ide-helper почти не юзабельно.

    Контракты это именно те самые банальные интерфейсы.
    Ответ написан
  • Где правильнее проверять пользовательские данные? В контроллере или модели?

    IvanCher
    @IvanCher
    Мысли шире
    За работу с данными должна отвечать модель. Именно модель должна знать какие данные допустимы, а какие нет, потому что на ней лежит функция обработки/записи этих самых данных.
    У контролера цель - обрабатывать пользовательские запросы и решать, как на них ответить.
    Иными словами, вы принимаете данные с формы контролером и говорите модели сказать валидные ли данные пришли. Модель отвечает контролеру, контролер принимает решение, как на это ответить пользователю (ошибкой, каким-то конкретным представлением и т.п.).
    UPDATE
    MVC советую всем прочесть, прежде, чем давать странные советы. Особенно внимательно прочесть "Наиболее частые ошибки", как раз говориться, что делать из контролера Толстый Тупой Уродливый Контролер - не правильно по определению шаблона. Можно спорить сколько угодно, но об этом прямо многие авторитеты. Другое мнение сформировано отсутствием глубокого понимания MVC и малым опытом на крупных проектах.
    Ответ написан
    17 комментариев
  • Что нужно знать для развертывания сайта на Linux-сервере?

    @lotse8
    Если это одноразовая задача и больше этим заниматься не планируешь, то быстрее и дешевле найти нормального админа и заплатить ему за работу. Изучать имеет смысл, если это будешь и дальше всегда сам делать.
    Ответ написан
    Комментировать
  • Где в Laravel хранить вспомогательные функции?

    Denormalization
    @Denormalization
    Для Laravel 5 нет смысла использовать отдельный класс для валидации (как это было в L4).

    В L5 существую ValidatesRequests трейт, который можно использовать в контроллерах, и тогда появляется метод validate.

    А еще лучше, использовать кастомный FormRequest класс для валидации данных.

    Т.е создаем класс Http\Requests\UpdateUserProfile и наследуем его от Request.

    В UpdateUserProfile прописываем 2 метода:
    // Проверяем может ли пользователь делать это действие
    public function authorize();
    // Возвращаем массив с правилами
    public function rules();


    Затем в котроллере используем этот класс, допустим в методе update:
    public function update(UpdateUserProfile $request);


    Валидация будет происходить автоматически, без лишних телодвижений, и если она прошла, то в $request 99.999% валидные данные.

    Учимся очень внимательно читать документацию.
    Ответ написан
    Комментировать
  • Как эффективно использовать GIT одному человеку в разных проектах?

    @heahoh
    Full stackoverflow developer
    Посмотрите на SourceTree: разделение на проекты, ветки под фичи и баги да и вообще удобный и приятный в использовании GUI для Git. И почитайте про git flow
    Ответ написан
    Комментировать
  • Как построить свой рабочий день фрилансеру?

    iiiBird
    @iiiBird
    Пока ты спишь - твой конкурент совершенствуется
    3 комментария