当前位置: 首页 > news >正文

电商企业网站建设情况企业网络营销策划平台

电商企业网站建设情况,企业网络营销策划平台,建设一个网站需要哪些软硬件条件,网站首页不在第一位以下是基于Python实现的23种设计模式及代码段和详细解释#xff1a; 1. 工厂模式#xff08;Factory Pattern#xff09; 简介 工厂模式是一种创建型设计模式#xff0c;它允许客户端代码通过工厂方法创建对象#xff0c;而无需直接实例化对象。在工厂方法模式中#…以下是基于Python实现的23种设计模式及代码段和详细解释 1. 工厂模式Factory Pattern 简介 工厂模式是一种创建型设计模式它允许客户端代码通过工厂方法创建对象而无需直接实例化对象。在工厂方法模式中我们定义一个工厂方法来创建对象而不是使用类的构造函数。 代码段 from abc import ABC, abstractmethodclass Product(ABC):抽象产品类定义所有具体产品的接口abstractmethoddef operation(self) - str:passclass ConcreteProduct(Product):具体产品类def operation(self) - str:return ConcreteProductclass Creator(ABC):抽象创建者类声明工厂方法返回一个产品类的实例abstractmethoddef factory_method(self) - Product:passdef some_operation(self) - str:可选创建者还可以提供一些默认实现product self.factory_method()result fCreator: {product.operation()}return resultclass ConcreteCreator1(Creator):具体创建者1实现工厂方法以返回具体产品1的实例def factory_method(self) - Product:return ConcreteProduct()class ConcreteCreator2(Creator):具体创建者2实现工厂方法以返回具体产品2的实例def factory_method(self) - Product:return ConcreteProduct()def client_code(creator: Creator) - None:客户端代码只需要知道创建者的抽象类无需关心具体实现类print(fClient: Im not aware of the creators class, but it still works.\nf{creator.some_operation()}, end)if __name__ __main__:print(App: Launched with the ConcreteCreator1.)client_code(ConcreteCreator1())解释 该代码段演示了工厂模式其中有一个抽象产品类和其具体实现类。还有一个抽象创建者类来声明工厂方法和可选的默认实现。具体创建类实现工厂方法以返回具体产品类的实例。客户端代码调用抽象创建者而不是具体创建子类。 2. 抽象工厂模式Abstract Factory Pattern 简介 抽象工厂是一种创建型设计模式它允许您创建一组相关的对象而无需指定其具体类。抽象工厂定义了一个接口用于创建相关的对象而不指定具体类。 代码段 from abc import ABC, abstractmethodclass AbstractFactory(ABC):抽象工厂类声明所有产品创建方法。abstractmethoddef create_product_a(self):passabstractmethoddef create_product_b(self):passclass ConcreteFactory1(AbstractFactory):具体工厂1生成一组具有相互依赖关系的产品。def create_product_a(self):return ConcreteProductA1()def create_product_b(self):return ConcreteProductB1()class ConcreteFactory2(AbstractFactory):具体工厂2生成一组具有相互依赖关系的产品。def create_product_a(self):return ConcreteProductA2()def create_product_b(self):return ConcreteProductB2()class AbstractProductA(ABC):抽象产品A类定义具体产品共有的方法abstractmethoddef useful_function_a(self) - str:passclass AbstractProductB(ABC):抽象产品B类定义具体产品共有的方法abstractmethoddef useful_function_b(self) - None:passabstractmethoddef another_useful_function_b(self, collaborator: AbstractProductA) - None:passclass ConcreteProductA1(AbstractProductA):具体产品A1实现抽象产品A类的接口def useful_function_a(self) - str:return The result of the product A1.class ConcreteProductA2(AbstractProductA):具体产品A2实现抽象产品A类的接口def useful_function_a(self) - str:return The result of the product A2.class ConcreteProductB1(AbstractProductB):具体产品B1实现抽象产品B类的接口def useful_function_b(self) - str:return The result of the product B1.def another_useful_function_b(self, collaborator: AbstractProductA) - str:B1实现了与特定产品A相关的功能。result collaborator.useful_function_a()return fThe result of the B1 collaborating with the ({result})class ConcreteProductB2(AbstractProductB):具体产品B2实现抽象产品B类的接口def useful_function_b(self) - str:return The result of the product B2.def another_useful_function_b(self, collaborator: AbstractProductA) - str:B2实现了与特定产品A相关的功能。result collaborator.useful_function_a()return fThe result of the B2 collaborating with the ({result})def client_code(factory: AbstractFactory) - None:客户端代码仅与抽象工厂及其产品接口一起使用。product_a factory.create_product_a()product_b factory.create_product_b()print(f{product_b.useful_function_b()})print(f{product_b.another_useful_function_b(product_a)}, end)if __name__ __main__:print(Client: Testing client code with the first factory type...)client_code(ConcreteFactory1())print(\n)print(Client: Testing the same client code with the second factory type...)client_code(ConcreteFactory2())解释 该代码段演示了抽象工厂模式其中有一个抽象工厂类和多个实现不同产品分类的具体工厂类。每个工厂类都实现了工厂方法来生产不同类型的产品。每个产品类实现了共同的抽象产品接口。客户端代码只与抽象工厂和产品接口一起使用而不需要关心具体实现类。 3. 建造者模式Builder Pattern 简介 建造者模式是一种创建型设计模式它允许您使用相同的构建代码生成不同类型和形式的对象。建造者模式的精髓在于将对象构建过程与其表示分离。 代码段 from abc import ABC, abstractmethod from typing import Anyclass Builder(ABC):抽象建造者类声明所有产品构建步骤。abstractmethoddef produce_part_a(self) - None:passabstractmethoddef produce_part_b(self) - None:passabstractmethoddef produce_part_c(self) - None:passabstractmethoddef get_result(self) - Any:passclass ConcreteBuilder1(Builder):具体建造者类1实现所有产品构建方法并返回最终结果。def __init__(self) - None:self.reset()def reset(self) - None:self.product Product1()def produce_part_a(self) - None:self.product.add(PartA1)def produce_part_b(self) - None:self.product.add(PartB1)def produce_part_c(self) - None:self.product.add(PartC1)def get_result(self) - Product1:result self.productself.reset()return resultclass ConcreteBuilder2(Builder):具体建造者类2实现所有产品构建方法并返回最终结果。def __init__(self) - None:self.reset()def reset(self) - None:self.product Product2()def produce_part_a(self) - None:self.product.add(PartA2)
http://www.dnsts.com.cn/news/202415.html

