开发的时候总是幻想能将一个项目做得很完美,面对用户千变万化的需求也能从容不迫。结果最后还是在用户的变化需求中被消磨得精疲力尽,此刻的我已经对软件设计的重要性无比认同。可惜能力有限,条件也有限,至今仍然是对PHP的设计阶段绞尽脑汁,甚至怀疑自己对设计模式认真是否存在误差,以致我依然在苦苦寻找入门之道。一下是转自51CTO 一篇介绍PHP设计模式文章的某一段落。
 
算法不能算是一种设计            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                            精选
                                                        
                            2010-03-25 15:34:51
                            
                                302阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1、凡是使用简单工厂的地方都可以考虑使用反射技术来去除switch或if,解除分支判断带来的耦合2、邮件处理可以考虑指责连模式,其他需要扩展处理的可以考虑用3、平常的按钮点击-产生事件-文本域相应等例子都是中介者模式的应用            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2013-07-22 09:17:00
                            
                                79阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            创建型模式: 建造者模式 建造者模式(Builder Pattern)使用多个简单的对象一步一步构建成一个复杂的对象。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 结构型模式: 原型模式 原型模式(Prototype Pattern)是用于创建重复的对象,同时又能保证性能。这种 ...            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2021-10-07 11:40:00
                            
                                84阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            设计模式分类: 结构型 行为型 创建型 单例模式属于创建型设计模式 单例模式主要使用在 日志记录 ->将多项服务的日志信息按照顺序保存到一个特定日志文件 数据库操作 -> 使用一个数据库对象进行操作,保证数据的一致性 打印机后台处理程序 以及其他程序 该程序运行过程中 只能生成一个实例 避免对同一资            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2021-07-21 17:26:41
                            
                                114阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1.MVC 设计模式是各个设计模式的复合版本。
