gpt4 book ai didi

java - Spring for Python 与 Spring for Java 相比如何

转载 作者:IT老高 更新时间:2023-10-28 13:44:46 25 4
gpt4 key购买 nike

我是 Java 的 Spring 框架的狂热粉丝(由 Rod Johnson 撰写)。我正在学习 Python,很高兴能找到有关 Spring for Python 的信息。我很想听听社区对比较的看法这两种 Spring 的味道。它与 Python 的范例等的匹配程度如何。

最佳答案

依赖注入(inject)框架在动态类型语言中几乎没有那么有用。参见演示文稿Dependency Injection: Vitally important or totally irrelevant?在 Java 中,依赖注入(inject)框架提供的灵 active 至关重要,而在 Python 中,它通常会导致不必要的复杂性。

这并不意味着这些原则是错误的。看看这个例子如何使用简单的习语来实现类之间的松耦合:

# A concrete class implementing the greeting provider interface
class EnglishGreetingProvider(object):
def get_greeting(self, who):
return "Hello %s!" % who

# A class that takes a greeting provider factory as a parameter
class ConsoleGreeter(object):
def __init__(self, who, provider=EnglishGreetingProvider):
self.who = who
self.provider = provider()
def greet(self):
print(self.provider.get_greeting(self.who))

# Default wiring
greeter = ConsoleGreeter(who="World")
greeter.greet()

# Alternative implementation
class FrenchGreetingProvider(object):
def get_greeting(self, who):
return "Bonjour %s!" % who
greeter = ConsoleGreeter(who="World", provider=FrenchGreetingProvider)
greeter.greet()

关于java - Spring for Python 与 Spring for Java 相比如何,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/940564/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com