Чистый код на PHP. Функции.

Принципы разработки программного обеспечения, из книги Роберта К. Мартина «Чистый код», адаптированной для PHP. Это не руководство по стилю. Это руководство по созданию читаемого, многоразового и рефакторируемого программного обеспечения на PHP.

Не каждый принцип должен строго соблюдаться, и еще меньше будет универсальными. Это руководящие принципы и не более того, но они кодифицированы многолетним коллективным опытом авторов Clean Code.

Хотя многие разработчики все еще используют PHP 5, большинство примеров в этой статье работают только с PHP 7.1+.

Читать далее

Чистый PHP код. Переменные.

Принципы разработки программного обеспечения, из книги Роберта К. Мартина «Чистый код», адаптированной для PHP. Это не руководство по стилю. Это руководство по созданию читаемого, многоразового и рефакторируемого программного обеспечения на PHP.

Не каждый принцип должен строго соблюдаться, и еще меньше будет универсальными. Это руководящие принципы и не более того, но они кодифицированы многолетним коллективным опытом авторов Clean Code.

Хотя многие разработчики все еще используют PHP 5, большинство примеров в этой статье работают только с PHP 7.1+.

Читать далее

Репозитории Magento 2, интерфейсы и веб-API

Magento 2 представиляет репозитории для большинства основных объектов, таких как продукты, заказы, клиенты и т. д.

В этом посте хотелось бы объяснить причины, по которым вы должны хотеть или не хотеть создавать репозитории для своих пользовательских объектов, и, надеюсь, показать, как их создать, если вы придите к выводу, что для вас  это имеет смысл.

Читать далее

Magento 2. Атрибуты EAV и расширенные атрибуты.

Magento предоставляет два типа атрибутов, которые интеграторы могут использовать для расширения функциональности, предоставляемой из коробки:

  • Пользовательские и EAV (атрибут Entity-Attribute-Value). Пользовательские атрибуты добавляются от имени продавца. Например, продавцу может потребоваться добавить атрибуты для описания продуктов, например формы или объема. Торговец может добавить эти атрибуты на панели администратора, и эти атрибуты могут быть отображены. Сведения об управлении настраиваемыми атрибутами см. В документации продавца. Пользовательские атрибуты — это подмножество атрибутов EAV. Объекты, которые используют атрибуты EAV, обычно хранят значения в нескольких таблицах MySQL. Модули Customer и Catalog имеют основные модели, которые используют атрибуты EAV. Другие модули, такие как ConfigurableProduct, GiftMessage и Tax, используют функциональность EAV из Catalog.
  • Атрибуты расширения. Атрибуты расширения являются новыми в Magento 2. Они используются для расширения функциональности и часто используют более сложные типы данных, чем настраиваемые атрибуты. Эти атрибуты не отображаются в графическом интерфейсе.

Читать далее

Magento 2. Добавление расширенных атрибутов в сущность

Сторонние разработчики не могут менять API Data интерфейс Magento Core, но есть одним способ конфигурации интерфейсов, — добавление расширенных атрибутов .

Мы продемонстрируем это на примере сущности Product , Product Repository и Web Api.

Читать далее

Новое в Symfony 3.2: Переменные окружения

Переменные окружения становятся все более популярными для управления конфигурацией приложений. Они являются одним из основных понятий «12-факторного приложения». Их основные преимущества в том, что они могут быть изменены в результате процесса развертывания приложения без изменения кода, и что с ними не возникает проблем при публикации в репозитории.

Читать далее

Новое в Symfony 3.2: Изменения компонента Filesystem

Компонент Filesystem представляет собой небольшой пакет, который предоставляет удобные утилиты для общих операций файловой системы. Он также позволяет абстрагироваться при работе с файлами в различных операционных системах.

Читать далее

Новое в Symfony 3.2: Изменения в синтаксисе YAML

Symfony 3.2 представит незначительное изменение синтаксиса YAML для того, чтобы сделать компонент YAML полностью совместим со спецификацией YAML.

Читать далее

Новое в Symfony 3.2: Улучшенные приватные сервисы

Приватные сервисы поддерживались контейнером сервисов Symfony с первого дня. По умолчанию все сервисы являются публичными, но установка опции public в false превращает их в приватные

Читать далее

Новое в Symfony 3.2: Поддержка Unicode в маршрутах

В Symfony 3.2, в компонент маршрутизации была добавлена поддержка UTF-8 символов в маршрутах. Благодаря этой новой опции, вы можете устанавливать и генерировать маршруты, содержащие UTF-8 символы

Читать далее