Programmazione webCon 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
DescrizioneLa programmazione web è dipendente dagli obiettivi dell'applicazione sviluppata ed è strettamente legata alla scelta tra Web statico e Web dinamico[1][2].
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. Programmazione web come industriaDalla 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[3]. La crescita di questa industria è spinta dalla prospettiva del mercato di vendere prodotti e servizi ai loro clienti al fine 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[4]. 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[5]. Suddivisione di baseA livello teorico la programmazione web può suddividersi in programmazione web lato client e programmazione web lato server a seconda che ci si occupi dello sviluppo del front-end o del back-end dell'applicazione web. Spesso allo sviluppatore 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 Administrator (DBA)[6]. Programmazione Client Side[7]
Programmazione Server Side[8]
DatabaseSicurezzaCon 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[9]. Sovente si fa uso di diversi metodi di cifratura quando si devono trasmettere o salvare informazioni delicate. Per esempio l'ausilio di protocolli crittografici quali TLS, 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[10]. 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[11]. TimelineNote
Voci correlate |