Languages to Learn

« Older   Newer »
 
  Share  
.
  1.  
    .
    Avatar

    Group
    Admin
    Posts
    3,329

    Status
    Anonymous
    Apro questo topic perché sempre più persone (di questo forum e non) mi chiedono come faccio a creare o modificare siti web a mio piacimento con una certa maestria (che io sinceramente non possiedo). Apprezzate la mia buona volontà di scrivere questa guida (sono molto volubile come umore X°D)




    Class: Linguaggi

    Anzitutto facciamo un elenco di linguaggi:
    --HTML
    --CSS
    --XML
    -------------------------------
    --Javascript
    --VBScipt
    -------------------------------
    --Php
    --Asp (e derivati)
    -------------------------------
    --Flash (Action Script)

    e ve ne sarebbero altri, ma ci fermiamo qui perché questi sono gli "abituali" nonché "più potenti", tra "" perché impareremo a capire che ogni linguaggio ha i suoi punti di forza e di debolezza.




    Class: Premessa

    Molti mi chiedono "ma tu li conosci tutti?" e io rispondo NO. Attualmente conosco HTML, CSS, XML, PHP e sto studiando (per completare la mia formazione) Javascript e Flash. Allora da cosa dipende la scelta vi chiederete voi... ve lo spiego immediatamente, ma prima dobbiamo introdurre un concetto un po' difficoltoso che molti faticano a comprendere : Client & Server.




    Class: Client & Server

    Allora : Il client SEI TU, un qualunque computer che effettua una richiesta ad un server, in questo momento, la richiesta che hai fatto è stata operata dal tuo Browser (Firefox, Internet Explorer, Safari, Opera o altri ancora) attraverso un protocollo (che non vi spiegherò) chiamato HTTP.
    Quindi : Il client è una macchina che effettua una richiesta ad un Server ed il Server è una macchina che riceve la richiesta e decide che fare, in questo caso, il client ha inviato la richiesta (VOGLIO VEDERE LA PAGINA BROWSER!) quindi hai digitato l'indirizzo, il Server ha interpretato la tua richiesta e ti ha fatto vedere ciò che volevi (ma un server ad esempio può solo raccogliere informazioni senza farti vedere nulla di nulla.) Nella prossima mini paginetta vedremo i vari SERVERs.




    Class: Server

    I server che andremo a vedere sono 2 :
    --Apache
    --IIS (Internet Information Server)

    Entrambi sono Web Server, ed operano utilizzando il protocollo HTTP per trasferire i dati (principalmente). Vedremo in seguito qual è la loro differenza.




    Class: Database

    Quelli che andremo a trattare sono :
    --MySQL
    --MS SQL Server (non fatevi ingannare dal titolo, è un DBMS e NON UN SERVER)

    Ma in realtà cos'è un DBMS? Un DBMS è un software che gestisce un database. Un database da solo è solo un insieme di dati diviso per tabelle. Una tabella contiene righe e colonne. Le colonne e le righe formano le celle. All'interno della cella vi sono i dati. Ma ricorda che l'insieme di Celle/Righe/Colonne/Tabelle, sono solo dati, ciò che muove tutto è il DBMS.




    Class: Prime differenze - Static vs Dynamic

    Prima di tutto vi spiegherò cosa c'è di diverso tra due linguaggi che prenderemo ad esempio : HTML e PHP/ASP. La principale differenza è questa :
    HTML crea un sito statico, PHP/ASP uno dinamico, ma che vuol dire?
    Facciamo un piccolo esempio :
    Se io programmo in HTML (ricordate che l'html NON è un linguaggio di programmazione), creo una pagina, ci scrivo 4 cose, la metto sul Server, do un nome al file. Ma se io volessi modificarla in modo che ogni utente (client) veda una pagina personale, come ad esempio il proprio pannello di controllo??? NON POSSO, HTML non mi consente di creare una cosa del genere, così nacquero i primi linguaggi in grado di creare contenuti personalizzati e dinamici : PHP/ASP.
    Con php posso creare una pagina in cui l'utente si registra, una in cui fa il login, ed una in cui guarda i suoi dati, tutto ciò attraverso l'uso di un sistema più semplice da schematizzare che da spiegare:

    STATIC (HTML) :

    Richiesta del client --> Server --> Pagina HTML --> Client Output (vedi la pagina HTML)

    DYNAMIC (PHP/ASP):

    Richiesta del client --> Server --> Interpretazione dei dati immessi (come ad esempio un login) --> Database --> Pagina HTML --> Client Output (vedi la pagina HTML con I TUOI DATI, NON QUELLI DI UN ALTRO!!!)

    L'html è solo un linguaggio strutturale, quindi anche sapendo il php/asp sarà necessario conoscere anche l'html.

    Questa è la distinzione che si fa quando si parla di siti web, quindi, pensa a quali siti sono i dinamici, quali archetipi...
    I Blog sono dinamici
    I Forum sono dinamici
    Facebook? Dinamico!
    Myspace? DINAMICO!
    Youtube? Difficilmente più dinamico di così
    Google? OVVIAMENTE DINAMICO

    Vuoi che ti faccia un esempio di statico? Provaci tu, ti do io gli indizi:
    --Non c'è registrazione né login
    --Non vi sono metodi d'interazione
    --Sono solo pagine da leggere, nulla per commenti o altro
    --Per "leggere" s'intende anche che vi siano delle immagini o contenuti in flash.




    Class: Seconde differenze - Free vs MICROSOFT

    Quindi vi chiederete a questo punto che cosa scegliere per creare il vostro sito dinamico... Vi rispondo subito :
    Se siete affini a Linux, avete abilità come programmatori di C/C++ scegliete la combinazione
    PHP-MySQL-Apache
    vice versa, se siete orientati ad un linguaggio quale Visual Basic, sceglierete
    ASP(o derivati come ad esempio ASP.NET)-MS SQL Server-IIS

    Ma qual è la differenza principale tra questi due sistemi?
    Probabilmente, togliendo le differenze di potenzialità (per me la combinazione PHP-MySQL-Apache non ha eguali), l'unica differenza è : la familiarità con Windows - Linux, infatti IIS può essere installato solo su windows, a differenza di Apache che può essere installato sia sul pinguino sia su Windows.
    --RICORDATE CHE Apache è un Web Server gratuito, continuamente sviluppato, affidabile, sicuro, nonché è il più utilizzato. A differenza delle false voci che prevedevano (nel 2005-6) un crollo del sistema Apache - Gnu/Linux--




    Class: Terze differenze - Scripts VBScript vs Javascript

    Anche qui :
    VBScript è una versione "scremata" di Visual Basic fatto per essere eseguito SOLO su internet explorer e quindi poco compatibile.
    Javascript è ovviamente il più utilizzato (Javascript, non Java, qui ci scappa il morto, Javascript è un linguaggio interpretato dal Browser, Java ha necessità di un compilatore)

    Questi due linguaggi sono differenti da PHP/ASP, infatti sono più simili all'HTML, agiscono sulla pagina che vedi, e non sul server come il PHP. Infatti il codice PHP non verrà mai mostrato all'utente, a differenza dell'HTML/CSS/XML/JAVASCRIPT. Entrambi permettono di fare molte cose, ma la principale funzione che hanno è quella di ESEGUIRE QUALCOSA quando AVVIENE UN EVENTO, ad esempio quando noi clikkiamo su un link, interviene il tag <a (HTML, abbreviativo di anchor) con il parametro href="LINK", se volessimo fare qualcosa del genere in Javascript faremmo : <a onClick="FUNZIONE">Testo

    Javascript è un linguaggio dalle potenzialità non indifferenti, a partire dalla grafica per finire alla parte di riposizionamento, ad esempio :
    Avete mai pensato come in una pagina cambia un contenuto ma non il resto della pagina? Il nome del metodo che viene usato per fare una cosa del genere è AJAX, che però rientra tra le capacità di programmatori esperti e che quindi non vi spiegherò.




    Class: CSS, XML e Flash, dove li mettiamo?

    Partiamo con ordine : il CSS:
    È un linguaggio indispensabile per definire la "grafica" di un sito, si utilizza per cambiare colore ai testi, ai bordi, A TUTTO, se non conoscete il CSS avrete un sito web misero (anche se avete le immagini). Infatti il Css non crea immagini ma regole per i contenuti. Il css è conosciuto anche come Fogli di Stile, infatti l'acronimo vuol dire (Cascade Style Sheets)

    Il flash:
    È un vero e proprio sistema con potenzialità illmitate, senza di esso non avremmo youtube ad esempio, flash infatti è famoso per la sua capacità di inserire elementi, anche interattivi, ed allo stesso tempo di avere la possibilità di interagire con i database attraverso azioni, infatti Flash, COME MODUS OPERANDI è molto simile a Javascript.

    L'XML:
    E qui scappa il secondo morto, è un concetto molto difficile da capire, ma l'XML lo usano anche coloro i quali non lo conoscono. Possiamo definire l'XML come un insieme di regole che regolamentano la scrittura dell'HTML. È un linguaggio come l'html, semplicemente è in grado di "creare" dei tag per sè stesso. Probabilmente questa descrizione è approssimativa per chi s'intende, ma capirete che i neofiti della programmazione web non potranno capire appieno cos'è l'XML finché non capiranno la struttura dell'HTML.




    Class: Quindi?

    Dividiamo i linguaggi in 3 categorie: Indispensabili, opzionali, additivi
    in cui indispensabile significa che senza quello non puoi fare nulla, opzionale vuol dire che rende il sito accettabile, additivo che rende maggiormente funzionale il sito

    Indispensabili:
    HTML
    CSS

    Opzionali:
    PHP
    ASP e derivati

    Additivi:
    VBScript
    Javascript
    Flash
    XML




    Guida scritta interamente da Klow37, licenziata sotto Creative Commons, se vi è servita ne sono felice ^^

    Creative Commons License
    Questo/a opera è pubblicato sotto una Licenza Creative Commons.

    Edited by .hack//Soul« - 17/1/2019, 20:51
     
    .
  2.  
    .
    Avatar

    DEDI Admin since 2008

    Group
    Admin
    Posts
    8,965
    Location
    Guidonia (Roma)

    Status
    Offline
    Mi sono permesso di mettere il topic in cima alla sezione e se vuoi lo evidenziamo pure.
    Comunque che dire..davvero ottima guida, non credo di aver mai visto di meglio, si vede che ci sai fare, e bene.
    ContactsWeb
     
    .
  3.  
    .
    Avatar

    Group
    Admin
    Posts
    3,329

    Status
    Anonymous
    Ma se l'ho anche specificato :kill:
    CITAZIONE
    (che io sinceramente non possiedo)

    Comunque, non è necessario evidenziarlo, metterlo in cima, si può fare come si può fare a meno, ti ringrazio lo stesso per il complimento ^^
     
    .
  4. semola94
     
    .

    User deleted


    klow sei un DIO insomma in poche parole un genio, dio quante cose sai, ma come fai?? io TI HO SEMPRE STIMATO fin dal prencipio!!
     
    .
  5. avenging angel
     
    .

    User deleted


    CITAZIONE (semola94 @ 10/2/2011, 21:13) 
    klow sei un DIO insomma in poche parole un genio, dio quante cose sai, ma come fai?? io TI HO SEMPRE STIMATO fin dal prencipio!!

    non risploverare topic vecchi di mesi e mesi.
     
    .
  6.  
    .
    Avatar

    Group
    Member
    Posts
    68
    Location
    Palermo

    Status
    Offline
    O.O :sisi: una sola parola: uao!!!
     
    .
5 replies since 10/6/2010, 17:15   188 views
  Share  
.