Giovedì, 26 Luglio 2012 21:35

Introduzione alla programmazione lato WEB In evidenza

Scritto da 
Vota questo articolo
(0 Voti)

Il web oggi giorno è nel pieno dello sviluppo, tutti lo utilizzano almeno una volta al giorno. Questo grazie al fatto che la tecnologia, che sta dietro a tutto quello che vediamo in rete, si è migliorata tantissimo nel giro di poco più di venti anni e al contempo è facilmente raggiungibile da tutti, con prezzi alla portata di più o meno tutti.

Quello che questo articolo si prefigge di raggiungere, è dare una piccola visione del dietro le quinte del mondo virtuale, così chiamato Internet. Molta gente lo utilizza, molta confonde termini tecnici, molta lo guarda con un sospetto derivante da una vita "non-tecnologica", molti invece si interessano ad esso e cercano di "infiltrarsi" nei meandri del mondo virtuale.
Questo articolo non è né una guida per principianti né vuole essere solo un altro dei tanti articoli che utilizzano tecnicismi troppo complicati che implicano un ulteriore ricerca per comprendere a pieno il senso della parola. Quindi parto con questa breve ma doverosa premessa: l'articolo non richiede pre-requisiti di programmazione, né però esclude la possibilità che man mano non ci possano essere utilizzati tecnicismi da programmatore.

Iniziamo col dire cosa è Internet e spiegare perché è così  importante seguire con attenzione il suo sviluppo.

 



Wikipedia:

Internet(contrazione della locuzione inglese interconnected networks, ovvero "reti interconnesse") è una rete mondiale di reti di computer ad accesso pubblico, attualmente rappresentante il principale mezzo di comunicazione di massa, che offre all'utente una vasta serie di contenuti potenzialmente informativi e servizi.

  

Già da quanto si legge dalle prime righe di Wikipedia, si capisce molto: infatti esplica il motivo del suo successo. Essendo una rete di computer interconnessi (e non collegati, in quanto questo implica la connessione fisica, che non è possibile per una questione fisica, infatti se fosse stato così avremmo un filo per ogni computer esistente su questo mondo), e questo mostra la natura flessibile della rete. Un altro fatto che si deduce implicitamente è che un informazione condivisa in qualsiasi parte del mondo è subito reperibile da tutto il mondo, ecco perché non sorprende il fatto che sia diventato il principale mezzo di comunicazione e tele comunicazione.

Capito questo, non si può e né si deve desumere che si sa cosa internet sia in quanto ci sono meccanismi più sofisticati intrinsechi del concetto stesso di internet che andrebbero studiati e capiti, ma per continuare questo concetto è sufficiente. Detto questo entriamo nel vivo del dietro le quinte. Vedrete che non a caso si usa il luogo comune "dietro le quinte".

Internet per funzionare non ha bisogno soltanto di una connessione fra i vari componenti della rete, ma di regole ben precise che richiedono l'implementazione intrinseca di tecnologie adeguate sia per ricevere che per trasmettere l'informazione. E comunque è importante sottolineare che durante la ricezione e trasmissione si possono verificare errori, o meglio alterazioni del messaggio originale, per cui oltre che  a sviluppare e implementare metodi di trasmissione e ricezione, è indispensabile prevedere metodi per il riconoscimento di errori, una volta individuati gli errori correggerli, e in fine ricostruire il messaggio iniziale. Per ora ci basti sapere che esistono, e che per ora si suppone per semplicità di non essere in presenza di tali errori e che in un secondo momento verrà pubblicato un articolo per continuare questa discussione.

Sarebbe utile anche parlare delle tipologie di rete, ma per l'articolo introduttivo sarebbe veramente troppo, per cui rimando a un prossimo articolo per questo estremamente interessante argomento.

Come ultima nozione prima di concentrarsi veramente sulla programmazione lato web è capire il modello CLIENT/SERVER, praticamente la base di come tutto il meccanismo che regola oggi internet. Molto banalmente il sistema client - server è realizzata tramite la condivisione di risorse mediante due macchine distinte collegate in rete. Partiamo dal client, che è la parte con cui l'utente effettivamente si interfaccia, e quindi è il punto in cui l'utente immette i dati oppure visualizza l'elaborazione della richiesta. Mentre il server svolge le operazioni necessarie affinché il servizio sia elaborato/eseguito correttamente, ad esempio è il server che gestisce un Database(banca dati) e fornisce i risultati di una query(richiesta effettuata dal client per estrapolare dati che soddisfano una certa condizione dal database).

Ora introduciamo la programmazione lato Server. Da quanto detto precedentemente, stiamo lavorando sulla macchina Server, per realizzare un servizio (N.B. non necessariamente per servizio si intende il classico servizio, potrebbe benissimo trattarsi di un sito web che fornisce dettagli su un impresa), cosa dobbiamo conoscere ancora per realizzarlo? In anzi tutto si deve scrivere un programma che si esegue lato web. E per farlo abbiamo bisogno di un linguaggio di programmazione adatto. Facendo una piccola ricerca su Google, si può facilmente constatare che non vi è un linguaggio ma una miriade, citiamo fra i principali PHP, ASP, JSP. Personalmente preferisco il PHP, per il semplice fatto che è il più diffuso, si trova facilmente un hosting (spazio su un server web per eseguire il nostro servizio) con ampio supporto a varie tecnologie.

Ovviamente la scelta del linguaggio è personale e libera,  esistono vantaggi e svantaggi che ogni linguaggio si porta dietro. Per ora mi limito a presentare le specifiche che a grandi linee determinano la scelta di un linguaggio rispetto a un altro. Precisamente si sceglie un linguaggio in base alle esigenze:
 infatti se non abbiamo grosse esigenze (e quindi gestire siti estremamente complessi che prevedono più servizi) direi che JSP fa al caso. JSP ha un grosso svantaggio: consuma molte risorse del server e in giro non ci sono molti hosting JSP, e come risultato produce un innalzamento dei prezzi. Per fortuna ci sono alternative potete usare script CGI, usando C(++), Python, PERL oppure direttamente Ruby con il suo framework on Rails. Mentre chi non ha grosse esigenze può usare ASP o PHP. La grossa differenza che divide ASP e PHP sono le piattaforme su cui è possibile utilizzarli: ASP si esegue su un server IIS che viene eseguito solo da una macchina Windows, mentre PHP è eseguibile ovunque installandolo, oppure scaricando il paccheto xampp, per avere configurato correttamente PHP, MySQL (per il database), PACHE come Web Server, e altre componenti che esamineremo nel prossimo articolo riguardante solo la programmazione WEB.


Concludo questo articolo introduttorio, facendo notare che dopo questo articolo ce ne saranno altri che andranno nei dettagli dei processi descritti più o meno dettagliatamente sopra.

 

Manu sharma

Letto 96548 volte Ultima modifica il Martedì, 31 Luglio 2012 15:05

120381 commenti

Lascia un commento

Assicurati di inserire (*) le informazioni necessarie ove indicato.
Codice HTML non è permesso.


Condividi!

Pubblicità