Все сервисы Хабра

Сообщество IT-специалистов

Ответы на любые вопросы об IT

Профессиональное развитие в IT

Удаленная работа для IT-специалистов

Войти на сайт
  • Все вопросы
  • Все теги
  • Пользователи

Хабр Q&A — вопросы и ответы для IT-специалистов

Получайте ответы на вопросы по любой теме из области IT от специалистов в этой теме.

Узнать больше
другие проекты хабра
  • Хабр
  • Карьера
  • Фриланс
Задать вопрос
dmitriylanets

dmitriy

веб-разработчик
  • 188
    вклад
  • 61
    вопрос
  • 424
    ответа
  • 21%
    решений
Ответы
  • Информация
  • Ответы
  • Вопросы
  • Комментарии
  • Подписки
  • Нравится
  • Достижения
  • Почему не работает XDebug, Waiting for incoming connection?

    dmitriylanets
    dmitriy @dmitriylanets
    веб-разработчик
    проверьте xdebug.remote_host
    Ответ написан 18 янв.
    7 комментариев
    7 комментариев
  • Как запустить сайд-проект при основной работе?

    dmitriylanets
    dmitriy @dmitriylanets
    веб-разработчик
    Проблема с такими проектами что вы знаете как решить задачу технически, но не знаете как продать проект на рынке, если конечно это не сарафанка.
    Ответ написан 09 янв.
    Комментировать
    Комментировать
  • Какую CRM выбрать чтобы Joomla и Virtuemart работали вместе?

    dmitriylanets
    dmitriy @dmitriylanets
    веб-разработчик
    наверно нужно начать с целей которые пытаетесь решить путем внедрения СРМ
    Ответ написан 26 авг. 2021
    3 комментария
    3 комментария
  • Как научиться разрабатывать архитектуру приложения в области бизнес-логики?

    dmitriylanets
    dmitriy @dmitriylanets
    веб-разработчик
    1. Хорошо спроектировать, и держать систему на виду помогает Event Storming + miro
    2. На выходе мы имеем команды, события, сущности(агрегаты), информация, контекст
    3. В зависимости от приложения элементы с 2 шага преобразуются в код
    Ответ написан более года назад
    2 комментария
    2 комментария
  • Не смог найти учебник по DDD с примерами на PHP - такой существует в природе?

    dmitriylanets
    dmitriy @dmitriylanets
    веб-разработчик
    https://github.com/heynickc/awesome-ddd#sample-projects
    Ответ написан более года назад
    1 комментарий
    1 комментарий
  • Какой смысл mock объектов для юнит тестирования своего кода?

    dmitriylanets
    dmitriy @dmitriylanets
    веб-разработчик
    Когда вы тестируете метод А вашего класса, вы проверяете его логику а не логику других (замоканых методов), может быть ситуация когда ваш метод А работает по логике корректно, а вот другой метод Б другого класса используемый в тестируемом методе выдает ошибку, возникает вопрос нужно ли считать что ваш метода А работает неправильно из за упавшего метода Б ?
    Ответ написан более года назад
    5 комментариев
    5 комментариев
  • Как вытащить логи PHP наружу из контейнера?

    dmitriylanets
    dmitriy @dmitriylanets
    веб-разработчик
    а если так
    error_log = "/var/www/logs/php-fpm.log"
    Ответ написан более года назад
    1 комментарий
    1 комментарий
  • Какое окружение вы используете для разработки php?

    dmitriylanets
    dmitriy @dmitriylanets
    веб-разработчик
    - openserver for Windows
    - docker for linux
    - phpStorm
    - dbForgeStudio
    - git + SourceTree Attlasian
    Ответ написан более года назад
    Комментировать
    Комментировать
  • Как убеждать клиентов оплачивать ТЗ (или оценку проекта) и нужно ли это делать?

    dmitriylanets
    dmitriy @dmitriylanets
    веб-разработчик
    Сообщайте грубую оценку, я думаю грубо оценить можно без детального погружения, если клиент соглашается работать дальше, создавайте детально ТЗ.
    Ответ написан более года назад
    2 комментария
    2 комментария
  • Как грамотно организовать структуру сайта (папки и файлы, вложенность)?

    dmitriylanets
    dmitriy @dmitriylanets
    веб-разработчик
    человек спрашивает про структуру папок, а ему фрамеворки и cms впаривают)))
    я бы порекомендовал каркас пакета https://github.com/php-pds/skeleton
    публичный файлы css,js,img и index.php поместить в public/
    остальной php код в /src
    Ответ написан более года назад
    6 комментариев
    6 комментариев
  • Как спроектировать БД для обслуживания запросов пользователей?

    dmitriylanets
    dmitriy @dmitriylanets
    веб-разработчик
    если заявка на новую конфигурацию создается на основе существующих то так:
    Пользователь - Конфигурация
    Пользователь - Заявка - Конфигурация

    если заявка на новую конфигурацию строится кастомно, то
    Пользователь - Конфигурация
    Пользователь - Заявка(Конфигурация в поле например в json)
    Ответ написан более года назад
    1 комментарий
    1 комментарий
  • Docker-composer - рабочий пример запуска сервера с двумя версиями php?

    dmitriylanets
    dmitriy @dmitriylanets
    веб-разработчик
    хорошая практика один проект - один докер конфиг
    поэтому проекты на php5.6 и php7.3 будет иметь каждый свою версию
    поэтому шаги простые
    1. переходишь в папку проекта
    2. $ docker-compose up -d && docker-compose exec app bash
    3. $ php some_script.php
    Ответ написан более года назад
    Комментировать
    Комментировать
  • Актуальны ли админ панели на PHP?

    dmitriylanets
    dmitriy @dmitriylanets
    веб-разработчик
    как мне очень трудозатратно, нужно разделение фронт и бек, или хороший фулстек программист.
    как правило если у вас SAAS сервис и требуется клиентоориентированный интерфейс то 90% индивидуальная админка + rest.
    если же cms которая теражируется клиентам, должна иметь возможность кастомизироваться то подойдет многостроничник на bootsrap, с twig и фреймворком.
    Ответ написан более года назад
    Комментировать
    Комментировать
  • Можно ли создать свой приватный packagist?

    dmitriylanets
    dmitriy @dmitriylanets
    веб-разработчик
    https://github.com/composer/satis
    Ответ написан более года назад
    Комментировать
    Комментировать
  • Что можно использовать от фреймворка в DDD?

    dmitriylanets
    dmitriy @dmitriylanets
    веб-разработчик
    ваше направление и мысли полностью совпадают с моими, поэтому дополню то что уже писал k2lhu
    DDD это больше про агрегаты и контекст, может вам нужна гексогональная архитектура и все что связанно с clean architecture. Принцип простой, ваша бизнес логика не должна зависеть от деталей реализации, попробуйте написать код без фраймворка например сохранение , отображение простых сущностей, пользователей. У вас будет репозитории не работающие с базой а просто Mock-репозитоиии, но реализующие интерфейсы. Так у вас появится Domain layer и очень тонкий Infrastructure Layer. Далее попробуйте реализовать бизнес логику и сценариции для работы с вашими сущностями, например регистрация пользователя, у вас появится Application Layer. Далее вам нужно организовать контроллеры или модули который будут отображать элементы интерфейса, вы создадите контролеры, вьюхи, модули(виджеты) и тд. например форма регистрации пользователя, так у вас появиться Presentation Layer. Далее вы переведете на динамику ваши репозитории, адаптеры и реализуете сохранение ваших пользователей в базу с помощью Activerecord или DataMapper. Так появиться Infrastructure Layer.
    Плюсы, бизнес логика не зависит от фраймворка, на каждом этапе слоя вы можете подключать фраймворк на уровне как минимум в Infrastructure Layer, Presentation Layer. При смене фраймворка будите менять только их.
    Тесты можно внедрять без проблем особенно на уровне домена и бизнес логики.

    Золотые слова дядюшки Боба:
    Когда вы пишите приложение на фраймворке для заказчика вы гарантируете разработку приложения и его поддержку в течении жизненного цикла, но какую гарантию дает вам разработчик фраймворка?
    Ответ написан более года назад
    Комментировать
    Комментировать
  • Как правильно выносить логику из моделей?

    dmitriylanets
    dmitriy @dmitriylanets
    веб-разработчик
    Я использую CommandBus и Command для организации бизнес логики, изменения состояния сущностей, в Сервисах если и остаётся то только на получение данных
    Ответ написан более года назад
    2 комментария
    2 комментария
  • Софт для планирования проектов? Аналоги Microsoft Office Project?

    dmitriylanets
    dmitriy @dmitriylanets
    веб-разработчик
    ganttpro.com
    Ответ написан более года назад
    Комментировать
    Комментировать
  • Корректно ли передавать объекты (с приватными свойствами и геттерами) во view только для чтения?

    dmitriylanets
    dmitriy @dmitriylanets
    веб-разработчик
    вытягивать сущности базы данных в слой представления это такое себе, измените поле и все шаблоны использующие накроются, причем накроются что вы не заметите например уведомление будет приходить клиенту а там пропадет его имя.
    поэтому я в вьюху стараюсь передать нужную структуру массив/DTO
    Ответ написан более года назад
    8 комментариев
    8 комментариев
  • Как быстро и безболезненно научиться проектированию в UML?

    dmitriylanets
    dmitriy @dmitriylanets
    веб-разработчик
    можно начать с книг
    Ответ написан более года назад
    Комментировать
    Комментировать
  • Вопрос по архитектуре, как реализовать класс коннектор для api стороннего сервиса?

    dmitriylanets
    dmitriy @dmitriylanets
    веб-разработчик
    в луковой используется расслоение с минимум на три слоя:
    Domain - ваши Entity, RepositoryInterface, Service
    Application - бизнес логика приложения
    Infrastructure - реализация контрактов, драйверов,Repository

    Допустим есть необходимость коннектиться к стороннему api сервиса для обработки каких-то данных

    то-что вы описали это инфраструктура, где храните и как ваше дело, конфиги могут быть в ini файле могут быть в бд.
    Ответ написан более года назад
    Комментировать
    Комментировать
Оценили как «Нравится»
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • Следующие →
Самые активные сегодня
  • NikFaraday
    Nik Faraday
    • 11 ответов
    • 0 вопросов
  • Drno
    • 5 ответов
    • 1 вопрос
  • DF Wastaken
    • 4 ответа
    • 1 вопрос
  • Никита Савченко
    • 2 ответа
    • 3 вопроса
  • Vindicar
    Vindicar
    • 5 ответов
    • 0 вопросов
  • AlexNest
    Александр Нестеров
    • 4 ответа
    • 0 вопросов
  • © Habr
  • О сервисе
  • Обратная связь
  • Блог

Войдите на сайт

Чтобы задать вопрос и получить на него квалифицированный ответ.
Войти через центр авторизации