您指的是CDI(上下文依赖注入)AKA IoC(控制反转)。Java JSF和Spring Framework是一些示例。ASP.NET MVC具有Unity等插件。Java语言开始使用诸如RequireJS之类的库来组织结构,该库具有在许多现代JS框架中可见的注入行为。那是用于连接本地和远程应用程序。
为了跨网络进行松散耦合,公司喜欢将Web Services与SOAP,REST,AJAX或通过RPC进行常规远程方法调用一起使用。在Java中,可以使用JAX-WS或.NET WCF来构建分布式服务。然后,您可以将它们以任何语言或平台从服务总线或“数据流”中排列为客户端。Ruby,Python,Scala,Java,C#等。
松散耦合使您可以划分和解决问题,并且服务通常是数据库中提取数据的入口点。加紧阶梯,我们有了名为Message Queue的野兽。那条路通往企业和基础架构类型的框架。
但是,如果您的项目坚持不使用任何网络,则可以使用诸如Scala,Akka,NodeJS等之类的语言来设计,以在单个应用程序中实现大量数据流。他们还可以使用一些或所有前面提到的用于复杂项目的技术。例如,Scala可与JAX-RS REST服务一起使用,以从数据源中提取某种“全局数据”,并具有用于IoC内部接线的Spring。JBoss,.NET和GUI工具(例如MuleESB)中也有许多业务执行或工作流框架。在开发中,Eclipse和Netbeans使您可以在可视流程图屏幕中拖放服务。
最后,Java仍然具有Singleton bean。要在运行时调整方法,请使用代理或反射框架。但老实说,1999年是如此。
我认为,如果您要打很多电话,以根据用户所在的时区向用户发送消息,则可能有一种两步方式来实现与用户看到的效果相同的效果。但是,是的,现有语言已经使用了CDI框架,就像外套一样,赋予它们您提到的所有灵活功能。我喜欢称它为程序的潜意识,无缝处理脏活。