我也设计模式——10.Facade

Facade简化并提供了对基础架构的统一访问,从而减少复杂性。它只是封装,可以看成黑盒。
在Web编程中,有所谓的n-层架构,就是Facade的思想,即每一层都封装好一部分功能,提供给上一层统一的方法调用,比如说数据层,将操作一次数据库的整个过程封装为一个方法,而我们在逻辑层调用该方法时,只需要传递一个SQL参数:
         public   static   void  ExecNonQuery( string  sql)
        { 
            
using  (SqlConnection conn  =   new  SqlConnection())
            {
                conn.Open();

                SqlCommand cmd 
=   new  SqlCommand(sql);
                cmd.ExecuteNonQuery();                
            }
        }

整个Framework体系就是Facade模式的封装,随着1.0升级到3.5,越来越多复杂的高级功能被封装,可以说Facade无处不在。
设计Facade时,要尽量松散耦和。可以把子功能分别设计为Facade,再将这些小Facade拼装成一个大的Facade,而不是把这些子功能的代码直接拼成一个Facade。

你可能感兴趣的:(Facade)