Was ist ein neutraler Build?
In der Computerprogrammierung und in der Computertechnik ist ein neutraler Build eine Anwendung, die aus ihrem Komponentenquellcode unter einem System kompiliert wurde, das keine Tools, Bibliotheken oder andere Entwicklungssoftware enthält, die zum Erstellen des Programms verwendet wurden. Der Zweck eines neutralen Builds besteht darin, sicherzustellen, dass das Programm so funktioniert, wie es geschrieben wurde, ohne dass Fehler aufgrund von Problemen mit dem Quellcode auftreten, die in einer Entwicklungsumgebung möglicherweise nicht angezeigt werden. Der Begriff kann sich auch auf Software beziehen, die so kompiliert wurde, dass sie nicht auf bestimmte Hardware oder proprietäre Bibliotheken angewiesen ist, und wird daher aus Sicht der Entwicklung als neutral angesehen. Viele Programmierprojekte erstellen regelmäßig neutrale Builds - manchmal auch als nächtliche Builds bezeichnet - eines Projekts, um sicherzustellen, dass zu einem bestimmten Zeitpunkt keine größeren Fehler - wie fehlende Dateien oder widersprüchliche Konfigurationen - im aktuellen Erstellungsprozess des Programms vorliegen .
Einer der Gründe für eine neutrale Erstellung hängt mit der Entwicklung einiger Software zusammen. Im Allgemeinen haben Computer, die zum Schreiben der Anwendung verwendet wurden, große Mengen an Entwicklungssoftware installiert, z. B. integrierte Entwicklungsumgebungen (IDEs), Programmierbibliotheken und spezielle Hardware oder andere Software-Schnittstellen. Diese Entwicklungstools werden manchmal so integriert, dass ihre Verwendung während der Softwareentwicklung transparent wird. Wenn die Software für die Verwendung auf einem Nicht-Entwicklungssystem kompiliert werden kann, müssen die Abhängigkeiten der Anwendung zu den Entwicklungstools explizit definiert werden, damit das Programm ordnungsgemäß kompiliert und auf einem neutralen System ausgeführt werden kann. Dies ist als neutraler Build bekannt.
Eine neutrale Erstellung findet häufig auf einem neutralen Computer oder Server oder in einem neutralen Anwendungsbereich statt. Dies bedeutet, dass keines der Entwicklungstools vorhanden ist und keine implizite Integration von etwas Besonderem wie einer während der Entwicklung verwendeten Programmierbibliothek erfolgt. Wenn Sie das Programm auf einem sauberen System erstellen, kann das Programm in seinem aktuellen Zustand konsistent kompiliert und das fertige ausführbare Programm auf nicht-Entwicklungssystemen verteilt und ausgeführt werden.
Ein neutraler Build stellt nicht nur sicher, dass keine Abhängigkeiten auf Entwicklungsebene bestehen, sondern stellt auch sicher, dass alle verschiedenen Quellcodedateien vorhanden sind und aktualisiert werden. Dies kann ein Problem sein, wenn ein Team an einem Projekt arbeitet, in dem einige Dateien aktualisiert, andere ausgelassen und andere nicht als im Rahmen der Entwicklungsverfolgung geändert registriert werden. Ein neutraler Build beseitigt auch die Möglichkeit, dass vorkompilierte Quelldateien wiederverwendet werden, anstatt neu kompilierte Dateien zu verwenden, wie dies auf einem Entwicklungssystem der Fall sein kann. Bei der Erstellung neutraler Builds geht es letztendlich mehr darum, sicherzustellen, dass ein Programm den Build-Prozess erfolgreich abschließen kann, als darum, logische oder funktionale Fehler zu isolieren.