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

.net网站开发全过程太原网络营销公司

.net网站开发全过程,太原网络营销公司,建设委员会的网站,中国电力工程造价信息网抽象工厂模式用于生成产品族的工厂,所生成的对象是有关联的。 如果抽象工厂退化成生成的对象无关联则成为工厂函数模式。 比如本例子中使用RDB和XML存储订单信息,抽象工厂分别能生成相关的主订单信息和订单详情信息。 如果业务逻辑中需要替换使用的时候…

抽象工厂模式用于生成产品族的工厂,所生成的对象是有关联的。

如果抽象工厂退化成生成的对象无关联则成为工厂函数模式。

比如本例子中使用RDB和XML存储订单信息,抽象工厂分别能生成相关的主订单信息和订单详情信息。 如果业务逻辑中需要替换使用的时候只需要改动工厂函数相关的类就能替换使用不同的存储方式了。

代码实现

package abstractfactoryimport "fmt"//OrderMainDAO 为订单主记录
type OrderMainDAO interface {SaveOrderMain()
}//OrderDetailDAO 为订单详情纪录
type OrderDetailDAO interface {SaveOrderDetail()
}//DAOFactory DAO 抽象模式工厂接口
type DAOFactory interface {CreateOrderMainDAO() OrderMainDAOCreateOrderDetailDAO() OrderDetailDAO
}//RDBMainDAP 为关系型数据库的OrderMainDAO实现
type RDBMainDAO struct{}//SaveOrderMain ...
func (*RDBMainDAO) SaveOrderMain() {fmt.Print("rdb main save\n")
}//RDBDetailDAO 为关系型数据库的OrderDetailDAO实现
type RDBDetailDAO struct{}// SaveOrderDetail ...
func (*RDBDetailDAO) SaveOrderDetail() {fmt.Print("rdb detail save\n")
}//RDBDAOFactory DAO抽象工厂实现
type RDBDAOFactory struct{}func (*RDBDAOFactory) CreateOrderMainDAO() OrderMainDAO {return &RDBMainDAO{}
}func (*RDBDAOFactory) CreateOrderDetailDAO() OrderDetailDAO {return &RDBDetailDAO{}
}//XMLMainDAO XML存储
type XMLMainDAO struct{}//SaveOrderMain ...
func (*XMLMainDAO) SaveOrderMain() {fmt.Print("xml main save\n")
}//XMLDetailDAO XML存储
type XMLDetailDAO struct{}// SaveOrderDetail ...
func (*XMLDetailDAO) SaveOrderDetail() {fmt.Print("xml detail save")
}//XMLDAOFactory DAO抽象工厂实现
type XMLDAOFactory struct{}func (*XMLDAOFactory) CreateOrderMainDAO() OrderMainDAO {return &XMLMainDAO{}
}func (*XMLDAOFactory) CreateOrderDetailDAO() OrderDetailDAO {return &XMLDetailDAO{}
}

在这里插入图片描述

单元测试

package abstractfactoryfunc getMainAndDetail(factory DAOFactory) {factory.CreateOrderMainDAO().SaveOrderMain()factory.CreateOrderDetailDAO().SaveOrderDetail()
}func ExampleRdbFactory() {var factory DAOFactoryfactory = &RDBDAOFactory{}getMainAndDetail(factory)// Output:// rdb main save// rdb detail save
}func ExampleXmlFactory() {var factory DAOFactoryfactory = &XMLDAOFactory{}getMainAndDetail(factory)// Output:// xml main save// xml detail save
}
http://www.yidumall.com/news/57012.html

相关文章:

  • 不要营业执照的做网站国外域名注册
  • seo站长助手关键词排名优化易下拉软件
  • 丽水网站建设报价五个成功品牌推广案例
  • 要如何自己创建一个网站宁德市
  • 河南省建设厅职称网站seo外链优化策略
  • 河南网站网站制作微信群推广网站
  • 南宁市两学一做网站上海全国关键词排名优化
  • 网站建设的优势网站推广名词解释
  • 用什么做asp网站微博推广有用吗
  • 建设网站定制网上培训课程平台
  • wordpress 便利贴哈尔滨seo关键词优化
  • 做窗帘的网站网站排行榜查询
  • 网站的模块自动外链工具
  • 邢台移动网站建设费用百度论坛首页官网
  • 建立免费网站的步骤山西网页制作
  • 嘉兴网嘉兴网站建设谷歌搜索入口 镜像
  • 企业官网定制设计开发百度seo提高排名费用
  • 360做网站荆州新东方在线网上课程
  • 哪些大型网站有做互联网金融百度提问首页
  • 免费个人网站服务器bb厦门人才网招聘官网
  • 关于国际贸易的网站晨阳seo服务
  • 做网站联盟seo怎么推排名
  • 网站上传图片尺寸苏州seo关键词优化排名
  • wordpress 下载的主题插件在俺儿优化防疫措施
  • 婚纱影楼网站源码软文广告成功案例
  • 凡科网之前做的网站在哪看东莞网站公司哪家好
  • 做推广类门户网站怎么样青岛优化网站关键词
  • 网站如何添加图标怀化网络推广
  • 营销型网站建设的一般过程包括哪些环节?怎么做网站广告
  • app网站建设web制作网站的模板