Software-Build - Software build

In der Softwareentwicklung ist ein Build der Prozess der Konvertierung von Quellcodedateien in eigenständige Softwareartefakte(e) , die auf einem Computer ausgeführt werden können, oder das Ergebnis davon.

Funktionen

Die Erstellung von Software ist ein End-to-End-Prozess, der viele verschiedene Funktionen umfasst. Einige dieser Funktionen werden im Folgenden beschrieben.

Versionskontrolle

Die Versionskontrollfunktion führt Aktivitäten wie das Anlegen und Aktualisieren von Arbeitsbereichen, das Baselining und das Reporting aus. Es erstellt eine Umgebung für die Ausführung des Buildprozesses und erfasst Metadaten über die Eingaben und Ausgaben des Buildprozesses, um Wiederholbarkeit und Zuverlässigkeit zu gewährleisten.

Tools wie Git , AccuRev oder StarTeam helfen bei diesen Aufgaben, indem sie Tools anbieten, um bestimmte Punkte im Verlauf als wichtig zu markieren und mehr.

Codequalität

Diese Funktion, auch als statische Programmanalyse/statische Codeanalyse bekannt, ist dafür verantwortlich zu überprüfen, ob Entwickler die sieben Achsen der Codequalität eingehalten haben: Kommentare, Komponententests, Duplizierung, Komplexität, Codierungsregeln, potenzielle Fehler sowie Architektur und Design.

Die Sicherstellung eines qualitativ hochwertigen Codes in einem Projekt führt zu weniger Fehlern und beeinflusst nicht funktionale Anforderungen wie Wartbarkeit, Erweiterbarkeit und Lesbarkeit, die sich direkt auf den ROI eines Unternehmens auswirken .

Zusammenstellung

Dies ist nur eine kleine Funktion zur Verwaltung des Build-Prozesses. Die Kompilierungsfunktion verwandelt Quelldateien in direkt ausführbare oder Zwischenobjekte. Nicht jedes Projekt benötigt diese Funktion.

Während bei einfachen Programmen der Prozess aus einer einzelnen Datei besteht, die kompiliert wird , kann der Quellcode bei komplexer Software aus vielen Dateien bestehen und auf unterschiedliche Weise kombiniert werden, um viele verschiedene Versionen zu erzeugen.


Build-Tools

Der Prozess des Erstellens eines Computerprogramms wird normalerweise von einem Build-Tool verwaltet , einem Programm, das andere Programme koordiniert und steuert. Beispiele für ein solches Programm sind make , Gradle , Meister von OpenMake Software , Ant , Maven , Rake , SCons und Phing . Das Build-Dienstprogramm muss normalerweise die verschiedenen Dateien in der richtigen Reihenfolge kompilieren . Wenn sich der Quellcode in einer bestimmten Datei nicht geändert hat, muss er möglicherweise nicht neu kompiliert werden ("kann nicht" statt "muss nicht", da er selbst von anderen Dateien abhängen kann, die sich geändert haben). Ausgeklügelte Build-Utilities und Linker versuchen, Code, der ihn nicht benötigt, nicht neu zu kompilieren, um die zum Abschließen des Builds erforderliche Zeit zu verkürzen. Ein komplexerer Prozess kann andere Programme beinhalten, die Code oder Daten als Teil des Buildprozesses und der Software erzeugen.

Siehe auch

Verweise