Fordítás emberi nyelvről számítógépes nyelvreEdit
A modern számítógépek nagyon összetettek, és a produktív programozásukhoz különböző absztrakciókra van szükség. Például a programozó ahelyett, hogy egy program bináris reprezentációját írná le, a programot egy programozási nyelven, például C, Java vagy Python nyelven írja meg.A programozási eszközök, például az asszemblerek, a fordítóprogramok és a linkerek az ember által írható és olvasható forrásnyelvből a programot a számítógép által végrehajtható bitekké és bájtokká alakítják. Az értelmezők menet közben értelmezik a programot a kívánt viselkedés elérése érdekében.
Ezek a programok számos olyan jól meghatározott és ismétlődő feladatot végeznek, amelyek ember által végrehajtva időigényesek és hibakockázatosak lennének, mint például a program részeinek elhelyezése a memóriában és a programrészek közötti hivatkozások javítása, ahogyan azt a linker teszi.Az optimalizáló fordítók viszont összetett átalakításokat végezhetnek a forráskódon a program végrehajtási sebességének vagy egyéb jellemzőinek javítása érdekében. Ez lehetővé teszi a programozó számára, hogy a program magasabb szintű, koncepcionális szempontjaira összpontosítson, anélkül, hogy aggódnia kellene a gép részletei miatt, amelyen a program fut.
A programinformációk elérhetővé tétele az emberek számára Szerkesztés
A szoftverek nagyfokú összetettsége miatt a legtöbb programot még a legtapasztaltabb szoftverfejlesztő számára sem lehetséges egyetlen pillantással megérteni.A magas szintű programozási nyelvek által biztosított absztrakciók megnehezítik a programozó által írt forráskód és a program tényleges viselkedése közötti kapcsolat megértését is.A programokban található hibák megtalálása és a program bővítése során új hibák keletkezésének megakadályozása érdekében a szoftverfejlesztő néhány programozási eszközt használ a programokkal kapcsolatos mindenféle információ megjelenítésére.
A hibakereső például lehetővé teszi a programozó számára, hogy a programozáshoz használt forrásnyelv szempontjából információt nyerjen a futó programról.A hibakereső a fordító által tárolt információk felhasználásával a konkrét gép állapotából kiszámíthatja a forrásprogramban lévő változó értékét. A memória hibakeresők közvetlenül rámutathatnak a futó programok megkérdőjelezhető vagy egyenesen helytelen memória-hozzáféréseire, amelyek egyébként észrevétlenek maradnának, és a programhibák gyakori forrását jelentik.