发文章
发文工具
撰写
网文摘手
文档
视频
思维导图
随笔
相册
原创同步助手
其他工具
图片转文字
文件清理
AI助手
留言交流
这个模式不一定能用GoF的那类表述方式来描述,但却几乎可以在大多的成功产品中看到影子。
它可以表述成:软件的架构要支持开放数据,并提供API让别人可以编程定制或扩展你的程序。
有人可能一听后说:这不就是插件么?但把这个等同于插件是把它看小了,插件只是它的一个子集。
那么那些足够牛的产品中用过这个模式?
真不好一一列举,立刻能想到的是PC时代的AutoCAD和Excel这种,我有时候甚至怀疑Becky!这邮件客户端之所以能活得很好和大量的插件可能有很大的关系。往当下想就是微信这种。
当然如果非往这个上扯的话,那各大平台乃至操作系统事实上是这一模式的最大用户,Linux在很多地方能够干翻Unix和VxWorks这样的操作系统和它的外围工具不断成熟应该有很大关系,而之所以它的外围工具能够不断成熟则与其开放精神有着本质关联。
那为什么这个模式如此有价值?
说起来故事也简单,假设说需求是不断变化的而不同人的需求也不同,那么就世界上就不存在能够足够满足需求的产品。
那对于一个产品而言这部分无法满足的需求究竟应该怎么办?
你要么不理它任由别人抱怨,这类产品注定成不了成功的产品。要么就得把开放精神体现在产品里,让别人来满足五花八门的需求。所以说这个模式是很多优秀产品的一种必然选择。浏览器这样,微信也这样---只要你的产品还需要面对比较复杂的需求环境,没认识到并且没有为此做出应对的,基本上会处在纠结和痛苦中,并为之付出代价。
近来眼见有些在做的东西被需求变化折磨的焦头烂额,一下子就想到了常说的设计模式,也就进一步想到了上边这事,泛泛的讲这也是一种模式,虽然看着和常说的那种设计模式不一样,但在应对需求的时候它应该挺关键的。
来自: 昵称10504424 > 《工作》
0条评论
发表
请遵守用户 评论公约
GoF设计模式小结- -
23个模式已经都学习完毕了,经过了挺长的时间,也领悟了很多东西。技术是为需求提供服务的,每个实际案例的需求都不同,很难有十全十美的东西,对于模式的使用,并不在多而在于准,在恰当的地方使用恰...
创建型设计模式总结
创建型设计模式,就是用来创建对象的设计模式,根据要创建的对象的复杂度以及是否允许多实例以及是否需要容易扩展等多方面考虑去选择合适的设计模式来创建对象。抽象工厂,提供一系列相关或相互依赖对...
需求管理
本文旨在探究需求管理的本质,需求管理所要涉及的任务在文中将适时提及,以阐释"需求管理之需求(requirements for requirements)...
设计模式-工厂模式
由于简单工厂模式不满足开闭原则,因此,我们需要对其进行改进,将简单工厂进行一次抽象,然后让每个具体的工厂子类负责生产对应的产品...
《Java与模式》学习笔记:设计模式——抽象工厂模式 - shanchao的专栏 - CS...
《Java与模式》学习笔记:设计模式——抽象工厂模式。抽象工厂模式抽象工厂模式是对象的创建模式1.产品族和产品层次的概念这两个概念的区别用文字确实比较难以描述,但是又是两个十分重要的概念,这关...
设计模式
在面向对象设计时,我们常常需要辨认对象的职责。对象的责任越少,则该对象的稳定性就越好,受到的约束也就越少。template method模式和strategy模式都是关注对象的行为的,按照依赖倒置的方法来分离抽...
几种教学系统设计模式<div></div>
几种教学系统设计模式。迪克凯瑞模式。史密斯——雷根模式。传统的教学系统设计模式。
常用设计模式收集
.NET设计模式系列文章
最初写探索设计模式系列的时候,我只是想把它作为自己学习设计模式的读书笔记来写,可是写到今天,设计模式带给我的震撼,以及许多初学者朋友的热心支持,让我下定决心要把这个系列写完写好,那怕花上...
微信扫码,在手机上查看选中内容