首页 > 其他分享 >侵入式设计与非侵入式设计

侵入式设计与非侵入式设计

时间:2023-10-14 17:06:02浏览次数:32  
标签:框架 spring 代码 struts 用户 与非 侵入 设计

假设大家都想要把用户代码塞到一个框架里。侵入式的做法就是要求用户代码“知道”框架的代码,表现为用户代码需要继承框架提供的类。非侵入式则不需要用户代码引入框架代码的信息,从类的编写者角度来看,察觉不到框架的存在。

例如: 

使用struts的时候,我需要继承一些struts的类,这时struts侵入到了我的代码里。 

使用spring,编写一些业务类的时候不需要继承spring特定的类,通过配置完成依赖注入后就可以使用,此时,spring就没有侵入到我业务类的代码里。 

侵入式让用户代码产生对框架的依赖,这些代码不能在框架外使用,不利于代码的复用。但侵入式可以使用户跟框架更好的结合,更容易更充分的利用框架提供的功能。 

非侵入式的代码则没有过多的依赖,可以很方便的迁移到其他地方。但是与用户代码互动的方式可能就比较复杂。

标签:框架,spring,代码,struts,用户,与非,侵入,设计
From: https://blog.51cto.com/u_16265692/7862438

相关文章

  • 20211325 2023-2024-1 《信息安全系统设计与实现(上)》第五周学习笔记
    202113252023-2024-1《信息安全系统设计与实现(上)》第五周学习笔记一、任务要求自学教材第11章,提交学习笔记(10分),评分标准如下:1.知识点归纳以及自己最有收获的内容,选择至少2个知识点利用chatgpt等工具进行苏格拉底挑战,并提交过程截图,提示过程参考下面内容(4分)“我在学***X知......
  • 2023-2024-1 20231421 《计算机基础与程序设计》第三周学习总结
    ------------恢复内容开始------------作业信息作业要求:https://www.cnblogs.com/rocedu/p/9577842.html#WEEK03作业目标:自学《计算机科学概论》第二章和第三章、《c语言程序设计》第二章作业正文:教材学习内容总结一、《计算机科学概论》1,从信息层出发,分别从二进制数值与......
  • 基于微信小程序的明星应援小程序设计与实现(源码+lw+部署文档+讲解等)
    (文章目录)前言:heartpulse:博主介绍:✌全网粉丝10W+,CSDN特邀作者、博客专家、CSDN新星计划导师、全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战✌:heartpulse:......
  • 基于Tkinter库设计的计算器
    基于Tkinter库设计的计算器Tkinter库:Tkinter是Python的标准GUI库。使用Tkinter库可以可以快速的创建GUI应用程序。1、创建计算器的窗口#创建一个窗口root=tk.Tk()root.minsize(300,480)root.title('计算器')result1=tk.StringVar()result1.set(0)result2=tk.St......
  • 网络规划设计师真题解析--PERT “计划评审技术”(三点估算法)
    某网络建设项目的安装阶段分为A、B、C、D四个活动任务,各任务顺次进行,无时间上重叠,各任务完成时间估计如下图所示,按照计划评审技术,安装阶段工期估算为(70)天。(2019年)(70)A.31   B.51    C.53    D.83答案:C解析:依据三点估算公示,活动历时均值=(最悲观时间+最可能时间*4+......
  • 2023-2024 20231313《计算机基础与程序设计》第三周学习总结
    2023-202420231313《计算机基础与程序设计》第三周学习总结作业速达作业课程<班级的链接>2023-2024计算机基础与程序设计作业要求《计算机基础与程序设计》第二周学习总结要求作业内容计算机科学概论第2章,第3章《C语言程序设计》第2章并完成云班课测试作业......
  • Figma For Mac v114.3「UI协同设计软件」中文汉化版下载 稳定版
    FigmaMAC版是一款简单好用的UI设计软件,FigmaMAC最新版可以让大家都在一个画板上工作,设计、讨论,甚至直接在别人的工作上继续修改,FigmaMAC版还可以直接在设计界面上进行讨论,令协作更加方便,成员间还可以共享色彩库。Figma是一个基于浏览器的UI设计工具绝大部分的设计工具都是本地......
  • 大一上学期程序设计笔记_C++
    罕见的数据类型枚举类型   enum枚举类型名T{Sunday=1,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday};            枚举类型名T  变量表枚举类型只能进行赋值和比较运算。不能把整数赋给枚举型变量。枚举内部的元素会从0开始连续编码。类......
  • 【愚公系列】2023年10月 二十三种设计模式(十二)-代理模式(Proxy Pattern)
    ......
  • 可实现加、减、乘、除、开平方的计算器软件的实验设计
    1、思路代码:#include<stdio.h>#include<math.h>//牛顿迭代法计算平方根doublesqrt_newton(doublex){doubleguess=x/2.0;//初始猜测值为x的一半doubledelta=0.000001;//误差范围while(fabs(guess*guess-x)>delta){guess=(guess+x/guess)/2.0;......