# Sviluppatore web

In informatica, lo sviluppatore web (o in inglese web developer) è una figura professionale che si occupa dello sviluppo di applicazioni web, in particolare dello sviluppo del codice sorgente di programmazione, dell'ottimizzazione dei database e dei linguaggi di markup attraverso tecniche di programmazione Web.

## Descrizione

Lavora in gruppo con figure come web designer, webmaster, web content manager con le quali non deve essere confuso. Lo sviluppatore web spesso non progetta la grafica di un sito, non si occupa dei contenuti né della creazione di file multimediali come video o audio, ma si occupa principalmente dell'assemblaggio, della struttura e delle automazioni di un sito. Questo perché generalmente lo sviluppatore web può contare su conoscenze tecniche estremamente più approfondite rispetto alle altre figure che operano nel settore. Uno sviluppatore web infatti deve vantare conoscenze inerenti ai protocolli di rete, i server web ed i loro moduli principali, le basi di dati, la sicurezza informatica ed i linguaggi di programmazione oltre ad un'approfondita conoscenza dei linguaggi di markup più diffusi sul web. Molto spesso gli sviluppatori web sono anche web designer, oppure lo sono stati in passato.
Con sviluppo web si può intendere lo sviluppo di una semplice pagina web statica, oppure lo sviluppo dei più complessi applicativi web in ambito web dinamico come quelli di commercio elettronico, ma anche la creazione delle reti sociali. Un buon sviluppatore web è in grado di realizzare qualsiasi applicativo web, sfruttando le tecnologie più indicate sia lato server che lato client.
La figura dello sviluppatore web sta diventando sempre più importante grazie alla tendenza attuale di trasferire le applicazioni desktop sul web e consentire all'utente di accedere ai propri dati indipendentemente dal computer e dal luogo da cui lavora. Negli ultimi anni inoltre, è apparso con sempre maggiore chiarezza che un sito può avere successo quando è utile all'utente, quando è in grado di svolgere funzioni avanzate e personalizzate. Senza l'appoggio di uno sviluppatore web questi risultati sono difficilmente ottenibili.
Nel settore di Internet si stanno creando figure sempre più specializzate e con competenze sempre più specifiche. Lo sviluppatore web ha un peso sempre maggiore all'interno del team che si occupa di sviluppare siti internet, la sua figura è indispensabile per offrire servizi realmente utili e prodotti tecnicamente validi per l'impresa e gli utenti.

### Competenze

Uno sviluppatore web ha competenze in:
* HTML e XHTML markup, Cascading Style Sheets (CSS), Extensible Markup Language (XML), conoscenza del browser DOM.
* Linguaggi di scripting server-side interpretati come Perl, Python, PHP, Ruby, ASP, ecc. così come linguaggi compilati tra cui Java, C, C++, ASP.NET.
* Linguaggi di scripting client-side interpretati come il JavaScript (derivato dall'ECMAScript), Java, ActionScript.
* Relational Database Management Systems (RDBMS) come MySQL, Microsoft SQL Server, Oracle database, PostgreSQL, ecc.
* Sistemi e networking.

## Aderenza agli standard web

Un problema molto sentito nell'ambito del web development è il rispetto degli standard web emanati dal W3C. Alcuni web browser datati (fra cui Internet Explorer 6) non rispettano alcuni standard e questo rende impegnativa per gli sviluppatori la creazione di siti che funzionino adeguatamente su tutti i browser. Solo una lunga esperienza maturata sul campo permette allo sviluppatore di realizzare interfacce leggere, funzionali, standard e perfettamente funzionanti su tutti i browser. Sebbene questo problema riguardi molto da vicino i web designer è spesso lo sviluppatore web ad ottimizzare le pagine web in virtù delle proprie conoscenze tecniche. È importante sottolineare che i browser stanno facendo importanti progressi nel rispetto degli standard e che l'aggiornamento dei browser da parte degli utenti permetterà di abbattere gran parte dei problemi sopra citati.