Programmatore

persona che scrive programmi per computer
Disambiguazione – Se stai cercando l'altro significato, vedi Programmatore (musica).

Un programmatore informatico (noto anche con le espressioni inglesi developer, ovvero sviluppatore, e coder, traducibile come "creatore di codice", oppure detto semplicemente programmatore), in informatica, è un tecnico che, attraverso la relativa fase di programmazione, traduce o codifica l'algoritmo risolutivo di un problema dato nel codice sorgente del software da far eseguire ad un elaboratore, utilizzando un determinato linguaggio di programmazione. La professione del programmatore è relativamente recente e si è sviluppata di pari passo con l'aumento dei campi di applicazione dell'informatica.

Programmatore all'opera su piattaforma MacOS (Darwin OS)

Descrizione

Nell'ambito del ciclo di vita del software, l'attività del programmatore, definita anche "sviluppo" o "attività di codifica", concettualmente è successiva all'attività di analisi e precedente a quella di collaudo, solitamente eseguita da altri professionisti, rispettivamente gli analisti ed i collaudatori beta tester.

In pratica il programmatore realizza il programma vero e proprio sulla base del documento di specifica (tecnica o funzionale) redatto dell'analista, in cui sono descritti a livello logico i comportamenti e gli algoritmi che devono essere realizzati nel programma stesso. Terminata la fase di programmazione con la produzione di un programma eseguibile, quello le cui istruzioni sono rese direttamente eseguibili dalla macchina sotto forma di linguaggio macchina, inizia la fase di collaudo, atta a determinare la conformità del programma alle specifiche descritte nel documento di analisi.

Il programmatore per l'esecuzione della propria attività si avvale di alcuni strumenti informatici specializzati per quest'attività. A titolo esemplificativo si tratta di editor (programmi che permettono la scrittura di programmi software), debugger, helper, compilatori o interpreti, script, database ed altri ancora.

Ada Lovelace è considerata la prima programmatrice della storia, avendo per prima espresso un algoritmo inteso per l'utilizzo su un computer, la macchina analitica di Charles Babbage nell'ottobre del 1842.

Programmatore web

Il suffisso "web" identifica un programmatore specializzato nella costruzione di software destinato a realizzare applicazioni web o siti web per Internet o intranet, tipicamente utilizzando linguaggi orientati a questo genere di attività, come ad esempio PHP, ASP, Java EE, JavaScript o ActionScript.

Il programmatore web si occupa solo del codice sorgente di un sito web, quindi trascura il design e la formattazione del codice HTML, che vengono invece sviluppati da un web designer o da più figure con specifiche competenze. Un programmatore web che si occupa sia del codice che della grafica di un sito, non si chiama più tale ma prende il nome di "Full Stack Developer".

Code monkey

Il termine può anche essere auto-attribuito come modo per scaricare le responsabilità per una decisione presa dall'amministrativo, oppure come lamento dovuto al dover sopportare tali decisioni (ad es.: "Non chiedermi perché dobbiamo scrivere in COBOL, sono semplicemente un "code monkey").

Diffusione e formazione

Uso improprio

Tra i non addetti ai lavori, il termine programmatore è spesso impiegato scorrettamente. Infatti, in questi casi, qualsiasi professionista nel mondo dell'informatica è genericamente chiamato "programmatore"[1]. Chi gestisce sistemi informatici, configura applicazioni, aggiorna i contenuti di siti web, installa e manutiene reti o periferiche, assiste altri specialisti informatici o telematici, ecc. non programma nulla: solo chi, determinando funzioni e relativi algoritmi di implementazione di una soluzione e secondariamente scrivendo codice in qualche linguaggio di programmazione, realizza software, è un programmatore. E comunque, in questo settore, molte professioni e ruoli sono etichettati in inglese, quasi mai tradotti in italiano.

Note

  1. ^ O, ancor peggio, "tecnico". Questo capita perché, a differenza di altre professioni tradizionali, non si conoscono i mestieri dell'informatica.

Voci correlate

Altri progetti

Controllo di autoritàLCCN (ENsh85029522 · GND (DE4175854-7 · J9U (ENHE987007545774505171 · NDL (ENJA01154890