Software -Engine

A Software -Engine ist ein Kern Komponente von a Komplex Software System. Zu den alternativen Phrasen gehören "Software Core" und "Software Core Engine" oder nur "Core Engine".

Das Wort "Motor" ist eine Metapher von a Wagen's Motor. Somit ist eine Software -Engine ein Komplex Teilsystem.

Es gibt keine formelle Richtlinie für das, was als Motor bezeichnet werden sollte, aber der Begriff ist in der verankert worden Softwareindustrie. Bemerkenswerte Beispiele sind Datenbankmotor, Grafikmotor, Physik -Engine, Suchmaschine, Plotting -Engine und Game Engine. Außerdem a Webbrowser Hat tatsächlich zwei Komponenten als Motoren bezeichnet: die Browsermotor und JavaScript -Engine.

Klassischerweise ist eine Engine etwas als Bibliothek verpackt, wie z. B. ".sa", ".so", ".dll", das die Software, die sie lädt oder einbettet, Funktionen verleiht. Motoren können Grafiken wie die Python produzieren Matplotlib oder das Ziel-C Kerndiagramm. Motoren haben jedoch nicht an und für sich im Allgemeinen eigenständige Benutzeroberflächen oder "Haupt", sie sind keine Anwendungen. Ein Unterscheidungsmerkmal eines Motors ist daher seine Darstellung als API.

Motoren können verwendet werden, um Dienste auf höherer Ebene zu erstellen, die Anwendungen sind, und die Anwendungsentwickler oder das Management können den Dienst als "Engine" bezeichnen. Wie in allen Definitionen ist der Kontext kritisch. Im Kontext der Verpackung von Softwarekomponenten bedeutet "Engine" eine Sache. Im Kontext der Werbung für einen Online -Service kann "Engine" etwas ganz anderes bedeuten. In der Arena von "Core Software Development" ist eine Engine ein Softwaremodul, das möglicherweise über einen Paketmanager wie in anderen Software enthalten ist NuGet für c#, POBENV für Python und Swift Package Manager für die schnelle Sprache.

Ein scheinbarer Ausreißer ist a Suchmaschine, wie zum Beispiel Google-Suche, weil es sich um einen eigenständigen Service handelt Endverbraucher. Für den Suchanbieter ist der Motor jedoch Teil von a verteiltes Computer System, das viele umfassen kann Daten Center in der ganzen Welt. Das Wort "Engine" entwickelt sich zusammen mit der Entwicklung des Computers, da es sich in die Arena der über das Internet angebotenen Dienste erweitert. Es gibt einen Unterschied zwischen Google, der Endbenutzeranwendung und Google der Suchmaschine. Als Endbenutzer erfolgt die Suche über eine Benutzeroberfläche, im Allgemeinen ein Browser, der mit der "Engine" spricht. Dies ist nur eine Möglichkeit, mit dem Motor zu interagieren. Andere umfassen eine breite Palette von Google APIs, die eher dem klassischen Begriff des Motors ähneln (wobei nur ein Motormodul über eine API präsentiert). Es gibt auch eine überlappende Softwareentwicklung, einen Service-/Anwendungsstil, der als bekannt ist Microservices.

Vor dem Google Online -Suchdienst gab es mehrere Suchmaschinen, die tatsächlich als Softwaremodule verpackt wurden. Lange vor Google gab es Online -Dialup -Dienste, in denen Suchmaschinen Dritter verwendet wurden, wie beispielsweise der Washington Alert II -Dienst von Congressional Quarterly. Zuvor gab es viele Desktop-Produkte, darunter Suchmaschinen von Drittanbietern, insbesondere von CD-ROM-basierten Enzyklopädien aus Grollier, Comptons, Bertelsmann und vielen anderen. Mac OS 9 verwendete lange Zeit eine Suchbibliothek von Drittanbietern (CPL der persönlichen Bibliothekssoftware). Die meisten frühen Suchmaschinenunternehmen wie persönliche Bibliothekssoftware und ihr CPL -Produkt sind längst vorbei. Einer der frühesten Web -Search -Dienste war vielleicht der erste Webcrawler. Es basierte auf der CPL -Suchmaschinenbibliothek aus der persönlichen Bibliothekssoftware. Die CPL -Engine ist lange vorbei, da sie aus dem Markt zurückgezogen wurde, als AOL eine persönliche Bibliothekssoftware erwarb, und anscheinend nur als existiert Archivseiten im Internet Archiv Wayback -Maschine.

Für einen Softwareentwickler ist der wahrscheinlich nützlichste Begriff der "Engine" die eines Moduls, das Sie in Ihrem eigenen Code verwenden können, einem Modul, das in einer fokussierten Domäne erhebliche Funktionen bietet. Man könnte das nennen C Standardbibliothek Ein "Engine", aber es hat nicht wirklich einen Fokus, als ein breites Spektrum an Dienstleistungen mit niedrigem Niveau zu bieten. Trotzdem könnte es als "grundlegende Dienstleistungen" -Motor bezeichnet werden. Auf der anderen Seite, Gensim Eindeutig eindeutig als Motor klassifiziert; Es handelt Themenmodellierung, weitgehend basierend auf Ableitungen der Vektorraummodell von Informationsabruf ursprünglich entwickelt von von Gerard Salton.

Siehe auch