架构、框架、设计模式三者的区别

2023-10-28

架构、框架、设计模式,对于搞IT的人来说,再熟悉不过了。那么它们三者有什么联系?又有什么区别呢?

架构: 架构是几个动词,是一个方法论,包含一系列活动过程和步骤。可以联想一下架构师,大数据架构师、软件架构师、首席架构师等等,他们的工作职责,就是根据自己的知识(方法论),通过一系列的步骤,去构建一套框架。

框架: 框架是一个架子,是一个名词。用于解决或者处理复杂的问题,框架的搭建需要架构方法论的指导。如果搞得懂架构,就能理解框架。

设计模式: 在一定环境中,解决某一类问题的方案。例如Gang of Four合著提出的设计模式,提供了软件开发过程中面临的一般问题的最佳解决方案。学习这些模式有助于经验不足的开发人员通过一种简单快捷的方式来学习软件设计。

总的来说: 设计模式 > 架构 > 框架。如果硬要用一个比喻的话,我们可以用房子来打个比方。设计模式的概念比较宽泛,可以理解为非常简单的道理,如:房子不能修在低洼(因为容易被水淹);海边修房子要面朝大海(因为可以宣传海景房多卖钱);别墅要修在山腰(因为风景好空气也好)等等。架构就是修房子的所有规划,比如我们要开发一个别墅盘,那这个盘的架构师,需要考虑具体修在哪里,朝向,户型,施工期限,价格等等因素。最后是框架,这个就简单理解为用钢筋搭好造型,水泥和红砖往里面添就行。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

架构、框架、设计模式三者的区别 的相关文章

随机推荐

  • nocaos找不到jdk

    启动nacos找不到jdk的环境变量 查看jdk 1 8 64为位是没问题的 解决方案 打开startup cmd JAVA HOME 改成自己jdk路径 问题解决
  • 实验一 顺序表的操作(数据结构实验)

    以下为实验内容 1 实验性质 设计性实验 2 要求 编程实现顺序表的以下基本操作 建立顺序表 修改顺序表 插入顺序表 删除顺序表 采用顺序表结构编程实现 两个集合的运算 交集 并集 差集 3 实验目的 通过该实验 深入理解顺序表的逻辑结构
  • Hashcat的使用手册总结

    简介 Hashcat是自称世界上最快的密码恢复工具 它在2015年之前拥有专有代码库 但现在作为免费软件发布 适用于Linux OS X和Windows的版本可以使用基于CPU或基于GPU的变体 支持hashcat的散列算法有Microso
  • 字符设备驱动API

    字符设备驱动框架 注册字符设备 批量注册设备 int register chrdev unsigned int major const char name const struct file operations fops 功能 注册字符设
  • 云厂商降价潮背后:来中小企业战场「拼刺刀」

    如果说过往云厂商的降价打响的是从C端进军B端的营销战 那么在这一轮降价潮背后 对应的则是云厂商从大型KA客户向中小企业进军的信号 强被集成 强获客 云厂商又一轮降价潮袭来 5月16日 移动云宣布部分产品线最高降幅达60 降价政策将于 5 月
  • Python手写Bresenham画线算法(线段+射线)

    文章目录 Bresenham画线算法 根据两个顶点画线 根据端点以及角度画线 Bresenham画线算法 根据两个顶点画线 Bresenham画线算法适用于斜率绝对值小于1的情况 所以要进行翻转 k绝对值小于1的情况下将算法中的x和y换一下
  • 手写机器学习算法07——支持向量机

    引言 支持向量机 SVM Support Vector Machine 是一种分类算法 其基本思想是在样本空间中找到一个超平面 在将不同类别的样本分开的前提下 使超平面离距自己最近的样本尽可能远 如上图所示二维空间中 支持向量机算法的目标就
  • pandas中的to_datetime()方法

    注 写的比较简单 仅用于记录 1 作用 将给定的数据按照指定格式转换成日期格式 2 常用参数 arg 输入 errors 错误数据处理 format 日期格式 3 用法 案例1 给定一个时间和一个格式 给定的时间就会按照给定的格式将它转换成
  • C# 杀进程的方法

    private void KillProcess string processName 获得进程对象 以用来操作 System Diagnostics Process myproc new System Diagnostics Proces
  • Detecting Communities from Heterogeneous Graphs:A Context Path-based Graph Neural Network Model

    1 异构图如何学习节点的嵌入 传统方法 meta path meta path 根据meta path模式指导随机游走 根据生成的序列提取指定窗口范围内的元组 类似于文本skip gram模型 优化目标是这些共现元组概率最大化 缺点 1 定
  • 代码黑科技

    快读 include
  • @Valid 使用

    Valid 使用 作用 Valid注解用于校验 所属的包 javax validation Valid 而在Springboot启动器的web包已经含有该包 所以无需添加多余的依赖 你可以定义实体 在实体的属性上添加校验规则 在API接收数
  • maven命令

    目录 常用命令 命令集锦 命令介绍 常用命令 常用命令及其作用 命令 描述 mvn clean 对项目进行清理 删除target目录下编译的内容 mvn compile 编译项目源代码 mvn test 对项目进行运行测试 mvn pack
  • React hooks 对比class优势

    1 hook可以直接从组件中提取状态逻辑 无需修改组件结构复用 不用形成render props 高阶组件嵌套地狱 2 将组件关联部分设置为更小函数 订阅发布或请求数据 可根据reducer管理组件内部状态 不用像class一样根据生命周期
  • 浅谈卷积神经网络及matlab实现

    1卷积神经网络的优点 卷积神经网络进行图像分类是深度学习关于图像处理的一个应用 卷积神经网络的优点是能够直接与图像像素进行卷积 从图像像素中提取图像特征 这种处理方式更加接近人类大脑视觉系统的处理方式 另外 卷积神经网络的权值共享属性和po
  • Android译文

    http blog csdn net vanpersie 9987 article list 4 http blog csdn net qinxiandiqi article category 2394347 Android Gradle
  • c语言中的头文件string.h的作用,C语言常用头文件及库函数——string.h

    string h 函数与形参类型 函数功能 返回值 例子 1 memcmp 函数与形参类型 int memcmp buf1 buf2 count void buf1 void buf2 int count 函数功能 按字典顺序比较由buf1
  • 十个值得一试的开源深度学习框架

    十个值得一试的开源深度学习框架 oschina 发布于 2015年11月16日 28评 分享到 收藏 359 12月12日北京OSC源创会 开源技术的年终盛典 本周早些时候Google开源了TensorFlow GitHub 此举在深度学习
  • 图像数字识别、数字分割(OCR识别,毕业设计)

    基本图像处理流程 这是我在测试图像处理中使用的原始图像 它有一些眩光点 但是图像相当干净 让我们逐步完成获取此源图像的过程 并尝试将其分解为单个数字 影像准备 在开始图像处理流程之前 我们决定先调整一些图像属性 然后再继续 这有点试验和错误
  • 架构、框架、设计模式三者的区别

    架构 框架 设计模式 对于搞IT的人来说 再熟悉不过了 那么它们三者有什么联系 又有什么区别呢 架构 架构是几个动词 是一个方法论 包含一系列活动过程和步骤 可以联想一下架构师 大数据架构师 软件架构师 首席架构师等等 他们的工作职责 就是