Programátor

Programátorje ten, kdo postupem zvanýmprogramováníimplementujevýsledky návrhuprojektu.
Za prvního programátora je považovánaAda Lovelace,která ve svýchPoznámkách k Analytickému strojivyjádřila prvníalgoritmusurčený k provedení napočítači–Analytickém strojiCharlese Babbageho.
Práce na novém programu začíná obvykle na stole programátora-analytika, který určí návrh budoucího programu, který předá řadovým programátorům. Ti ho převedou do sekvence příkazů, kterým rozumí počítač. Kratší programy může psát jen jeden člověk, i tak by ale měl použít návrh. Programování bez návrhu vede nejčastěji ke špatnému programu, který je nakonec nutné přepsat, tentokrát s návrhem.
Procesoruznává pokyny vestrojovém kódu. Ten je však pro běžné programování naprosto nevhodný pro svou nízkoúrovňovost, navíc je specifický pro různé typy procesorů.
Programátoři si proto postupem času vymysleli nesmírné množství vyšších programovacích jazyků. Jsou to také sekvence příkazů, ale poskytují větší úroveň abstrakce (dofunkcí,objektůatp.). Cenou za toto oproštění se od složitého programování ve strojovém kódu je nutnostpřekladuzdrojových kódů do jazyka procesoru před spuštěním a pomalejší vykonávání vzniklého kódu.
Téměř všechny jazyky mají stejné vyjadřovací schopnosti (jsouturingovsky úplné), ale různé jazyky se svousyntaxí, schopnostmi základníchknihovena podporou hodí pro různé typy projektů. Například pro programování malýchwebovýchprojektů se obvykle užíváPHP, pro technické výpočtyFortranatd.
Dobrý programátor umí více programovacích jazyků a nedělá mu problém osvojit si kvůli novému projektu další. Je to umožněno značnou podobností užívaných jazyků – sdružují se do skupin užívajících podobnáparadigmata(objektově orientované programování,funkcionální programování) nebo podobnou syntax (nejběžnější jsou variace na témajazyka C).
Značnou část svého času programátor tráví testování svého programu na různých vstupních datech a uživatelských akcích. Když zjistí chybu (anglicky bug, dalo by se přeložit jako moucha), provádí ladění (anglickydebugging).
Programátoři se často dělí na aplikační a systémové.
Aplikační programátor vytváří programy plnící konkrétní práci – počítáderivacinebo tiskne upomínky vknihovně.
Systémový programátor se oproti tomu stará o vyvíjení systémových programů, jako třebaoperačníchnebodatabázovýchsystémů, aby se například programátor upomínky tiskoucího systému nemusel starat o konkrétnosti komunikace s tiskárnou.
Dnes už je možná takové dělení poněkud historické, hlavně protože s expanzí počítačů je systémových programátorů relativně mnohem méně.
Programátoři dnes spolupracují s celým spektrem dalších specialistů (například grafiků) při výrobě různých typů programů, mezi něž patříkancelářský softwarestejně jakohryawebové aplikace.
Programátoři mají svou vlastníkulturu, která se vyznačuje odmítáním uniformity a autorit. Hezký prototyp programátora byl předveden mainstreamové kultuře v podobě Nea ve filmuMatrix– pro poznání pravdy se vzdá místa v programátorské firmě a spojí se Morfeem, který je symboly autority (uniformními Agenty) označován za teroristu.
Příklad programátorského humoru může být výtah zProgramátorského slovníku:
nebo
Příkladem rozšíření tohoto humoru jerekurzivní zkratka.
Oblíbený programovací jazyk je pro programátora vážná věc a dokáže se o něj s kolegy do krve hádat. Pro odlehčení si proto vymýšlejí humorné programovací jazyky, mezi které patří:
Výrazgeekpronikl do češtiny jako synonym pro „zažraného programátora“, v angličtině znamená obecně člověka s velkými znalostmi plně pohlceného svou profesí.
Hackerje programátor, který své umění dává na obdiv různými žertíky, ať už zákonnými či nelegálními. Nelegální hacking může být nabourání funkčnosti informačních systémů, zneužití bezpečnostních děr a podobně. Lidem, kteří se nezabývají ničím jiným než nabouráváním, se pro odlišení od „správňáků“ říkácracker.