书籍目录目录第1章基本概念11.1什么是设计模式21.2设计模式的作用31.3GRASP模式的分类41.4GoF设计模式的分类41.5模式的学习阶段6第2章担任任地设计对象——GRASP92.1InformationExpert(信息专家)112.2Creator(创造者)132.3LowCoupling(低耦合)142.4HighCohesion(高内聚)152.5Controller(控制器)172.6Polymorphism(多态)182.7PureFabrication(纯虚构)192.8Indirection(间接)202.9ProtectedVariations(受保护变化)21第3章GoF-CreationalDesignPatterns创建型设计模式233.1SimpleFactoryPattern(简单工厂模式)243.1.1定义243.1.2现实例子——国旗生产厂263.1.3C#实例1——电子付款系统263.1.4C#实例2——学校登录系统293.1.5Java实例——手机简单工厂323.1.6优势和缺陷343.1.7应用情景343.2FactoryMethodPattern(工厂方法模式)353.2.1定义353.2.2现实例子——兵工厂363.2.3C#实例——多文档系统373.2.4Java实例——扩展了的手机工厂413.2.5优势和缺陷443.2.6应用情景443.3AbstractFactoryPattern(抽象工厂模式)453.3.1定义453.3.2现实例子——扩展了的兵工厂483.3.3C#实例——大陆生态系统493.3.4Java实例——电脑产品523.3.5优势和缺陷573.3.6应用情景573.4BuilderPattern(建造者模式)583.4.1定义583.4.2现实例子——快餐店603.4.3C#实例——车间造车613.4.4Java实例——建造房屋653.4.5优势和缺陷693.4.6应用情景703.5PrototypePattern(原型模式)703.5.1定义703.5.2现实中的拷贝-粘贴713.5.3C#实例——颜色管理器723.5.4Java实例——简单ToolBar743.5.5ShallowCopy与DeepCopy763.5.6优势和缺陷823.5.7应用情景823.6SingletonPattern(单例模式)823.6.1定义823.6.2现?抵械牡ダ??猈indowsTaskManager833.6.3C#实例——负载均衡控制器843.6.4Java实例——系统日志863.6.5DoubleCheckLocking(双检锁)893.6.6优势和缺陷933.6.7应用情景93第4章GoF-StructuralDesignPatterns结构型设计模式954.1AdapterPattern(适配器模式)964.1.1定义964.1.2现实中的实例——电脑电源适配器974.1.3C#实例——化学数据银行984.1.4Java实例——清洁系统1024.1.5优势和缺陷1044.1.6应用情景1044.2BridgePattern(桥接模式)1044.2.1定义1044.2.2现实中的实例——男人的约会1064.2.3C#实例——商业对象与数据对象1074.2.4Java实例——不同系统的图像处理1124.2.5优势和缺陷1144.2.6应用情景1154.3CompositePattern(组合模式)1154.3.1定义1154.3.2组合模式的现实应用——资源管理器1174.3.3C#实例——图形树状对象结构1184.3.4Java实例——文档格式化1214.3.5优势和缺陷1244.3.6应用情景1254.4DecoratorPattern(装饰模式)1254.4.1定义1254.4.2现实中的装饰模式——相架1264.4.3C#实例——图书馆中的项目1274.4.4Java实例——自定义JButton1314.4.5优势和缺陷1334.4.6应用情景1344.5FacadePattern(外观模式)1344
2020/1/13 6:24:51 1.21MB 设计 模式 设计模式 设计模式之禅
1
运满满自开始微服务改造以来,线上线下已有数千个微服务的Java实例在运行中。
这些Java实例部署在数百台云服务器或虚机上,除少数访问量较高的关键应用外,大部分实例均混合部署。
这些实例的管理,采用自研平台结合开源软件的方式,已实现通过平台页面按钮菜单执行打包、部署、启动、停止以及回滚指定的版本等基本功能,取得了不错的效果。
但仍然存在如下几个痛点:1.实例间资源隔离,尤其在高峰期或故障期间,单服务器上不同实例间CPU和内存资源的争抢特别明显。
2.线上某个应用实例异常时需要人工干涉,导致较长的故障时间。
3.大批服务端应用新版上线后,如网站关键功能故障,需要针对每个应用,选择对应的版本,执行回滚操作,
1
《DesignbyContract原则与实践》是国内第一本系统阐述“契约式设计”思想和方法的译作,深刻理解和充分发挥契约在面向对象软件设计中的作用。
《DesignbyContract原则与实践》通过Eiffel、Java实例透彻分析DbC思想方法。
引入DbC六大原则和六大原则,指导你的应用实践。
精辟分析DbC在C/C++语言中的应用。
2021/11/13 6:11:04 9.84MB 契约
1
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