2.控制器可以变成模型的观察者。比如模型内的状态可以支配界面的某些项目变成有效或者无效。模型变更,视图和控制器都会被通知,模型和视图控制器完全解耦。
3.视图不要控制模型的逻辑,都交给控制器来做,否则会造成模型视图的紧耦合。
4.视图和控制器之间是策略模式,可以直接换控制器(算法),视图对控制器的实现完全不知情。
5.视图内部使用的是组合模式            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2012-12-25 09:36:19
                            
                                462阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            先重提一下课本上关于设计模式的定义:设计模式是一套被反复使用、多数人知晓的、经过分类编排的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、提高代码的可靠性。设计模式的出现让我们可以站在前人的肩膀上,通过一些成熟的设计方案来指导项目的开发与设计,更加方便得复用成功的设计和体            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-10-23 01:11:00
                            
                                115阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            一、工厂模式:相当于            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2021-07-27 15:41:17
                            
                                142阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            定义:将一个请求封装成一个对象,从而让你使用不同的请求把客户端参数化,对请求排队或者记录请求日志            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-06-09 11:50:38
                            
                                81阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            外观模式看起来有点像是Java三大特性中的封装。1、外观模式的使用场景外观模            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-06-09 11:50:09
                            
                                149阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            我想起个艺名(行走江湖必备)备选:大罗天无天哪吒三太子太子敖乙九重天天尊无量姜子牙三界道祖且长不得不承认            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-06-09 11:56:19
                            
                                97阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            定义:代理模式给某一个对象提供一个代理对象,并由代理对象控制对原对象的引用。通俗的来讲代理模式就是我们生活中常见的中介。            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2022-06-09 11:57:19
                            
                                73阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            知识回顾:MVC模式一、MVC 原理MVC 是一种程序开发设计模式,它实现了显示模块与功能模块的分离。提高了程序的可维护性、可移植性、可扩展性与可重用性,降低了程序的开发难度。它主要分模型、视图、控制器三层。1、模型(model)它是应用程序的主体部分,主要包括业务逻辑模块和数据模块。模型与数据格式无关,这样一个模型能为多个视图提供数据。由于应用于模型的代码只需写一次就可以被多个视图重用,所以减少            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-06-18 16:49:14
                            
                                81阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            Decorator装饰模式是一种结构型模式,它主要是解决:“过度地使用了继承来扩展对象的功能”,由于继承为类型引入的静态特质,使得这种扩展方式缺乏灵活性;并且随着子类的增多(扩展功能的增多),各种子类的组合(扩展功能的组合)会导致更多子类的膨胀(多继承)。继承为类型引入的静态特质的意思是说以继承的方式使某一类型要获得功能是在编译时。所谓静态,是指在编译时;动态,是指在运            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2012-01-02 11:52:59
                            
                                245阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            多线程设计模式:1.Single Threaded Execution Pattern [同一时刻只允许一个线程操作] 比喻:三个挑水的和尚,只能同一时间一个人过桥,不然都掉河里喂鱼了。 总结:在多个线程同时要访问的方法上加上synchronized关键字。 2.Immutable Pattern            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2018-01-25 17:02:00
                            
                                69阅读
                            
                                                        
                                点赞
                            
                                                                                    
                                1评论
                            
                                                 
                 
                
                             
         
            
            
            
            抽象工厂模式    追MM少不了请客吃饭,麦当劳的鸡翅和肯德基的鸡翅都是MM爱吃的东西,虽然口味有所不同,但不管你带MM去麦当劳或肯德基,只管向服务员说“来四个鸡翅”就行了。麦当劳和肯德基就是生产鸡翅的Factory。    工厂模式:客户类和工厂类分开。消费者任何时候需要某种产品,只需向工厂请求即可。消费者无须修改就            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                            精选
                                                        
                            2015-02-04 21:33:13
                            
                                464阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1、FACTORY  追MM少不了请吃饭了,麦当劳的鸡翅和肯德基的鸡翅都是MM爱吃的东西,虽然口味有所不同,但不管你带MM去麦当劳或肯德基,只管向服务员说“来四个鸡翅”就行了。麦当劳和肯德基就是生产鸡翅的Factory 工厂模式:客户类和工厂类分开。消费者任何时候需要某种产品,只需向工厂请求即可。消费者无须修改就可以接纳新产品。缺点是当产品修改时,工厂类也要做相应的修改。如:如何创建及如何向客户端            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2013-10-19 22:04:52
                            
                                378阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            vue作者在最初设计vue的时候参考了mvvm这个模型。没有完全遵循mvvm,是在一定程度上遵循了这个模型。根据这个模型设计了vue里面的模型。            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-12-19 11:11:49
                            
                                126阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            就在前不久,我们讲了创建对象的 3 种常见设计模式:工厂设计模式、构造函数设计模式、原型设计模式。这 3 种设计模式,真切时刻发生在我们日常编码生活中,蓦然回首,灯火阑珊处。本篇带来另外一种设计模式介绍,你或许天天和它打交道,但是不认识它,它就是“策略模式”。策略模式就像诸葛亮的锦囊,它在代码中是这样体现的:比方说,我们有一个销售活动,它有着不同的销售策略function getPrice(ori            
                
                    
                        
                                                            
                                                                        
                                                                推荐
                                                                                        原创
                                                                                    
                            2022-08-09 11:12:50
                            
                                525阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            命令模式: 
  首先要有命令类就是具体的操作方法,比如攻击某个部队。 然后要有具体的命令接口 Command ,该接口有执行方法execute(). 
 
  然后有接受者,该接受者实现命令接口,同时还有命令类的引用。 最后就是请求者,该请求者包含命令接口的引用 command引用。 
  
  观察者模式: 
  首先要有主题,给主题是个接口包含很多方法,然后就是观察者接口同样定义了一些方法。            
                
         
            
            
            
            桥接模式定义桥接模式(Bridge Pattern),将抽象部分与它的实现部分分离,使它们都可以独立地变化。更容易理解的表述是:实现系统可从多种维度分类,桥接模式将各维度抽象出来,各维度独立变化,之后可通过聚合,将各维度组合起来,减少了各维度间的耦合。
例讲桥接模式不必要的继承导致类爆炸 汽车可按品牌分(本例中只考虑BMT,BenZ,Land Rover),也可按手动档、自动档、手自一体来分。如            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-06-09 11:49:59
                            
                                280阅读
                            
                                                                             
                 
                
                                
                    