Programmazione web

insieme di attività e tecniche che consentono di fare applicazioni Web

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 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 teams di 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 '90, 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 USA, ma dal 2005 erano già oltre 30.000. Ci si aspetta che l’industria del web cresca di oltre il 20% nel 2010[1]. 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’hosting sono precipitati drasticamente negli ultimi 5 anni. Per i primi siti web si pagavano 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 (Linux, 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 | Adobe Dreamweaver o Microsoft Expression Studio (precedentemente Microsoft Frontpage). Con l’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.

Esempio della drastica trasformazione che la programmazione web ha portato nelle comunicazioni e nel commercio è l'e-commerce. Siti di aste online come eBay hanno cambiato il modo in cui i consumatori consumano e acquistano beni e servizi. Un altro ottimo esempio di come lo sviluppo del software destinato al web abbia apportato nette trasformazioni nel modo di comunicare sono i blog.

Gerarchia di Base

La Programmazione Web può essere suddivisa in più aree e una tipica gerarchia di base potrebbe essere la seguente;

Codifica 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.
  • Adobe Flash Player onnipresente piattaforma client-side.
  • Javascript Formalmente chiamato ECMAScript, Javascript è un utile strumento client-side (anchesso praticamente onnipresente).

Codifica Server Side

Database

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. 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. E' spesso compito dello sviluppatore web tenere le applicazioni aggiornate con patch sulla sicurezza.

Timeline

 

Vedi anche

Sitografia

http://en.wikipedia.org/wiki/Web_development (inglese)