惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Stack Overflow Blog
Stack Overflow Blog
L
LangChain Blog
人人都是产品经理
人人都是产品经理
酷 壳 – CoolShell
酷 壳 – CoolShell
T
Tailwind CSS Blog
N
Netflix TechBlog - Medium
Microsoft Security Blog
Microsoft Security Blog
J
Java Code Geeks
博客园 - 【当耐特】
量子位
有赞技术团队
有赞技术团队
Jina AI
Jina AI
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
博客园_首页
C
Check Point Blog
B
Blog RSS Feed
M
MIT News - Artificial intelligence
H
Help Net Security
雷峰网
雷峰网
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
博客园 - 聂微东
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
A
About on SuperTechFans
腾讯CDC

zodream梦想开源/个人编程日记

文件解析笔记-zodream梦想开源/个人编程日记 密码本开发笔记之读写与保存-zodream梦想开源/个人编程日记 SkiaSharp 把 pixel byte[] 转成 SKBitmap-zodream梦想开源/个人编程日记 nas 使用 Docker 安装 gogs-zodream梦想开源/个人编程日记 复制 android 手机中的文件到电脑-zodream梦想开源/个人编程日记 周报:寻找优质的周刊-zodream梦想开源/个人编程日记 开发日志:对Markdown的代码块新增引用来源支持-zodream梦想开源/个人编程日记 周报:怎么写技术类的教程文章-zodream梦想开源/个人编程日记 css display:flex 布局尺寸超出问题-zodream梦想开源/个人编程日记 周报:SEO优化的思考-zodream梦想开源/个人编程日记 Edge 浏览器不适用 Edge Image Viewer 打开图片 -zodream梦想开源/个人编程日记 SEO 学习笔记(一) 内容来源-zodream梦想开源/个人编程日记 PHP 实现双因素身份认证(2FA)-zodream梦想开源/个人编程日记 WPF MVVM 获取List 多选数据-zodream梦想开源/个人编程日记 Burp Suite 抓包-zodream梦想开源/个人编程日记 使用 indexnow 注意事项-zodream梦想开源/个人编程日记 Godot 使用字体图标 例如: Iconfont、FontAwesome-zodream梦想开源/个人编程日记 angular 15 对指定页面进行访问限制-zodream梦想开源/个人编程日记 CSS 使用 column-count 实现瀑布流出现内容分割的解决办法-zodream梦想开源/个人编程日记 input 确认按键事件在手机端不生效-zodream梦想开源/个人编程日记 C# 使用socket 进行通讯-zodream梦想开源/个人编程日记 Maui开发中Windows应用开启管理员权限-zodream梦想开源/个人编程日记 Maui 中自定义控件-zodream梦想开源/个人编程日记 angular 14 使用 ng-template 实现tree 结构显示-zodream梦想开源/个人编程日记 c# 动态安装和卸载dll-zodream梦想开源/个人编程日记 慎用 CompositionTarget.Rendering-zodream梦想开源/个人编程日记 c# 重写 c++ 程序笔记:数据初始化-zodream梦想开源/个人编程日记 源码编译 aseprite-zodream梦想开源/个人编程日记 记录一下字符串分隔split各语言之间的不同-zodream梦想开源/个人编程日记 c# Gzip解码无头内容-zodream梦想开源/个人编程日记
架构、框架、模式、模块、组件、插件、控件、中间件-zodream...
zodream · 2018-07-03 · via zodream梦想开源/个人编程日记

架构

软件架构,也成称为软件体系结构,简单地说就是一种设计方案,将用户的不同需求抽象成组件,且能够描述组件之间的通信和调用。软件架构会分析工程中的问题,针对问题设计解决方案,针对解决方案分析应具有的功能,针对功能设计软件系统的层次和模块及层次模块之间的逻辑交互关系,确定各个功能如何由这些逻辑实现。开发人员可以根据软件架构分析出来的层次和架构进行软件编写。

【理解】:综合需求和能力对有关软件整体结构与组件的抽象描述

框架

软件框架,是软件开发过程中提取软件的共性部分形成的体系结构。框架不是现成可用的应用系统,而是一个半成品,是一个提供了诸多服务,供开发人员进行二次开发,实现具体功能的程序实体。

框架与架构的关系:框架不是架构,框架比架构更具体,更偏重于技术,而架构更偏重于设计;架构可以通过多种框架来实现。

【理解】:对普遍使用的方法进行的归类、封装,不进行具体业务处理实现,但提供全面的处理方法

模式

设计模式强调的是一个设计问题的解决方法,是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。

框架与设计模式的关系:设计模式研究的是对单一问题的设计思路和解决方法,一个模式可应用于不同的框架和被不同的程序语言所实现;而框架则是一个应用的体系结构,是一种或多种设计模式和代码的混合体。设计模式的思想可以在框架设计中进行应用。

架构与设计模式的关系:设计模式研究的是对单一问题的设计思路和解决方法,范畴比较小;而架构是高层次的针对体系结构的一种设计思路,范畴比较大。一个架构中可能会出现多个设计模式的思想。

【理解】:对程序的整体结构的概括

模块

根据不同的标准,通常会说程序模块或功能模块,程序模块指的是一段能够实现某个目标的成员代码段,功能模块则用来说明一个功能所包含的系统行为。定义模块的原则是:高内聚和低耦合。

【理解】:实现大型软件系统的一部分功能的程序

组件

组件是封装了一个或多个程序模块的实体。组件强调的是封装,利用接口进行交互。组件也称为构建。插件是组件的一个子类,就是将组件中具有某些特点的组件归为插件。

【理解】:对数据和方法简单封装的对象

插件

插件属于组件,插件是组件的一个子类,就是将组件中具有某些特点的组件归为插件。插件是一种电脑程序,通过和应用程序的互动,来为应用程序增加一些特定的功能,仅靠插件是无法正常运行的,需要依赖于应用程序才能发挥自身功能。插件和应用程序之间通过接口进行交互。

【理解】:根据规范的接口编写的不能脱离平台单独运行的程序

控件

对数据和方法封装的可视化组件。

【理解】:接受输入数据的组件

中间件

主要解决异构网络环境下分布式应用软件的互连与互操作问题,提供标准接口、协议,屏蔽实现细节,提高应用系统易移植性。

【理解】:从不同的输入来源转化成标准的数据,通过标准的接口进入不同的底层执行处理