引擎(Engine)是电子平台上开发程序或系统的核心组件。利用引擎,开发者可迅速建立、铺设程序所需的功能,或利用其辅助程序的运转。一般而言,引擎是一个程序或一套系统的支持部分。常见的程序引擎有游戏引擎、搜索引擎、杀毒引擎等。
如何理解软件开发过程中的“引擎”概念?
(1)个人倾向于把引擎定义为一种经过高度抽象的业务执行的逻辑,具有一定的普适性,通过为开发者屏蔽一些细节,达到让开发者更专注自身独有业务的开发,从而达到简化开发的目的。
(2)个人觉得是抽离出基础功能的类库或组件等,也就是说让你在开发时不用考虑基础的公共逻辑,而是只需要专注于具体业务实现,比如.net的entity frameworks或者linq这种直接把基础的数据库增删改查都写好,你不需要考虑基础的功能代码编写。
游戏引擎也是,直接把一些基础的图形图像和光影做好,开发人员只需要关注游戏的关卡和逻辑设计即可,基础的图形图像由游戏引擎完成。