相关文章:

  • 仿牌网站安全html中文网页模板素材
  • 服装如何做微商城网站wordpress 修改点击数
  • 网站镜像 cdn门户网站建设内
  • 大连网站制作 连城传媒建设网校
  • 南宁物流公司网站建设wordpress充值漏洞
  • 微网站菜单公司做网站怎么推广
  • 自适应网站导航怎么做花都区水务建设管理中心官方网站
  • 辽阳市网站建设网站建设 安庆
  • 如何规划一个外贸网站自己的电脑做网站服务器 买的服务器 速度
  • 网站建设浦东凡科轻站小程序怎么样
  • 400网站建设推广ui界面图片
  • 蓝鸟E4A做网站程序两个网站放在同一个空间有什么影响吗
  • 高新网站制作哪家好九度互联网站建设
  • 网站服务器迁移步骤在线培训网站怎么做
  • 东莞网站seo技术查看网站速度
  • 聊城建设银行网站设计制造中国第一架飞机的人是
  • 来安网站建设旅游海外推广网站建设方案
  • 如何做产品展示网站网站建设2018
  • 山西seo网站设计域名取消wordpress
  • 山西网站建设公司哪家好给几个那方面网站网址
  • 无聊网站建设手机代理服务器免费版
  • 用jsp做的网站源代码企业管理培训课程心得体会
  • 服务器用来做网站空间网站设网站设计
  • 宁远县建设局网站网站被黑 发现
  • 网站开发众包平台宣传册设计与制作图片
  • 找人做网站需要注意wordpress 安装 失败
  • 郑州网站推广哪家效果好wordpress企业版百度小程序
  • 十大下载网站免费安装建设网站哪些好
  • 公路建设查询网站昭阳区住房和城乡建设管理局网站
  • 左右翻网站模版ui中有哪些做的好看的网站