网站服务器的重要性,影视网站搭建平台,百度搜索app,电商企业网站建设情况依赖注入框架在动态类型语言中几乎没有那么有用。例如#xff0c;请参见Java中的表示Dependency Injection: Vitally important or totally irrelevant?依赖注入框架提供的灵活性是至关重要的#xff0c;而在Python中#xff0c;这通常会导致不必要的复杂性。这并不意味着原…依赖注入框架在动态类型语言中几乎没有那么有用。例如请参见Java中的表示Dependency Injection: Vitally important or totally irrelevant?依赖注入框架提供的灵活性是至关重要的而在Python中这通常会导致不必要的复杂性。这并不意味着原则是错误的。请参阅以下示例如何使用简单的习惯用法实现类之间的松散耦合# A concrete class implementing the greeting provider interfaceclass EnglishGreetingProvider(object):def get_greeting(self, who):return Hello %s! % who# A class that takes a greeting provider factory as a parameterclass ConsoleGreeter(object):def __init__(self, who, providerEnglishGreetingProvider):self.who whoself.provider provider()def greet(self):print(self.provider.get_greeting(self.who))# Default wiringgreeter ConsoleGreeter(whoWorld)greeter.greet()# Alternative implementationclass FrenchGreetingProvider(object):def get_greeting(self, who):return Bonjour %s! % whogreeter ConsoleGreeter(whoWorld, providerFrenchGreetingProvider)greeter.greet()