我也设计模式——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。
原文地址:https://www.cnblogs.com/Jax/p/913463.html