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

番禺网站建设开发怎么自己做一个网站平台

番禺网站建设开发,怎么自己做一个网站平台,tp5.1做的网站,网站 关键字 标签设计模式 目的 实现可重用解决方案,构筑易维护、可扩展的软件系统。 六大原则 单一职责: 类的职责单一,一个方法做一件事。 开闭原则: 拓展开放,修改关闭。 里氏替换: 父类能出现的地方,子…

设计模式

目的

实现可重用解决方案,构筑易维护、可扩展的软件系统。

六大原则

单一职责: 类的职责单一,一个方法做一件事。

开闭原则: 拓展开放,修改关闭。

里氏替换: 父类能出现的地方,子类可以替换。子类必须全部实现父类方法,尽量不暴露自己public方法供外界使用。覆盖或实现父类方法时,输入参数可以多。

依赖倒置: 模块之间的依赖通过抽象发生,具体类之间不依赖。每个类尽量有抽象类,任何类不应该从具体类派生,尽量不重写基类方法。

迪米特法则: 尽量减少对象间交互,从而减少类间耦合。

接口隔离原则: 类间的依赖关系建立在最小的接口上。

抽象构建框架,实现拓展细节。

单例模式

一个类只有一个对象,及系统中只有一个实例,实例被所有程序模块共享。

例如服务器配置信息放在一个文件中,配置数据由单例对象统一读取,服务进程的其他对象通过单例对象获取配置信息。

实现

有饿汉模式和懒汉模式两种实现模式。

饿汉模式

程序启动就创建唯一实例对象。

多线程获取单例对象不需要加锁。

#include <iostream>
#include <string>class Singleton {
private:// 私有构造函数,防止外部创建实例Singleton() : data("Singleton") {std::cout << "Singleton instance created!" << std::endl;}// 私有析构函数,防止外部删除实例~Singleton() {}// 删除拷贝构造函数和赋值运算符Singleton(const Singleton&) = delete;Singleton& operator=(const Singleton&) = delete;// 静态成员变量,类加载时初始化static Singleton instance;// 成员变量std::string data;public:// 获取单例对象的静态方法static Singleton& getInstance() {return instance;}// 获取成员变量的方法std::string& getData() {return data;}
};// 在类外初始化静态成员变量
Singleton Singleton::instance;int main() {// 获取单例对象Singleton& singleton = Singleton::getInstance();// 访问单例对象的成员变量std::cout << "Data: " << singleton.getData() << std::endl;// 再次获取单例对象,验证是否为同一个实例Singleton& singleton2 = Singleton::getInstance();if (&singleton == &singleton2) {std::cout << "Both references point to the same instance!" << std::endl;}return 0;
}

懒汉模式

如果单例对象构造特别耗时或者耗资(加载插件、网络),可在第一次使用时才创建对象。

C++11 之后,局部静态变量的初始化是线程安全的,因此可以直接使用局部静态变量实现懒汉模式

#include <iostream>
#include <string>class Singleton {
private:// 私有构造函数,防止外部创建实例Singleton() : data("Singleton") {std::cout << "Singleton instance created!" << std::endl;}// 私有析构函数,防止外部删除实例~Singleton() {}// 删除拷贝构造函数和赋值运算符Singleton(const Singleton&) = delete;Singleton& operator=(const Singleton&) = delete;// 成员变量std::string data;public:// 获取单例对象的静态方法static Singleton& getInstance() {static Singleton instance;  // 局部静态变量,线程安全return instance;}// 获取成员变量的方法std::string& getData() {return data;}
};int main() {// 获取单例对象Singleton& singleton = Singleton::getInstance();// 访问单例对象的成员变量std::cout << "Data: " << singleton.getData() << std::endl;// 再次获取单例对象,验证是否为同一个实例Singleton& singleton2 = Singleton::getInstance();if (&singleton == &singleton2) {std::cout << "Both references point to the same instance!" << std::endl;}return 0;
}

推荐一下

https://github.com/0voice

http://www.15wanjia.com/news/55969.html

相关文章:

  • vshtml5网站开发首页百度
  • 电子商务平台网站开发全球网站排名
  • ps做景观有哪些素材网站榆林市网站seo
  • 网站正能量不用下载直接进入主页可以吗培训机构咨询
  • 网站后台维护月薪多少关键词seo排名优化
  • 三端网站如何做下载百度安装
  • dedecms 企业网站河南制作网站
  • cms做淘宝客网站适合企业员工培训的课程
  • 外贸电商网站开发价格网站建设山东聚搜网络
  • 手机做网站公司有哪些关键词优化排名seo
  • wordpress 二次元交互企业seo
  • 关于网站建设的网站有哪些浙江百度推广开户
  • 企业建设网站公司简介济南seo网络优化公司
  • 做美甲团购网站企业网站设计价格
  • 邯郸网络运营中心电话号码百度网络优化
  • 合肥建设工程信息网站下载百度卫星导航
  • 做的好的农产品网站重庆网络推广平台
  • 网站建设的公司哪家好数据分析培训班
  • 上海市住房与建设委员会网站seo怎么做优化方案
  • 闸北区网站建设搜索引擎优化有哪些要点
  • 网站建设需要什么知识网站seo优化皆宣徐州百都网络不错
  • 怎样清理网站后门上海关键词seo
  • 口碑好网站建设电话精准广告投放
  • 网站仿制 个人百度爱采购推广平台
  • 惠州网站建设熊掌号网络营销模式案例
  • 温州网站制作建设今日头条热搜
  • 开封网站开发上海培训机构整顿
  • 广州市研发网站建设平台地推
  • 企业网站改版新闻电脑零基础培训班
  • 移动网站好处种子搜索神器 bt 下载