只接受发布货源信息,不可发布违法信息,一旦发现永久封号,欢迎向我们举报!
1064879863
16货源网 > 餐饮行业新闻资讯 > 软件开发 >  如何理解软件开发过程中的“引擎”概念?


如何理解软件开发过程中的“引擎”概念?

发布时间:2019-05-25 06:03:46  来源:网友自行发布(如侵权请联系本站立刻删除)  浏览:   【】【】【
个人愚见。常见的工作流引擎,搜索引擎,游戏引擎,甚至我们自己在开发中也会定义一个engine包,我个人倾向于把引擎定义为一种经过高度抽象的业务执行的逻辑,具有一定的普适性,通过为开发者屏蔽一些细节,达
如何理解软件开发过程中的“引擎”概念?个人愚见。
常见的工作流引擎,搜索引擎,游戏引擎,甚至我们自己在开发中也会定义一个engine包,我个人倾向于把引擎定义为一种经过高度抽象的业务执行的逻辑,具有一定的普适性,通过为开发者屏蔽一些细节,达到让开发者更专注自身独有业务的开发,从而达到简化开发的目的应该说一般是指一种一直在运行,然后用来按需处理基础事务的模块吧。

大概可以理解成一个一直存在的函数,任何时候你给定输入,它都会负责执行操作并负责输出,不过一般的引擎处理操作都需要一些时间(换言之有延迟,而不是瞬间的操作)。

一般引擎存在的意义是把底层(相对于业务和设计架构而言)的逻辑抽象出来,以便在设计的时候专注于业务逻辑本身,而不是底层的调用细节。软件的引擎,作用与地位均类似于汽车里的“发动机”,这也是它被称为“引擎”的原因。
============================================================
想想汽车中的发动机,它要不点火,汽车就动不了。这个是常识吧?
类比一下,那软件中的引擎就好理解了。
软件总要干活吧?这就类似于汽车要行驶。软件干的活主要是处理数据,因此,软件的引擎主要工作就是负责启动一个流程处理数据,当它“动”起来时,数据处理工作开始,当它“停”下来,数据处理工作结束。
就这样子。可以将它看做一系列设计好的链接库和工具的组合。引擎是核心功能的集合。相当于一个基本demo,在它基础上做开发,从而实现出软件。就是实现了核心业务逻辑的代码个人觉得是抽离出基础功能的类库或组件等,也就是说让你在开发时不用考虑基础的公共逻辑,而是只需要专注于具体业务实现,比如.net的entity frameworks或者linq这种直接把基础的数据库增删改查都写好,你不需要考虑基础的功能代码编写。
游戏引擎也是,直接把一些基础的图形图像和光影做好,开发人员只需要关注游戏的关卡和逻辑设计即可,基础的图形图像由游戏引擎完成。
责任编辑:
热门阅读排行
© 16货源网 1064879863