Programmazione web

Da Wikipedia, l'enciclopedia libera.
(Reindirizzamento da Programmazione Web)

Con la locuzione programmazione Web si indicano le attività e le tecniche di programmazione, con i rispettivi linguaggi di scripting, che consentono la realizzazione e lo sviluppo di applicazioni per il Web. La programmazione web si articola in tre tipologie:

Descrizione[modifica | modifica wikitesto]

Exquisite-kfind.png Lo stesso argomento in dettaglio: Applicazione Web.

La programmazione web è dipendente dagli obiettivi dell'applicazione sviluppata ed è strettamente legata alla scelta tra Web statico e Web dinamico.

  • Il primo approccio è quello originario del Web e consiste nella stesura di documenti formattati direttamente in codice HTML e caratterizzati da una bassa interazione con l'utente.
  • Il secondo, rappresenta invece l'evoluzione delle applicazioni Web con l'inserimenti di processi di automazione ed una maggiore interattività con l'utente (vedi anche Web 2.0).

Il web dinamico fa sovente uso di database e di linguaggi di scripting elaborati dal server oppure dal client quali ad esempio PHP, ASP, .NET, JavaScript, Python. Questi codici una volta elaborati restituiscono codice in HTML al web browser dell'utente.

La programmazione Web come industria[modifica | modifica wikitesto]

Dalla metà degli anni 1990, quella della programmazione Web è stata una delle industrie nel mondo che si è sviluppata più velocemente. Nel 1995 c'erano meno di 1.000 compagnie nel settore solo negli Stati Uniti, ma dal 2005 erano già oltre 30.000 avendo avuto un forte sviluppo negli anni 2000 con l'avvento del Web 2.0 e la diffusione di applicazioni Web.

La crescita di questa industria è spinta dalla prospettiva del mercato di vendere prodotti e servizi ai loro clienti e di automatizzare il flusso di lavoro. Il settore della programmazione web è quindi generalmente un settore florido e in continuo sviluppo.

Aumentata la domanda, è aumentata anche l'offerta, facendo scendere i prezzi. Sono inoltre state sviluppate piattaforme pubbliche gratuite. Un esempio è il pacchetto LAMP (Linux, Apache, MySQL, PHP).

Gli sviluppatori web mirano a realizzare applicazioni che tradizionalmente erano disponibili solo in ambiente locale. Questo ha permesso la nascita di nuovi metodi di comunicazione, la decentralizzazione dell'informazione e la distribuzione dei contenuti in rete.

Esempio della trasformazione che la programmazione web ha portato nelle comunicazioni e nel commercio è l'e-commerce (es. eBay). Altro esempio di come lo sviluppo del software destinato al web abbia apportato nette trasformazioni nel modo di comunicare sono i blog.

Per le grandi imprese e le grandi organizzazioni, i team di web developer si compongono anche di decine di persone, mentre le organizzazioni più piccole possono necessitare di un webmaster singolo.

Suddivisione di base[modifica | modifica wikitesto]

A livello teorico la programmazione web può suddividersi in programmazione web lato client e programmazione web lato server a secondo che ci si occupi dello sviluppo del front-end o del back-end dell'applicazione web. Spesso allo svilupppatore capita di doversi occupare di entrambe le parti. Applicazioni web abbastanza semplici possono essere costruite anche totalmente con logica lato client (ad es. interamente in JavaScript). La parte data-layer, ovvero creazione del database con relative tabelle e manutenzione, è spesso opera di un database Adimistrator (DBA) .

Programmazione Client Side[modifica | modifica wikitesto]

  • AJAX Fornisce nuovi metodi per l'utilizzo di JavaScript, linguaggi lato server (ASP.Net o PHP) e altri linguaggi al fine di migliorare l'esperienza dell'utente.
  • Adobe Flash Player onnipresente piattaforma client-side, ma oramai obsoleta.
  • JavaScript Formalmente chiamato ECMAScript, JavaScript è un utile strumento client-side (anch'esso praticamente onnipresente).

Circa la programmazione Client Side potrebbe essere utile leggere un libro gratuito, scritto in lingua italiana, distribuito secondo licenza creative commons e scaricabile dal seguente link: Programmare per il web, lato client.

Programmazione Server Side[modifica | modifica wikitesto]

Database[modifica | modifica wikitesto]

Sicurezza[modifica | modifica wikitesto]

Con il diffondersi delle piattaforme web, è aumentata la richiesta di sicurezza nella trasmissione e archiviazione dati. Gli sviluppatori web devono perciò tener conto di diverse considerazioni, come il filtraggio dei dati in uscita e la cifratura. Pratiche malevole come l'SQL injection possono permettere di aver accesso ad indirizzi email, password e contenuti protetti come i numeri di carte di credito.

Sovente si fa uso di diversi metodi di cifratura quando si devono trasmettere o salvare informazioni delicate. Per esempio con l'ausilio di protocolli crittografici quali TSL, o SSL, permettono una comunicazione sicura e l'integrità dei dati su reti TCP/IP, aiutando a prevenire eventuali frodi informatiche. Una conoscenza di base della sicurezza informatica fa spesso parte delle conoscenze dello sviluppatore web.

Siccome alcuni problemi di sicurezza vengono identificati solo dopo la pubblicazione delle applicazioni, gli aggiornamenti sulla sicurezza sono di importanza cruciale. È spesso compito dello sviluppatore web tenere le applicazioni aggiornate con patch sulla sicurezza.

Timeline[modifica | modifica wikitesto]

Web development timeline.png

Voci correlate[modifica | modifica wikitesto]

Internet Portale Internet: accedi alle voci di Wikipedia che trattano di internet