Con '''Programmazione Web''' si intendono tutte le attività connesse allo sviluppo di un sito [[web]]. La sua definizione include l' [[e-commerce]], il [[web design]], lo [[scripting]] [[lato client | client-side]] e [[server-side]] e la configurazione dei [[web server]]. Si va dallo sviluppo di singole pagine statiche di testo semplice alle più complesse applicazioni internet web-based, portali per il [[commercio elettronico]] fino ad arrivare ai [[social network]].
Per le grandi imprese e le grandi organizzazioni, i teamsteam di [[web developer | web developers]] si compongono di centinaia di persone. Mentre le organizzazioni più piccole possono necessitare di un [[webmaster]] singolo (spesso con ingaggio a progetto). Lo sviluppo di un sito web può essere uno sforzo collaborativo tra dipartimenti piuttosto che di esclusivo dominio di dipartimenti designati.
==La Programmazione Web come industria==
Sin dalla metà degli anni '90novanta, quella della Programmazione Web è stata una delle industrie nel mondo che si è sviluppata più velocemente. Nel 1995 c’eranoc'erano meno di 1.000 compagnie nel settore solo negli USA, ma dal 2005 erano già oltre 30.000. Ci si aspetta che l’industrial'industria del web cresca di oltre il 20% nel 2010[http://www.articler.com/23205/The-Web-Development-Industry-Is-Expected-To-Grow-Over-20-By-2010.html]. 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.
In più il costo per la creazione dei siti web e dell’hostingdell'hosting sono precipitati drasticamente negli ultimi 5 anni. Per i primi siti web si pagavano decine di migliaia di euro, oggi invece ciascuno può sviluppare un semplice sito web per meno di 1000 euro in base alla complessità e ai contenuti dello stesso. Piccole compagnie di sviluppo web possono offrire pacchetti accessibili a una moltitudine di piccole società e clienti privati che, con un investimento relativamente basso, possono accrescere esponenzialmente il loro giro d'affari. In aggiunta esistono applicazioni e piattaforme pubbliche assolutamente gratuite. Un esempio popolare è [[LAMP (piattaforma) | LAMP]] ([[Linux]], [[Apache HTTP Server | Apache]], [[MySQL]], [[PHP]]) che normalmente sono distribuiti gratuitamente. Il fatto di essere liberamente distribuiti, da solo, ha fortemente contribuito alla crescita di popolarità del web. Un altro elemento che ha contribuito è stata la facilità di utilizzo dei software specifici per lo sviluppo web, come [[Dreamweaver | Adobe Dreamweaver]] o [[Microsoft Expression | Microsoft Expression Studio]] (precedentemente [[Microsoft Frontpage]]). Con l’usol'uso di questi software, teoricamente tutti possono sviluppare una pagina web in pochi minuti. La conoscenza di Hyper-Text Markup Language ([[HTML]]), o altri linguaggi di programmazione non è richiesta ma raccomandata per risultati professionali.
Oggi gli svilluppatori mirano a realizzare applicazioni web che tradizionalmente sono disponibili solo in ambiente locale: invece di far girare le applicazioni sulla stazione locale, l'utente interagisce con le applicazioni on-line. Questo ha permesso la nascita di nuovi metodi di comunicazione, la decentralizzazione dell'informazione e la distribuzione dei contenuti in rete.
===Programmazione Client Side===
* [[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.
* [[Flash Player |Adobe Flash Player]] onnipresente piattaforma client-side.
* [[Javascript]] Formalmente chiamato ECMAScript, Javascript è un utile strumento client-side (anchesso praticamente onnipresente).
==Considerazioni sulla Sicurezza==
Gli sviluppatori web devono tener conto di diverse considerazioni, come la ricerca di errori all'interno dei [[form]], il filtraggio dell'output e la [[cifratura]]. Pratiche malevole come l' [[SQL injection]] o l'utilizzo di scripts realizzati allo scopo, possono permettere a chi ne fa uso di aver accesso ad indirizzi email, password e contenuti protetti come i numeri di carte di credito.
Tenere un web server al sicuro dalle intrusioni è dunque di fondamentale importanza. Molte tecnologie entrano in gioco quando si trasmettono informazioni via web. Molti sviluppatori spesso fanno uso di diversi metodi di cifratura quando si devono trasmettere o salvare informazioni delicate. Ad esempio l' ausilio di protocolli crittografici quali [[TSL]], o il suo predecessore [[TSL | SSL]], permettono una comunicazione sicura e l' [[integrità dei dati]] su reti [[TCP/IP]], aiutando a prevenire eventuali [[Frode informatica | frodi informatiche]]. Una conoscenza di base della sicurezza informatica fa spesso parte delle conoscenze dello sviluppatore web.
Siccome i buchi nella sicurezza di applicazioni web vengono trovati solo dopo la fase di testing e quella di lancio, gli aggiornamenti sulla sicurezza sono di importanza cruciale. È spesso compito dello sviluppatore web tenere le applicazioni aggiornate con [[patch (informatica) | patch]] sulla sicurezza.
==Timeline==
[[Image:Web development timeline.png|800px]]
==Vedi ancheVoci correlate ==
*[[web developer]]
*[[web design]]
|