Magento 架构原则
Magento架构原则
》OOP体系结构和编程原则
OOP体系结构和编程原则面向对象编程(OOP)设计允许软件组件具有最大的灵活性和可扩展性,允许您设计和实现高度定制的网站。面向对象原则的优点包括结合行业标准的编程设计模式以及业务逻辑与表示的严格分离。对象继承也很重要:与经典的面向对象的编程方法一致,Magento平台为核心组件提供了基本功能,可以由特定网站或应用程序的自定义组件继承。》强大的分层产品架构
这支持视觉呈现与业务逻辑的分离。这种划分简化了商店外观和行为的定制。架构层还为程序员提供了高级模型,以便了解复杂系统中功能和代码的最佳位置。然而,Magento调整了经典的Model-View-Controller体系结构模型:模块中的文件通常按功能而不是文件类型分组。Magento框架定义了网站组件如何表现的基本概念和规则。Magento框架包含模块访问的库,但不包含业务逻辑组件。它接受HTTP请求并将它们路由到适当的模块。-表示层
表示层提供视图组件(布局,块,模板)和控制器,它们处理来自和来自用户界面的命令。表示层还可以包含Web API服务绑定。(我们将这些服务绑定包含在表示层模型的讨论中,因为Web API调用像浏览器请求一样通过HTTP进入,并且可以通过来自用户界面的AJAX调用来进行。因此,尽管Web API调用可能来自外部应用程序,它们也可以源自用户界面。)-服务层
通过使用服务合同,服务层定义了与业务逻辑交互的整体界面(例如,创建客户和获得税率)。服务合同简化了替换或修改(通过插件)服务的过程。-域图层
域层(也称为业务逻辑层)提供了可以扩展和自定义的基类,资源模型和数据访问功能的业务逻辑和功能。》易于扩展
Magento使用依赖注入和服务契约来简化为定义的API提供新实现的过程。依赖注入的好处包括:使用模块或服务的客户端可能仍然不了解模块或服务的实现细节您可以修改模块,而无需在使用依赖注入框架将应用程序逻辑连接在一起的任何地方更改客户端。服务合同提供了一种访问公共API端点的新方法。这些模块的PHP接口简化了大多数模块的API使用。依赖注入的好处包括:
- 使用模块或服务的客户端可能仍然不了解模块或服务的实现细节。
- 您可以修改模块,而无需在使用依赖注入框架将应用程序逻辑连接在一起的任何地方更改客户端。
服务合同提供了一种访问公共API端点的新方法。这些模块的PHP接口简化了大多数模块的API使用。
》模块化模块
是Magento系统的基本功能单元。Magento模块包含执行所需操作和功能的逻辑。通过编写和将新模块合并到您的安装中来扩展Magento的核心功能集。使用Magento主题和语言包创建商店的视觉设计和语言功能。
》高度可定制的商店品牌
扩展和自定义Magento商店基于PHP,HTML5和CSS3的默认主题和语言包的核心组件,以精确控制您网站的行为和外观。
》大量的开源技术
Magento技术栈提供了一个强大的工具集,用于部署大型分布式店面并根据您的特定需求定制产品。Magento堆栈包括流行的开源技术,如Linux操作系统,Apache / Nginx服务器,MySQL,Zend和Composer。有关Magento技术堆栈的全面介绍,请参阅Magento技术堆栈。
Magento 架构原则的更多相关文章
- Magento 架构基础知识概述
Megento 架构基础知识概述 Magento整合了面向对象的基于PHP的应用程序的核心架构原则.这些一般原则的综合讨论既有在线的,也有印刷形式.以下讨论主要关注这些主题如何直接应用于Magento ...
- Magento架构分析,Magento MVC 设计分析
Magento架构分析,Magento MVC 设计分析 分类:Magento 标签:Magento MVC.Magento架构 669人浏览 Magento 采用类似 JAVA的架构,其扩展与稳定性 ...
- Magento架构师的笔记-----Magento显示当前目录的父分类和子分类的分类名
在Magento目录的分类页面里,希望在左侧导航获取到父分类和子分类,可以用以下方法:打开app/your_package/your_themes/template/catalog/navigatio ...
- REST架构原则初探
目录 什么是RESTful架构? REST 架构原则 资源(Resource) 表现层(Representation) 状态转换(State Transfer) 无状态通信原则 RESUful API ...
- JavaScript全讲-架构原则解析
因为近期一直在忙,非常久没有更新,见谅. 上篇我们讲完JavaScript函数式编程的特性,今天我们就来聊聊JavaScript中的架构. 提到JavaScript架构.非常多人会认为不可思议,由于架 ...
- Twitter的支撑架构:扩展网络与存储并提供服务——架构原则:一次性将事情做对,NFL原则 LSM+B+存储替代cassandra
Twitter工程团队近期提供了Twitter核心技术的演进和扩展的详细资料,这些核心技术支撑了Twitter自营数据中心的系统架构,用于提供社会媒体服务.他们分享的关键经验包括:超越原始规格和需求进 ...
- UML-架构分析-架构原则
1.高内聚 2.低耦合 3.防止变异(间接性等) 4.关注点分离 方法1: 事物模块化,封装到单独的子系统中 方法2: 装饰者模式 方法3: 面向方面(AOP)
- Srinath总结 架构师们遵循的 30 条设计原则
作者:Srinath 翻译:贺卓凡,来源:公众号 ImportSource Srinath 通过不懈的努力最终总结出了 30 条架构原则,他主张架构师的角色应该由开发团队本身去扮演,而不是专门有个架构 ...
- 【转】Apache的架构师们遵循的30条设计原则
本文作者叫Srinath,是一位科学家,软件架构师,也是一名在分布式系统上工作的程序员. 他是Apache Axis2项目的联合创始人,也是Apache Software基金会的成员. 他是WSO2流 ...
随机推荐
- Xaramin IOS 开发常见问题
调试时提示找不到obj某某文件,勾选后编译,再取消勾选后再次调试 APP不能上网(而且无法通过配置允许上网的APP,因为根本 找不到需要的APP),不要使用IOS11测试版本,自动禁网 截图路径 %U ...
- .net core 验证 Options 参数
.net core 中通过 PostConfigure 验证 Options 参数 Intro 在 .net core 中配置项推荐用 Options 来实现,有一些参数可能必须是用由用户来配置,不能 ...
- ubuntu下解压rar文件
ubuntu 下rar解压工具安装方法: 压缩功能 sudo apt-get install rar 1 解压功能 sudo apt-get install unrar 1 使用 可以直接在UI界面使 ...
- Windbg学习笔记
下载winsdksetup.exe ,双击,选择Debugging Tools for Windows安装. 64位系统抓64位进程dump,用64位windbg来分析.64位系统抓32位进程dump ...
- vue.js的手脚架vue-cli项目搭建的步骤
手脚架是什么? 众所周知,现在的前端项目发展得越渐越大,我们前端程序员要从0开始去搭建一套完整的项目很费时,所以这时候前端工程的手脚架就出现了. 我用得vue-cli也是其中之一,还有其他的我也说不清 ...
- 会话固定攻击 - yxcms session固定漏洞
目录 会话固定攻击 e.g. yxcms session固定攻击 分析 了解更多 会话固定攻击 Session fixation attack(会话固定攻击)是利用服务器的session不变机制,借他 ...
- tofixed方法 四舍五入
tofixed方法 四舍五入 toFixed() 方法可把 Number 四舍五入为指定小数位数的数字.例如将数据Num保留2位小数,则表示为:toFixed(Num):但是其四舍五入的规则与数学中的 ...
- C#微信支付对接
c#版在pc端发起微信扫码支付 主要代码: /** * 生成直接支付url,支付url有效期为2小时,模式二 * @param productId 商品ID * @return 模式二URL */ ...
- 有两个表A和B,均有key和value两个字段,如果B的key在A中也有,就把B的value替换为A中对应的value
update B b set b.value=(select max(a.value) from A a where b.key=a.key) from A c where b.key=c.key) ...
- SAP CRM 集类型(Set Type)与产品层次(Product Hierarchy)
本文是产品与对象相关的部分SAP文档的翻译,不包含配置部分. 本文链接:https://www.cnblogs.com/hhelibeb/p/10112723.html 1,对象(Objects) 对 ...