Forráskód (és forráskód is ) - egy számítógépes program szövege bármely programozási nyelven vagy jelölőnyelven , amelyet egy személy el tud olvasni. Általános értelemben bármilyen bevitel a fordítóhoz . A forráskódot teljes egészében végrehajtható kóddá fordítják le , mielőtt a program lefutna egy fordító segítségével, vagy azonnal végrehajtható egy tolmács segítségével .
A forráskódot vagy az objektumkód beszerzésére használják, vagy az értelmező azonnal végrehajtja.
A forráskód másik fontos célja a program leírása. A program szövege szerint visszaállíthatja viselkedésének logikáját. A megjegyzések a forráskód könnyebb megértését szolgálják . Vannak olyan eszközök is, amelyek lehetővé teszik a forráskód- dokumentáció generátorok dokumentációjának automatikus beszerzését .
Ezenkívül a forráskódnak más felhasználási területei is vannak. Oktatási eszközként használható; A kezdő programozók számára hasznos lehet a meglévő forráskód felfedezése a programozási technológia és módszertan elsajátítása érdekében. Tömör és egyértelmű jellege miatt kommunikációs eszközként is használják tapasztalt programozók között. A fejlesztők közötti kódmegosztást gyakran úgy emlegetik, mint a jobb programozói élményt elősegítő tényezőt.
A programozók gyakran mozgatják át a forráskódot ( modulként , állapotában vagy adaptációkkal) egyik projektről a másikra. Ezt hívják kód újrahasználatnak .
A forráskód kritikus komponens a szoftver más platformokra történő portolásának folyamatában. Egyes szoftverek forráskódja nélkül a portolás vagy túl nehéz, vagy egyáltalán nem lehetséges.
A szoftver egyes részének (modul, komponens) forráskódja egy vagy több . A programkód nem feltétlenül csak egy programozási nyelven van megírva. Például gyakran a C nyelven írt programok optimalizálási okokból assembly nyelvi kódot tartalmaznak . Az is előfordulhat, hogy a program egyes összetevőit vagy részeit különböző nyelveken írják, majd egyetlen végrehajtható egységgé állítják össze a könyvtárlinkelésként ismert technikával .
A bonyolult szoftverek felépítéséhez több tucat vagy akár több száz forráskódfájl szükséges. Ilyen esetekben a felépítés egyszerűsítése érdekében általában projektfájlokat használnak, amelyek a forrásfájlok közötti függőségek leírását és a felépítési folyamat leírását tartalmazzák. Ezek a fájlok a fordító és a fejlesztői környezet beállításait is tartalmazhatják. A különböző tervezési környezetek különböző projektfájlokat használhatnak, és bizonyos környezetekben ezek a fájlok olyan szövegformátumúak lehetnek, amelyek alkalmasak a programozó általi közvetlen szerkesztésre univerzális szövegszerkesztőkkel, más környezetekben speciális formátumok támogatottak, a fájlok létrehozása és módosítása speciális eszközökkel történik. programok. A projektfájlok általában a „forráskód” fogalmába tartoznak. Gyakran forráskód alatt olyan erőforrásfájlokat is értünk, amelyek különféle adatokat tartalmaznak, például egy program felépítéséhez szükséges grafikus képeket.
A verzióvezérlő rendszereket a forráskóddal való munka megkönnyítésére és a programozói csapattal való együttműködésre használják .
Az emberekkel ellentétben nincs "jól megírt" vagy "rosszul megírt" kód a számítógéphez. De a kód megírásának módja nagy hatással lehet a szoftver karbantartási folyamatára . A forráskód minősége a következő paraméterek alapján ítélhető meg:
Az ingyenes szoftver Copyleft licenceihez a forráskód újraelosztása szükséges. Ezeket a licenceket gyakran olyan művekhez is használják, amelyek nem programok, például dokumentációk, képek, számítógépes játékok adatfájljai.
Ilyenkor a forráskódot tekintjük az adott mű formájának, amely a szerkesztéshez előnyösebb. A nem szoftverlicencekben „átlátszó formátumú” verzióként is hivatkozhatunk rá. Ez lehet például: