In the Last Two Postswe saw some features of Magento for scalability, performance and product security. We discussed how Magento will resolve its slower processing issues and separate processing units requirements especially for big stores. Also OWASP top 10 points will surely be dealt with to cope up with security issues. Let us see remaining features of Magento 2 and what they bring for us.
Modular Approach:
Magento 2 offers different approach in developing modules with respect to its structure. Currently structure of Magento already expresses high level of division in implementation of frontend and backend to avoid any dependency conflicts within a module or when you update or inject someone’s code into your module.
One of the reasons of module conflicts is the use of dependencies and class rewriting. Also incorrect use of class methods may cause severe conflicts. The cause of dependency problems more often is the use of class overriding. Eliminating it resolves the problem. To avoid these types of problems Magento 2 requires well defined and documented APIs for your module.
Modular approach means that you just plug n play a piece of code which neither affects any other module nor gets itself disturbed. It is intended that these modules will be implemented in a manner in which they will not affect the performance of overall system. You will be able to simply install or remove, enable or disable any Magento Plugins.
To provide better performance current file structure will be changed such as the folder hierarchy “local-community-core” will be eliminated. There will be just one module directory under which all the files will be maintained. JSLib, media and skin files will be moved to “pub” folder which will be publically accessible while other directories within a module will be protected means they will not be publically accessible.
There will be a folder within a module names as “view” which shall hold all template files for the module, there will also be a change in the way objects are instantiated , instead of using Mage::getModel(‘catalog/product’), following shall be used “createObject(‘’)”, instead of “getTable(‘catalog/product’)”, “it will use getTable(‘catalog_product_entity’)”. Due to these changes current Magento modules will needed to be migrated to new version.
Continued in next part...
http://bestmagentoextensions.wordpress.com/
Article Source: Features of Magento 2 – Part 3
No comments:
Post a Comment