În programarea computerelor și ingineria computerelor, o construcție neutră este o aplicație care a fost compilată din codul sursă al componentei sale într-un sistem care nu conține niciunul dintre instrumentele, bibliotecile sau alt software de dezvoltare care au fost utilizate pentru a crea programul. Scopul unei build neutre este de a se asigura că programul poate funcționa așa cum este scris, fără erori care decurg din probleme cu codul sursă care pot rămâne nevăzute într-un mediu de dezvoltare. Termenul se poate referi și la software care a fost compilat într-un fel astfel încât să nu se bazeze pe niciun hardware specific sau biblioteci proprietare și, prin urmare, este considerat neutru din perspectiva dezvoltării. Multe proiecte de programare creează build-uri neutre – uneori numite build-uri nocturne – ale unui proiect în mod regulat, pentru a se asigura că, în orice moment, nu există defecte majore – cum ar fi fișierele lipsă sau configurații conflictuale – în procesul de construire curent al programului. .
Unul dintre motivele pentru o construcție neutră are de-a face cu modul în care este dezvoltat un anumit software. În general, computerele folosite pentru scrierea aplicației au instalate cantități mari de software de dezvoltare, cum ar fi medii de dezvoltare integrate (IDE), biblioteci de programare și hardware special sau alte interfețe software. Aceste instrumente de dezvoltare sunt uneori integrate într-un mod care face ca utilizarea lor să fie transparentă în timpul dezvoltării software. Când software-ul este gata să fie compilat pentru a fi utilizat pe un sistem care nu este în dezvoltare, dependențele pe care aplicația le are în ceea ce privește instrumentele de dezvoltare trebuie definite în mod explicit, astfel încât programul să poată compila corect și rula pe un sistem neutru. Aceasta este cunoscută ca o construcție neutră.
O construcție neutră are loc frecvent pe un computer sau server neutru sau într-un spațiu de aplicație neutru. Aceasta înseamnă că niciunul dintre instrumentele de dezvoltare nu este prezent și nu există integrare implicită a ceva special, cum ar fi o bibliotecă de programare, utilizată în timpul dezvoltării. Construirea programului pe un sistem curat înseamnă că programul poate fi compilat în mod consecvent în starea sa actuală și că programul executabil finalizat poate fi distribuit și executat pe sisteme care nu sunt în dezvoltare.
Pe lângă faptul că se asigură că nu există dependențe la nivel de dezvoltare, o construcție neutră asigură, de asemenea, că toate fișierele diferite de cod sursă sunt prezente și actualizate. Aceasta poate fi o problemă atunci când o echipă lucrează la un proiect în care unele fișiere sunt actualizate, unele sunt lăsate afară și altele nu sunt niciodată înregistrate ca fiind modificate în cadrul de urmărire a dezvoltării. O construcție neutră elimină, de asemenea, posibilitatea ca fișierele sursă pre-compilate să fie reutilizate în loc să fie utilizate fișiere nou compilate, așa cum se poate întâmpla pe un sistem de dezvoltare. Crearea de build-uri neutre, în cele din urmă, este mai mult despre a se asigura că un program poate finaliza cu succes procesul de construire decât despre izolarea erorilor logice sau funcționale.