Cari aspiranti programmatori, vi è mai capitato di svegliarvi un mattino e decidere di voler imparare a scrivere documenti web, creare siti internet, blog personali, gdr e tante altre cose? Vi è mai capitato di cercare sul web corsi, manuali, testi o qualsiasi cosa che vi avvicinasse a questo affascinante mondo, senza però ottenere ciò che cercate? Vi è capitato di imbattervi in consigli pronunciati da saccenti programmatori che parlano evidentemente un’altra lingua e che magari vi indirizzano ad eventuali corsi scritti appunto in questa lingua segreta? Vi siete sbattuti per giorni alla ricerca di aiuti nella speranza di capire qualcosa, ma ancora nulla? Beh, se può consolarvi questa è la situazione del 99% di coloro che si avvicinano alla programmazione. Io stesso (come del resto tantissime persone che sono oggi programmatori professionisti ben più capaci del sottoscritto) all’epoca ho avuto questo problemuccio. Magari iniziate a sognarvi la notte HTML, questa strana parola dall’oscuro significato che andate sentendo avanti e indietro. Insomma, se questa è la vostra situazione, questo articolo è per voi! In particolare questo articolo vuole spiegarvi cosa fanno alcuni linguaggi di programmazione web in parole semplici e vuole farvi capire come funziona la “giostra” in modo da permettervi di affrontare corsi e guide con qualche idea in testa di cosa state leggendo, facilitando l’apprendimento. Dunque non andremo ad analizzare i linguaggi web nello specifico: questa non è una guida, ma una lettura che può aiutarvi a capire meglio alcune cose essenziali e basilari. Del resto alcuni esperti programmatori di gdr-online stanno realizzando un wiki proprio per insegnare a tutti i vari linguaggi di programmazione e magari potreste trovare nel loro progetto la soluzione ai vostri problemi. Ma passiamo ai fatti.
Cari aspiranti programmatori, vi è mai capitato di svegliarvi un mattino e decidere di voler imparare a scrivere documenti web, creare siti internet, blog personali, gdr e tante altre cose? Vi è mai capitato di cercare sul web corsi, manuali, testi o qualsiasi cosa che vi avvicinasse a questo affascinante mondo, senza però ottenere ciò che cercate? Vi è capitato di imbattervi in consigli pronunciati da saccenti programmatori che parlano evidentemente un’altra lingua e che magari vi indirizzano ad eventuali corsi scritti appunto in questa lingua segreta? Vi siete sbattuti per giorni alla ricerca di aiuti nella speranza di capire qualcosa, ma ancora nulla? Beh, se può consolarvi questa è la situazione del 99% di coloro che si avvicinano alla programmazione. Io stesso (come del resto tantissime persone che sono oggi programmatori professionisti ben più capaci del sottoscritto) all’epoca ho avuto questo problemuccio. Magari iniziate a sognarvi la notte HTML, questa strana parola dall’oscuro significato che andate sentendo avanti e indietro. Insomma, se questa è la vostra situazione, questo articolo è per voi! In particolare questo articolo vuole spiegarvi cosa fanno alcuni linguaggi di programmazione web in parole semplici e vuole farvi capire come funziona la “giostra” in modo da permettervi di affrontare corsi e guide con qualche idea in testa di cosa state leggendo, facilitando l’apprendimento. Dunque non andremo ad analizzare i linguaggi web nello specifico: questa non è una guida, ma una lettura che può aiutarvi a capire meglio alcune cose essenziali e basilari. Del resto alcuni esperti programmatori di gdr-online stanno realizzando un wiki proprio per insegnare a tutti i vari linguaggi di programmazione e magari potreste trovare nel loro progetto la soluzione ai vostri problemi. Ma passiamo ai fatti.
HTML
E’ dunque il momento di svelare il segreto che si cela dietro a questa maledetta parola. Avrete forse letto che HTML non è altro che la sigla di Hypertext Markup Language (In italiano: linguaggio di contrassegno per gli ipertesti). Ma come detto in precedenza, questa piccola guida vuole spiegare con parole differenti e più semplici questi concetti. Quindi apprestiamoci a tradurre, soffermandoci su una parola: contrassegno. HTML infatti non è un linguaggio di programmazione, ma un linguaggio di contrassegno o “di marcatura”. Questo significa che il suo compito è quello di dare ad un browser (per chi non lo sapesse il browser è il programma che utilizzate per navigare in internet, quello che state utilizzando anche in questo momento. Citiamo ad esempio Internet Explorer, Opera, Firefox, Netscape) le istruzioni su come visualizzare la pagina web ed i suoi contenuti attraverso alcuni “tag” o “marcatori” che non sono altro che dei semplici comandi. Ad esempio i tag dell’HTML possono ordinare al browser quale sarà il colore di sfondo della nostra pagina web, indicare la grandezza dei caratteri, includere immagini e file di vario genere ecc. Ad esempio, utilizzando l’HTML possiamo ordinare al browser che lo sfondo della nostra pagina è arancione utilizzando il tag <body bgcolor="#FFA500">. Per capire meglio, facciamo un piccolo ragionamento: il browser parla una lingua tutta sua e se gli ordiniamo determinate cose dobbiamo farlo nella sua lingua, cioè l’HTML.
La differenza tra l’HTML (che come abbiamo detto sopra è un linguaggio di contrassegno) e il mondo dei linguaggi di programmazione e di scripting è che questi ultimi possono generare applicazioni e programmi più complessi, mentre il nostro caro HTML è semplice. Non è permesso con questo linguaggio ad esempio di creare programmi che possono dare al browser istruzioni differenti a seconda della situazione (in questo caso fai questa cosa, in quest’altro fai una cosa differente). Per concludere diremo semplificando che l’HTML non è altro che il linguaggio basilare e fondamentale col quale vengono strutturate le pagine web. Miei cari futuri webmaster, conoscere l’HTML è un requisito fondamentale per chiunque voglia addentrarsi nel mondo della programmazione. Con queste righe spero di avervi aiutato a capire cos’è e spero anche che ora siate pronti per gettarvi su qualche guida/corso/libro di HTML. Credetemi: questo linguaggio è molto più semplice di quanto non si creda!!
PHP
Vediamo adesso un linguaggio di scripting molto utilizzato che vi farà capire meglio la differenza tra un linguaggio semplice come l’HTML e linguaggi più complessi. Andando ad aprire qualsiasi guida riguardante questo linguaggio, le prime caratteristiche che ci verranno elencate sono che il PHP è dinamico e che è un linguaggio di scripting lato-server. Solitamente a questo punto dovreste fare facce strane e sbigottite, ma non preoccupatevi, anche in questo caso andremo a “tradurre” questi paroloni spiegandone il significato. Abbiamo visto prima che il browser interpreta il linguaggio HTML traducendolo in pagine web. Ma come reagisce d’innanzi a un programmino scritto in PHP?? Ecco cosa succede quando chiediamo al browser di aprire una pagina che ospita al suo interno del testo scritto in PHP.
1) Il server (il server non è altro che il computer remoto) riconosce all’istante il linguaggio PHP e lo interpreta capendo il comando che gli viene dato e traducendolo in linguaggio HTML.
2) La pagina web che nel passaggio precedente è stata interpretata dal server viene ora spedita al browser.
3) Il browser interpreta senza difficoltà la pagina web che gli è stata spedita dal server, dato che quest’ultimo ha già svolto tutto il lavoro traducendo le istruzioni PHP in istruzioni HTML che il browser visualizza senza difficoltà
Ricapitolando semplicemente: dobbiamo generare una cosa nel nostro sito e questa cosa è troppo complessa per essere creata in semplice HTML e dunque ci affidiamo al PHP, ma come detto prima, la lingua del browser è l’HTML. Qui entra in gioco il server che riconosce all’istante il linguaggio PHP, lo interpreta e capisce ciò che gli stiamo chiedendo tramite questo linguaggio. Fatto questo si occupa personalmente di tradurre il tutto in semplici istruzioni HTML che il browser interpreta senza problemi. L’aggettivo linguaggio di scripting lato-server deriva proprio dal fatto che il PHP prima di essere letto dal nostro browser passa prima dal server.
Chiarito il funzionamento di questo linguaggio, andiamo a descriverne alcune caratteristiche in modo da renderci conto delle effettive differenze tra un linguaggio semplice come l’HTML e uno più complesso, potente e strutturato come il PHP.
Variabili, operatori, array
Non spaventatevi di fronte a questi nomi. Le variabili, sono come dei contenitori di valori. Se ad esempio affidiamo il valore “3” ad una variabile, ogni volta che chiameremo in causa la nostra variabile, otterremo al posto della variabile il valore 3. Stessa cosa avviene se le affidiamo il valore “Pierino” o qualsiasi altro valore. Il server web interpreterà la nostra variabile e la tradurrà in “3”, in “Pierino” o in qualsiasi altro valore noi vorremo. Gli array non sono altro che delle variabili che possono contenere più valori. Ad esempio possono contenere contemporaneamente sia “3” che “Pierino”. Gli operatori infine non fanno altro che aggiungere dei valori. Ad esempio se noi volessimo aggiungere alla nostra variabile contenente il valore “3” un valore di +1 otterremmo un risultato di 4. Tutto qui?? Direte voi. Vedrete che quando studierete queste cose sulle vostre amate guide, vi sembreranno molto più complicate e soprattutto quando inizierete a metterle in pratica capirete le reali potenzialità di questo linguaggio.
If, else
Questa è una struttura di controllo che ci permette di dire a PHP di eseguire una cosa o un’altra a seconda di determinate condizioni che si verificano. Sostanzialmente gli stiamo dicendo: in questo caso devi fare così, mentre in quest’altro devi fare una cosa diversa. Insomma, l’ordine che riceverà sarà differente a seconda della situazione.
While Il ciclo while ci permette di ripetere lo stesso ordine più volte fino a quando una determinata condizione continua a verificarsi.
Insomma, questi sono solo alcuni esempi che non mirano a farvi capire il PHP (se fossi capace di spiegarvi il PHP in queste poche righe probabilmente la mia vita sarebbe più agiata e il mio conto in banca avrebbe degli zeri in più) ma potrebbero illuminarvi sulla differenza tra un linguaggio di scripting o un linguaggio di programmazione e il semplice HTML. Appena studierete quest’ultimo, vi accorgerete che cose come variabili, ciclo while e quant’altro non sono assolutamente immaginabili con un così semplice linguaggio.
MySQL
Dopo aver chiacchierato e capito (almeno spero) cos’è l’HTML, qual’è il suo ruolo nel web, quali sono le sue potenzialità e dopo avere visto le differenze che vi sono tra questo e il PHP (ma avremmo potuto prendere da esempio ogni linguaggio di scripting o di programmazione), andremo a parlare di un altro termine che avrete spesso sentito nominare: database. In particolare vedremo cos’è il server database MySQL, uno dei più noti e utilizzati nel web. Un server database è un programma in grado di contenere una grande quantità d’informazioni che vengono archiviate e organizzate dentro di esso. Il nome MySQL deriva dal fatto che anche il database parla una sua lingua: SQL ovvero structured query language. Immaginate di avere un magazzino che contiene del materiale, diviso in scompartimenti ordinati a seconda della tipologia del contenuto. Questo è il nostro database MySQL: dentro di esso, infatti, possiamo archiviare tutto ciò che vogliamo appaia nel nostro sito web e questo è suddiviso in tabelle. Come facciamo a richiamare i dati presenti nel nostro database affinché gli utenti possano visualizzarli coi loro browser?? Utilizzando un linguaggio di scripting, ad esempio il nostro caro PHP. Per farla più semplice, noi abbiamo dei dati che abbiamo comodamente archiviato in un database MySQL. Per richiamarli utilizzeremo il PHP che come abbiamo visto nel paragrafo ad esso dedicato, li trasmetterà tramite alcune procedure a sua volta al browser sotto forma di HTML pronto da leggere. In sostanza da una parte c’è la pagina web, dall’altra il database, e il PHP li mette in comunicazione. Ad esempio, se noi abbiamo un sito che contiene 10000 versioni di latino tradotte in italiano, anziché scrivere un documento HTML per ciascuna versione, basterà immetterle nel database e andarle poi a “pescare” di volta in volta tramite il PHP. Ovviamente potrete scegliere di utilizzare tanti altri database, MySQL non è l’unico come del resto il PHP non è certo l’unico linguaggio di scripting, ma questo binomio vincente è largamente utilizzato con grandi risultati.
Sappiate che l’ordine delle sezioni di questo articolo non è casuale, infatti la prima cosa che dovrete fare per diventare webmaster è apprendere l’HTML, poi potrete scegliere diverse strade, ma una molto battuta è quella di familiarizzare subito col linguaggio PHP e i database MySQL. Addirittura, potreste combinare lo studio di questi due elementi, in modo da vedere bene cosa sono in grado di fare assieme studiandoli contemporaneamente. Altre conoscenze che potrebbero tornarvi utili (o in alcuni casi fondamentali) sono XHTML, CSS, Javascript. Ricordando anche ASP, AJAX, C, JAVA, FLASH e tante altre tecnologie. Sappiate che più estese saranno le vostre conoscenze, maggiori saranno le possibilità di sviluppare buoni lavori. E’ dunque doveroso spendere ancora qualche parola su questi argomenti.
XHTML
Di fatto il w3c (World Wide Web Consortium. Se non ne avete mai sentito parlare, sappiate che è il w3c che rilascia oggi le nuove tecnologie riguardanti il web) ha rilasciato questo linguaggio con uno scopo molto semplice: sostituire l’HTML. In realtà questo linguaggio di contrassegno non aggiunge alcun tag né alcun cambiamento drastico e radicale all’HTML. Il nome nasce dall’unione di HTML e XML, unione che indica la voglia di aderire ad un web sempre più universale. XML è infatti sinonimo di potenza, rigore assoluto. Questo linguaggio è la base di tutte le nuove tecnologie rilasciate dal w3c. Senza entrare nello specifico, diremo che XHTML è nato per generare documenti più “puliti” di quanto possa fare HTML, cambia il modo di organizzare e gestire il contenuto (non più layout stile e contenuto in un unico documento HTML, ma in documenti separati e meglio strutturati). Molte di queste problematiche sono però molto difficili da concepire per voi che non avete mai sviluppato pagine web, probabilmente le capirete col tempo, dopo averle sperimentato sulla vostra pelle.
In ogni caso, HTML continua ad essere il più utilizzato e del resto quando vorrete passare dall’HTML all’XHTML non avrete grandi difficoltà, dato che questo sfrutta lo scheletro dell’HTML. Infatti il requisito per apprendere l’XHTML è conoscere l’HTML.
CSS
CSS non è altro che la sigla di Cascading Style Sheets, in italiano “fogli di stile a cascata”. Nasce da un’esigenza molto semplice: separare layout e contenuto. Il layout, ovvero la parte puramente estetica e grafica del documento HTML, tramite i CSS può essere gestita separatamente ottenendo codice migliore e documenti più leggeri. Sostanzialmente il concetto è: non più contenuto testuale e parte estetica dentro un unico documento, ma in due documenti distinti meglio strutturati e gestibili. File CSS per il layout e HTML o XHTML per il contenuto.
Javascript
Eccoci d’innanzi ad un altro importantissimo linguaggio di scripting, probabilmente il più usato e importante, nonché il linguaggio maggiormente compatibile coi vecchi browser. Javascript, sviluppato dagli autori di Netscape nel 1995, ha rivoluzionato il web di quegli anni, dando per la prima volta dinamicità ai siti che l’hanno adottato. Inoltre è un linguaggio relativamente semplice e adottato per utilizzare molte nuove tecnologie, ad esempio FLASH.
Bene, forse ora avete qualche idea su cosa sono i linguaggi di programmazione e potete iniziare i vostri studi con qualche nozione in più. Ricordate alcuni piccoli consigli:
1)Cercate di sviluppare lavori compatibili con ogni browser principale: avere un sito visibile dalla maggior parte degli utenti è una cosa molto importante. Purtroppo non tutti i browser visualizzano allo stesso modo le pagine web. D’altro canto voi state iniziando a programmare in un periodo roseo da questo punto di vista, dato che oramai la maggioranza dei browser seguono tutti una strada comune che porterà forse un giorno ad avere pagine visualizzabili allo stesso modo con ciascuno di essi.
2)Sviluppate lavori completi sotto ogni aspetto, e collaborate a quattro (o magari sei, otto, dieci) mani con un vostro grafico di fiducia, in modo da realizzare progetti validi non solo dal punto di vista della programmazione, ma anche da quello della grafica e del contenuto.
3)Pianificate il vostro lavoro in maniera creativa e originale, ma soprattutto completa: dovete avere idee chiare su ogni dettaglio del vostro sito, non lavori incompleti sotto alcuni aspetti e nemmeno idee altrui scopiazzate. Create cose di qualità.
4)In particolar modo, coloro che mirano a creare giochi di ruolo on-line devono stabilire alcuni punti importanti, che purtroppo molte volte vengono tralasciati: decidere un’ambientazione originale e possibilmente non troppo sfruttata; preparare un progetto serio, stabilendo ambientazione, storia e regolamento scritti in maniera completa e corretta; decidere come strutturare il lavoro sia dal punto di vista tecnico che da quello grafico. Insomma interrogarsi su ogni virgola, su ogni dettaglio, dato che di gdr di scarso successo ve ne sono molti, mentre suppongo che un webmaster ambisca a grandi traguardi, ottenibili solo con un prodotto di qualità.
5)Infine, un consiglio che sgorga dal cuore: aspettate a pubblicare un vostro lavoro fino a quando questo non è finito, e qui non mi riferisco solo ai gdr, ma a qualsiasi prodotto web che state realizzando. Non lasciate tutto incompleto presentando problemi tecnici, grafica obsoleta e chissà quanti altri problemi. Uccidereste il vostro progetto sul nascere. Se siete al 70%, non aprite al grande pubblico, aspettate di essere al 101%!!!
Detto ciò, vi ricordo una cosa molto importante: io vi ho parlato con un linguaggio estremamente semplice per introdurvi a questo mondo, ma il vero passo dovrete farlo voi. Sappiate che per diventare programmatori bisogna sudare, come in tutte le cose del resto. Come disse Morpheus: “Io non posso fare altro che indicarti la via, sta a te percorrerla”. Scherzi a parte, con lo sviluppo del wiki da parte di alcuni abili e pazienti programmatori su gdr-online, avrete uno strumento enorme tra le vostre mani, ma dipenderà dalla vostra dedizione il vostro successo. Consiglio caldamente di seguire il percorso HTML – PHP – MYSQL – CSS – XHTML – Javascript in quanto questi linguaggi sono fondamentali per creare un buon sito internet. Non mi resta che augurarvi buon lavoro!!!
E’ dunque il momento di svelare il segreto che si cela dietro a questa maledetta parola. Avrete forse letto che HTML non è altro che la sigla di Hypertext Markup Language (In italiano: linguaggio di contrassegno per gli ipertesti). Ma come detto in precedenza, questa piccola guida vuole spiegare con parole differenti e più semplici questi concetti. Quindi apprestiamoci a tradurre, soffermandoci su una parola: contrassegno. HTML infatti non è un linguaggio di programmazione, ma un linguaggio di contrassegno o “di marcatura”. Questo significa che il suo compito è quello di dare ad un browser (per chi non lo sapesse il browser è il programma che utilizzate per navigare in internet, quello che state utilizzando anche in questo momento. Citiamo ad esempio Internet Explorer, Opera, Firefox, Netscape) le istruzioni su come visualizzare la pagina web ed i suoi contenuti attraverso alcuni “tag” o “marcatori” che non sono altro che dei semplici comandi. Ad esempio i tag dell’HTML possono ordinare al browser quale sarà il colore di sfondo della nostra pagina web, indicare la grandezza dei caratteri, includere immagini e file di vario genere ecc. Ad esempio, utilizzando l’HTML possiamo ordinare al browser che lo sfondo della nostra pagina è arancione utilizzando il tag <body bgcolor="#FFA500">. Per capire meglio, facciamo un piccolo ragionamento: il browser parla una lingua tutta sua e se gli ordiniamo determinate cose dobbiamo farlo nella sua lingua, cioè l’HTML.La differenza tra l’HTML (che come abbiamo detto sopra è un linguaggio di contrassegno) e il mondo dei linguaggi di programmazione e di scripting è che questi ultimi possono generare applicazioni e programmi più complessi, mentre il nostro caro HTML è semplice. Non è permesso con questo linguaggio ad esempio di creare programmi che possono dare al browser istruzioni differenti a seconda della situazione (in questo caso fai questa cosa, in quest’altro fai una cosa differente). Per concludere diremo semplificando che l’HTML non è altro che il linguaggio basilare e fondamentale col quale vengono strutturate le pagine web. Miei cari futuri webmaster, conoscere l’HTML è un requisito fondamentale per chiunque voglia addentrarsi nel mondo della programmazione. Con queste righe spero di avervi aiutato a capire cos’è e spero anche che ora siate pronti per gettarvi su qualche guida/corso/libro di HTML. Credetemi: questo linguaggio è molto più semplice di quanto non si creda!!