`
- 浏览:
316447 次
- 性别:
- 来自:
北京
-
这是来自 JOHANNES BRODWALL 的一篇博文,他曾经在Dzone上发表谦卑的架构师一文引发了争论,在这篇博文中他正式声明停止使用Spring。下面是原文大意翻译:
我对Spring和依赖注入框架的意见引起争论,我是挪威Spring最早的使用者之一,我们开发一个庞大系统,我们最终不得不考虑一些事情,如XML配置的重用机制,Spring的@Autowire和组件扫描功能帮我们解决这个问题,但是作为回报,降低了我们质疑整个源码的能力,将我们开发人员隔离在一个个小小的孤岛上,这些框架往往以复杂性为文化,工具 文档和其他不必要的层等待。
后来我尝试不使用依赖注入框架来构建应用程序,让我决定什么使用new,什么时候有一个setter或构造器参数,什么类型能被作为依赖,哪个类型创建会与底层耦合。我发现了一些DI容器能改进设计的好处,同时,我去除了容器,我的解决方案代码变得越小了,易于浏览和理解,容易测试,我陷入了两难底部。
我发现,使用容器的成本非常高,它提高了复杂性和规模,降低了凝聚,对于我来说,小的系统价值远远大于创建一个松耦合后又松耦合的系统。
凝聚性和松耦合是对立,模块A重用模板B,模块A和B耦合了,B的变化会影响A,因此,重用和松耦合是对立,这时我偏重松耦合。当有冲突时,我将连贯性凝聚性看高于松耦合,而松耦合高于重用。Spring文化好像与这个正好相反(凝聚性最差)。
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
* 依赖注入(Dependency Injection): Spring使用依赖注入来解耦合应用程序中的组件,提高系统的灵活性和可维护性。 * AOP(Aspect-Oriented Programming): Spring使用AOP来实现面向方面的编程,提高系统的可维护...
《Spring技术内幕:深入解析Spring架构与设计原理(第2版)》从源代码的角度对Spring的内核和各个主要功能模块的架构、设计和实现原理进行了深入剖析。你不仅能从本书中参透Spring框架的出色架构和设计思想,还能从...
了解 Spring 的生命周期对于架构师和开发人员来说是非常重要的。 一、 Spring 生命周期 Spring 框架的生命周期可以分为两大阶段: Bean 的实例化和 Bean 的销毁。 1. Bean 的实例化 Bean 的实例化是指从 XML ...
如果你以一种淡定的心态翻开这本书,无论你是Java程序员、Spring开发者,还是平台开发人员、系统架构师,抑或是对开源软件源代码着迷的代码狂人,都能从《Spring技术内幕:深入解析Spring架构与设计原理》中受益。...
Spring技术内幕:深入解析Spring架构与设计原理 Spring技术内幕 Spring是一个基于Java的开源框架,旨在简化Java企业应用的开发。Spring的目标是提供一个简洁、灵活、可扩展的框架,以帮助开发者快速构建企业级...
《Spring技术内幕:深入解析Spring架构与设计原理(第2版)》这本书主要聚焦于Spring框架的核心架构和技术细节,帮助读者全面理解Spring的工作机制、设计理念以及实现方式。下面将根据书名及其描述来展开相关知识点。 ...
本书从源代码的角度对Spring的内核和各个主要功能模块的架构、设计和实现原理进行了...无论你是Java程序员、Spring开发者,还是平台开发人员、系统架构师,抑或是对开源软件源代码着迷的代码狂人,都能从本书中受益。
标题:"架构师面试题系列之 Spring Boot 面试专题及答案(33题)" 描述:"架构师面试题系列之 Spring Boot 面试专题及答案" 标签:"SpringBoot" 部分内容: 1. Spring Boot 是什么? Spring Boot 是一个用于简化 ...
在深入解析Spring技术内幕第2版中,会详细探讨Spring框架的核心架构与设计原理,Spring作为一个轻量级的Java平台,提供了全面的编程和配置模型,是企业级Java应用程序开发中广泛使用的技术之一。 Spring的核心特性...
SPRING技术内幕:深入解析SPRING架构与设计原理SPRING技术内幕:深入解析SPRING架构与设计原理SPRING技术内幕:深入解析SPRING架构与设计原理SPRING技术内幕:深入解析SPRING架构与设计原理SPRING技术内幕:深入解析...
架构师面试题系列之Spring Boot面试专题及答案(33题) 架构师面试题系列之Spring MVC面试专题及答案(31题) 架构师面试题系列之Spring面试专题及答案(41题) 架构师面试题系列之Tomcat面试专题及答案(19题) ...
根据提供的标题和描述,我们可以深入探讨Spring框架的核心架构与设计原理。Spring框架是Java平台上的一个开源框架,它提供了一种全面的编程模型,旨在简化企业级应用的开发过程。接下来,我们将围绕Spring的核心概念...
架构师需要了解各种框架的优缺点,如Spring、Hibernate、Django等,并能够灵活应用,以提高开发效率和系统性能。此外,还提到了微服务架构,这是近年来越来越受欢迎的一种架构模式,它通过将大型系统拆分为小而独立...
Java架构师在实现微服务时,可能会使用Spring Boot和Spring Cloud等框架,它们提供了创建和管理微服务的强大支持。 高并发是指系统能同时处理大量用户请求的能力。Java架构师需要了解如何设计和优化并发程序,利用...
Spring技术内幕:深入解析 Spring架构与设计原理
在Java开发领域,深入理解框架的源码是成为一名优秀架构师的重要步骤。本专题课程针对SpringBoot 2.x、Spring 5、SpringMVC和Mybatis这四个关键框架进行源码解析,旨在帮助开发者从底层原理出发,提升技术水平,更好...