Forráskód (programozás)
Ez a szócikk nem tünteti fel a független forrásokat, amelyeket felhasználtak a készítése során. Emiatt nem tudjuk közvetlenül ellenőrizni, hogy a szócikkben szereplő állítások helytállóak-e. Segíts megbízható forrásokat találni az állításokhoz! Lásd még: A Wikipédia nem az első közlés helye. |
![](http://178.128.105.246/content-http-upload.wikimedia.org/wikipedia/commons/thumb/0/01/Syntax-small.png/300px-Syntax-small.png)
Az informatikában forráskódon (angolul: source code) egy olyan szöveg értendő, ami egy leíró nyelv jelöléseinek vagy egy programozási nyelv definícióinak és/vagy utasításainak sorozatát tartalmazza. Az elnevezés arra utal, hogy az ilyen szövegek létrehozásának a célja az, hogy forrásai legyenek egy fordítóprogramnak vagy interpreternek, és végül megjelenjen valamilyen dokumentum, vagy létrejöjjön egy szoftver.
Leíró nyelv például a HTML, CSS, TeX és SVG, programozási nyelvek például a JavaScript, C, C++, Pascal, Assembly, BASIC, Python, Haskell.
Programok forráskódja
[szerkesztés]Az ember által elkészített program - nyelvtől és környezettől függően - kétféleképpen válhat futó programmá: fordítás után vagy interpretálással.
Fordításnak nevezzük azt, amikor az ember által olvasható utasításokból másik program lesz. Ennek a folyamatnak egyik fontos lépését a fordítóprogram (compiler) végzi, aminek a bemenete (forrása) a fent említett utasítássorozat, kimenete lehet processzor illetve operációs rendszer által közvetlenül futtatható gépi kód (avagy natív bináris) vagy valamilyen köztes programozási vagy bináris nyelv (bájtkód). A köztes programozási nyelvet jellemzően tovább fordítják binárissá, hogy a program futtatható legyen, a bájtkódot pedig interpretálással futtatják.
Interpretált nyelveknél az interpreter (program) futtatókörnyezetként (esetleg virtuális gépként) viselkedik a forráskód számára, azaz saját maga hajtja végre a forrásállományból kiolvasott parancsoknak megfelelő műveleteket.
Tárolás
[szerkesztés]- A forráskódokat rendszerint fájlokban tárolják, melyeket könyvtárhierarchiába szerveznek.
- Az adatbázisokhoz tartozó tárolt eljárások az adatbázist tartalmazó adatbázis szerverben vannak eltárolva, ahonnan interpretálással közvetlenül futtathatóak. Ezeket rendszerint külön fájlban is el szokták tárolni.
- Verziókezelő rendszerekben, ahonnan fordítás előtt kikérik majd helyben fordítják.
- Ezen túlmenően a forráskód bárhol és bármilyen formában tárolható, ha végül a futtatókörnyezet vagy a fordítóprogram rendelkezésére bocsátható.
Csapatmunka, verziókövetés
[szerkesztés]Csapatmunka során több ember dolgozik ugyanazon a projekten vagy programon. Mindenki ismeri a forráskódot, de több résztvevője van a programozásnak. A forráskódot legtöbbször egy verziókezelő rendszerben tárolják, amelyhez a résztvevők hozzáférnek, szerepük szerint különféle jogokkal.
Létrehozás
[szerkesztés]A forráskódot általában emberek hozzák létre, egyszerűen begépelve az adott szöveget egy szövegfájlba. A programozók erre általában speciális szövegszerkesztőt használnak, amelyik például segíti navigálni a kódban.
Más esetekben egy kódgenerátor generálja valamilyen más információból, például UML-ben megadott szerkezet, vagy például valamilyen párbeszédpanel-szerkesztőben megadott elemek alapján, vagy éppen egy fordítóprogram hozza létre egy másik forráskódból. Néhány esetben lehetőség van arra is, hogy a lefordított tárgykódból valamilyen eljárással többé-kevésbé visszakapjuk a kiindulási forráskódot: ez a reverse engineering.
Minősége
[szerkesztés]Egy program forráskódjának minősége komoly befolyással van a karbantarthatóságára. Éppen ezért sok és sokféle programozói stíluskalauz (style guide) létezik, ami mind arra hivatott, hogy fenntartsa a forráskód jó minőségét.
Egy szoftver forrása
[szerkesztés]Egy szoftvert több lépésen keresztül építenek fel különféle automatikus eszközök (fordító, linker stb.), egy halmaz kiindulási (forrás) fájlból. Ennek a legfontosabb elemei azok a fájlok, amik a forráskódot tartalmazzák. Más elemek például a szükséges ikonok, párbeszédpanelek leírását tartalmazzák vagy éppen a szoftver felépítésének a menetét a forrásból (makefile).
Összefoglalóan ezeket a fájlokat szokás egy szoftver forrásának nevezni. Mivel ezek nem állíthatók elő más fájlokból automatikusan, belőlük viszont elkészíthető a szoftver, ezért nagy értéket képviselnek. Ezért minden szoftvercég egyik legféltettebb kincse a szoftvereinek a forrása.