一般的な用語について質問があります。コードまたはツールキットが「エンジン」と見なされるのはいつですか?
たとえば、Google の Javascript インタープリターは「V8 Engine」と呼ばれ、Unreal のレンダラーは「Unreal Engine」と呼ばれます。フレームワークまたは一連のアルゴリズムが正式にエンジンと見なされる特定のポイント (サイズ、複雑さ、目的、またはその他) はありますか?
一般的な用語について質問があります。コードまたはツールキットが「エンジン」と見なされるのはいつですか?
たとえば、Google の Javascript インタープリターは「V8 Engine」と呼ばれ、Unreal のレンダラーは「Unreal Engine」と呼ばれます。フレームワークまたは一連のアルゴリズムが正式にエンジンと見なされる特定のポイント (サイズ、複雑さ、目的、またはその他) はありますか?
エンジンは類推です。通常、ソフトウェア エンジンはコードの別のレイヤーを実行します。
ソフトウェア エンジンの特徴の 1 つは、それ自体が自立することを意図していないことです。モーターは供給しますが、完成車を作るのはあなたにお任せします。
いいえ。モノの作成者がエンジンと呼びたい場合、モノはエンジンと呼ばれます。
完全なタスク (JavaScript の解釈や 3D グラフィックスのレンダリングなど) 用の API を作成する場合、それをエンジンと呼ぶことができます。しかし、正確な定義はありません。それは、あなたが作成したものに適切な言葉を見つけるためのより多くの方法です. フレームワークも同様です。
少し恣意的ですが、私が見たすべてのソフトウェア エンジンに共通していることの 1 つは、任意のコードを実行できることです。それは確かに V8 (javascript) と Unreal エンジン (unrealscript) に当てはまります。JVM のように抽象的なマシンを定義しないという点で VM とは異なります。インタープリターも多くの場合、法案に適合しません。V8 JIT コンパイルは何も解釈しません。Unreal は unrealscript を解釈する以上のことを行います。