All posts by Pramod T P

Data fixture

A data fixture is a PHP script that sets data you want to reuse in your test. The script can be defined in a separate file or as a local test case method.

Use data fixtures to prepare a database for tests. The Integration Testing Framework (ITF) reverts the database to its initial state automatically. To set up a date fixture, use the @magentoDataFixture annotation.

Constructor Property Promotion

Constructor Property Promotion is a simple shorthand syntax to declare and assign class properties from the constructor. It basically tells the way data has to be treated in code. Constructor Property Promotion is a new syntax provided in the newer version of PHP 8 that allows class property declaration and constructor assignment, variable assignment right from the constructor without getting in the condition of boilerplate code. This avoids having to type the class property name and property type from many to just once. It also avoids using repeated types. Promoted properties can only be used in constructors. Properties will be assigned before the rest of the constructor code is executed.

Named Arguments

Named arguments is a new feature introduced in PHP 8.0, which allows you to pass arguments to a function or method by specifying the parameter name along with the value. This feature provides developers with more flexibility and improves code readability.

Traditionally, in PHP, function parameters are passed by position, which means the order in which arguments are passed to a function must match the order of the parameters in the function signature. In contrast, named arguments allow you to specify which parameter you are passing the argument to, without being constrained by the order.

Customer Attributes

Customer attributes provide the information that is required to support the order, fulfillment, and customer management processes. Because your business is unique, you might need fields in addition to those provided by the system. You can add custom attributes to the Account Information, Address Book, and Billing Information sections of the customer’s account. Customer address attributes can also be used in the Billing Information section during checkout, or when guests register for an account.

https://docs.magento.com/user-guide/v2.3/stores/attributes-customer.html

 

Payment Method Facade

Payment facade it is an instance of Payment Adapter configured with virtual types and allows to process payment actions between Magento Sales Management and payment processor.

Add the dependency injection (DI) configuration for payment method facade in your %Vendor_Module%/etc/di.xml.

https://devdocs.magento.com/guides/v2.3/payments-integrations/base-integration/facade-configuration.html

Content Staging

Content staging gives your business team the ability to easily create, preview, and schedule a wide range of content updates for your store directly from the Admin. For example, rather than thinking in terms of a static page, consider a page to be a collection of different elements that can be turned on or off based on a schedule. You can use content staging to create a page that changes automatically throughout the year on schedule.

Content staging is a feature that allows creating, previewing, and scheduling content updates for your store
directly from the Admin . You can use content staging to create campaigns that include changes to products,
categories, pages, blocks, widgets, price rules, and more.

AMQP

Advanced Message Queuing Protocol (AMQP) is created as an open standard protocol that allows messaging interoperability between systems, regardless of message broker vendor or platform used; With AMQP, you can use whatever AMQP-compliant client library you want, and any AMQP-compliant broker you want. Message clients using AMQP are completely agnostic.

AMQP is an application layer protocol that lets client applications talk to the server and interact. However, AMQP should not just be considered a protocol used for over-the-wire communication; AMQP defines both the network layer protocol and a high-level architecture for message brokers.

It defines a set of messages capabilities which must be made available by an AMQP compliant server implementation (like RabbitMQ). Including rules of how messages must be routed and stored within the broker to follow the AMQ Model.