在接口提供者和使用者之间,存在与生俱来的矛盾。第三方程序包和框架提供者追求普适性,这样就能在多种环境中工作,从而吸引广泛用户。
建议不要将map在系统中传递。如果使用类似map这样的边界接口,就把他保留在类或近亲类中。
避免从公共api中返回边界接口,或将边界接口作为参数传递给公共api。
学习型测试:不要在生产代码中实验新东西,而是编写测试来遍览和理解第三方代码。
边界上的代码需要清晰的分割和定义了期望的测试。应该避免我们的代码过多的了解第三方代码中的特定信息。
在接口提供者和使用者之间,存在与生俱来的矛盾。第三方程序包和框架提供者追求普适性,这样就能在多种环境中工作,从而吸引广泛用户。
建议不要将map在系统中传递。如果使用类似map这样的边界接口,就把他保留在类或近亲类中。
避免从公共api中返回边界接口,或将边界接口作为参数传递给公共api。
学习型测试:不要在生产代码中实验新东西,而是编写测试来遍览和理解第三方代码。
边界上的代码需要清晰的分割和定义了期望的测试。应该避免我们的代码过多的了解第三方代码中的特定信息。