找回密码
 立即注册

QQ登录

只需一步,快速开始

swejet 悬赏达人认证 活字格认证
论坛元老   /  发表于:2022-7-14 11:23  /   查看:3286  /  回复:11
刚看到一个格友在问,觉得这确实是一个问题,在这儿说点自己的理解。

个人觉得,叫插件还是比较准确的。

插件,组件,控件,我觉得还是有区别的

先说插件,英文plugin,英语里本来就有这个词plug,这个词的意思就是插座,引申为消防栓。这也不挨着啊?不,挨着。消防栓是灭火时水管子的插座,意思是这么引申过来的。既然叫插,当然对应的就是拔,就是说,这个“件”可以插进去,也能拔出来,本来就不是整体的组成部分,拔出来对整体也没有结构性的影响,相当于一个外挂,比如临时工,辅警等,本质上都属于插件。你自己家里的SUV,想加装一个保险杠,这就属于插件,因为不是组成车体的必须的部分。

组件,英文component,既然叫组,当然就是组成部分,没它不行。所以,你看前端框架,ant design ,tdesign等等,都叫组件,为什么要叫组件呢?因为这个“件”就是前端的组成部分,如果没有这些“件”,那么前端就不存在了,至少也是不完整的,正是这些“件”才“组”成了前端框架,没有了这些“件”,前端框架啥也不是,所以叫“组件”,组成部分的意思。

控件,当然关键在控,就是能实现一定的控制。网上有的文章说控件就是可视化的组件,这都胡说八道呢,这意思就是说控件和组件本是同根生,一个可视一个不可视呗?那你说说不可视化的组件长嘛样?控件,当然要能控制。有人说了,前端组件也能控制,你再能控制,控制的不也就是用户的浏览器吗?你能控制服务器了?能控制数据库了?能,我只要在服务器上装nodeJS就都能控制了,这叫废话,那是你控制的?那不是nodeJS控制的吗?你这最多算是教唆,三年起步。

最简单的理解:

插件,相当于外挂,可以插,也可以拔;
组件,一般用在前端
控件,一般用在后端


所以,这样一理解,活字格里叫插件,还是准确的。

11 个回复

倒序浏览
数据民工悬赏达人认证 活字格认证
高级会员   /  发表于:2022-7-14 13:46:33
沙发
本帖最后由 数据民工 于 2022-7-14 13:48 编辑

控件,在office和WPS中文版里,是指在设计模式里,按钮、文本框、组合框,复选框,等等设计窗体用的可视化的工具,为什么叫控件呢?这里的控是控制,但不是单纯的控制,而是有条件的,是人工参与的控制,而不是程序控制。是为了让人可以方便的和程序交互的可视化的一个部件。一定要注意这个控制是人去控制!!!!所以说,活字格里的按钮,文本框等等叫控件
插件,是程序的外挂,实现某种功能而专门开发的外接式的外挂程序,插件都是通过API来实现的,即插即用,所以叫插件,与程序主体是寄生关系。
组件,顾名思义,组成部分,与程序主体为共生关系
回复 使用道具 举报
jeffmy
中级会员   /  发表于:2022-7-14 14:09:11
板凳
两位大神点拨都很到位
回复 使用道具 举报
阿凡佬
中级会员   /  发表于:2022-7-15 00:33:00
地板
本帖最后由 阿凡佬 于 2022-7-15 00:38 编辑

之前一直做的Winform开发,在.net里面,控件(Control)是继承于父类组件(Component)的,其在组件的基础上提供了一些控件的绘制事件、鼠标事件等基本的界面功能,所以才能在用户界面上进行展示并响应用户输入。因此至少在微软的定义中,控件是可视化的组件。比如常见的按钮、文本框等。而窗口里组件也有很多,比如Timer就是一个典型的窗口组件,它为窗口对象提供了一个定时执行的功能,主要原理是创建一个新线程并处理过程,几乎所有的窗口动画都是通过这个“组件”实现的,而它却不在用户界面上直接显示,只在背后默默努力做着它该做的事情。
因此,我的理解是:控件是组件的一种,它因具备具体界面而能被用户直接操作(控制),因此叫做"控件"。组件作用在于后端,控件作用在于前端。


当然,只是名称而已,我觉得不用细究。就像现在大家做的MES系统中对于一个“产品”的组成部分,部件、零件、配件、组件、工件这些个“件”各有各的定义。我们所要做的只是在一个小范围内,比如自己的公司,控制好这些名词的定义即可,而不需要取得大众的共识,对吧?
回复 使用道具 举报
swejet悬赏达人认证 活字格认证
论坛元老   /  发表于:2022-7-15 08:25:33
5#
阿凡佬 发表于 2022-7-15 00:33
之前一直做的Winform开发,在.net里面,控件(Control)是继承于父类组件(Component)的,其在组件的基础上提 ...

大佬说的专业。我写这段的时候也曾经想过,简单的认知是窗体上叫控件,web上叫组件,但是感觉也并不准确。

感觉在开发上,大家并没有把这个词当成一个术语,这也是造成认知混乱的根本原因。当然一方面是因为技术的多样性造成的,另一方面也是因为技术背后的企业的影响力,说白了就是互不买账造成的。
回复 使用道具 举报
阿凡佬
中级会员   /  发表于:2022-7-15 11:42:15
6#
swejet 发表于 2022-7-15 08:25
大佬说的专业。我写这段的时候也曾经想过,简单的认知是窗体上叫控件,web上叫组件,但是感觉也并不准确 ...

是啊,一套名词的定义和解释应当由某个公共组织进行,比如国家、行业协会等出台的相关标准。例如我们外贸中的贸易术语FOB、CIF等是由国际商会(ICC)撰写的Incoterms-2020定义,我们个人和企业无能为力对其定义,其实就算做得再大吧,就如阿里和腾讯之间定然也存在或多或少的名词解释上的分歧。这时候只要拿出标准来,咱也不用说谁说服谁,谁买谁的帐吧,标准定义的就是板上钉钉的,就像律师搬出他的法条来一样。

IT界我看现在也只能寄希望于相关标准化进程加快吧,我甚至有种感觉,类似于这些组件、控件之类的 名词的定义是由各大培训班说了算。
回复 使用道具 举报
swejet悬赏达人认证 活字格认证
论坛元老   /  发表于:2022-7-15 14:51:20
7#
阿凡佬 发表于 2022-7-15 11:42
是啊,一套名词的定义和解释应当由某个公共组织进行,比如国家、行业协会等出台的相关标准。例如我们外贸 ...

由各大培训班说了算,这话说得简直不要再正确了
回复 使用道具 举报
willning
超级版主   /  发表于:2022-8-1 16:06:19
8#
swejet 发表于 2022-7-15 08:25
大佬说的专业。我写这段的时候也曾经想过,简单的认知是窗体上叫控件,web上叫组件,但是感觉也并不准确 ...

asp.net 上也叫controls的,spread都出过asp.net版本的控件。
回复 使用道具 举报
Aa金砂
高级会员   /  发表于:2022-10-12 21:55:15
9#
管他叫啥 会用就行  那活字格为何叫活字格 叫葡萄员 不香吗
回复 使用道具 举报
phoben讲师达人认证 悬赏达人认证 活字格认证
论坛元老   /  发表于:2022-10-12 23:22:15
10#
插件>控件>组件
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部