[APPUNTI DI INFORMATICA] - L'architettura base postato il 23/03/2016 11:17:30 nel forum programmazione, gdrcd, open source, hosting
Seguendo il consiglio di Kasa, l'argomento sarà in un unico thread nel quale videnzierò i punti per la ricerca veloce.
- L'HOSTING e LA SCELTA del LINGUAGGIO SERVER-SIDE
- LA SCELTA DEL MEDIA DI ARCHIVIAZIONE
- LA SCELTA DEL CLIENT-SIDE SCRIPTING
Parlando di codice proprietario, data l'esperienza su GDROnline, il primo linguaggio di programmazione che viene in mente è sicuramente PHP per svariati motivi: è facile, grauito e famoso. Inoltre chi proviene da studi scolastici inerenti a C o Python, lo trova particolarmente familiare.
PHP sarà il linguaggio server-side di riferimento in questi appunti perchè più vicino alle realtà attuali degli utenti di GDRONline ed a quanto già proposto sul mercato dei PBC ma osserveremo, nel corso del tempo, anche esempi in altri linguaggi così che vi sia il riscontro e la comprensione di quale possa essere migliore di altri ed al contempo rafforzare il concetto che la soluzione sia slegata dal linguaggio.
Vedremo più avanti nel dettaglio l'achitettura e le definizioni legate alla comunicazione client/server. Per il momento ci limiteremo a dire che quando il browser richiama una pagina web da un indirizzo qualsiasi, vengono trasferiti dei dati dal posto in cui sono salvati i files (server) al vostro browser (client): il risultato è una pagina in un linguaggio che viene definito "interpretato", ovvero il browser "legge" il codice riga per riga e lo traduce in qualcosa di visibile.
Di conseguenza il linguaggio server-side si occupa di creare e manipolare le pagine, in modo da fornire al client un codice che possa leggere ed interpretare.
- L'HOSTING e LA SCELTA del LINGUAGGIO SERVER-SIDE
Avendo deciso di utilizzare PHP come dai precedenti appunti, sarà sufficiente uno spazio web (hosting) che supporti la versione più recente o, almeno, che sia la 5.4 per motivi di compatibilità ed evoluzione delle tecnologie. Uno spazio web come Altervista sarà più che sufficiente per qualunque tipologia di architettura vorrete utilizzare per il vostro progetto: non è necessario acquistare uno spazio web per possedere un dominio dedicato in quanto le due cose sono slegate seppur vengano vendute quasi sempre in coppia.
Sopratuttto in un primo momento, quello della prima stesura e completamento della versione base, sarà consigliabile risparmiare ogni euro ed utilizzare un semplice hosting gratuito con i requisiti minimi come possono essere Altervista o similari.
Un accesso FTP sarà necessario per poter interagire con lo spazio web.
- LA SCELTA DEL MEDIA DI ARCHIVIAZIONE
Un qualsiasi sito multi utente ha necessariamente bisogno di avere un sistema per l'archiviazione ed il recupero dei dati.
Tempo addietro si utilizzava un sistema ad accesso sequenziale che in molti "vecchi" conoscono, ovvero il nastro magnetico: questo, tramite un indice relativo alla posizione della testina, scorrendo il nastro avanti od indietro, poteva recuperare qualsiasi dato di qualsiasi dimensione basandosi su un tempo di accesso (ricerca/lettura/scrittura) molto alto.
Vi sono due modi che utilizzano lo stesso principio: i files ed i Database, i quali possono essere osservabili come files diversamente organizzati. In questo capitolo non scenderemo nel dettaglio dell'architettura di un database relazionale, concentrandoci maggiormente su quale sia la scelta migliore per la gestione dei dati.
File e DB hanno lo stesso sistema di accesso sequenziale, ovvero non è possibile leggere la riga N+1 senza aver letto tutte le N righe precedenti. La differenza sostanziale consiste nel metodo di recuper ed elaborazione dei dati: il file, oltre le funzioni fornite dal core del linguaggio server-side, necessita di funzioni dedicate e scritte in un secondo tempo al fine di recuperare i dati, spesso convertendo il file in un array e leggendolo sequenzialmente o indicando determinati indici definiti puntatori.
L'utlizzo dei files è molto utile quando diviene necessario immagazzinare grandi quantità di dati il cui accesso non è frequente, come ad esempio un archivio chat, archivio forum e via dicendo: essi risiederanno nello spazio web mantenendo dimensioni ridotte e garantendo una velocità di accesso relativamente alta.
Seppur una land possa essere totalmente creata utilizzando i soli files come sistema di archiviazione e gestione dei dati, quando le informazioni divendono dinamiche e di frequente accesso è meglio fare affidamento su un server esterno ed un motore per la gestione dedicato, ovvero SQL (nelle sue varie forme come MySQL, Oracle, SQLServer...).
SQL (Structured Query Language) permette di interagire con i dati sfruttando architetture e strutture già preesistenti ed ottimizzate, appositamente studiate per ottenere quasi ogni risultato richiesto.
Spesso si fa il grosso errore di affidare a PHP il lavoro che dovrebbe fare SQL, recuperando i dati grezzi dalla tabella ed elaborando questi in PHP (ordinare, sommare...), vanificando così la funzionalità e la disponibilità del Server SQL riducendo il database ad un files dalla forma differente. Per comprendere meglio questo aspetto, verrà in seguito dedicata una sezione negli appunti ai database ma credo che molti si ritroveranno nel seguente caso:
Pagine → 1
23/03/2016 11:36:55
Aggiunta la lezione alla discussione che le indicizza tutte: https://www.gdr-online.com/readforum.asp?id=209697 ↗
Pagine → 1
Rispondi alla Discussione Aggiungi ai Preferiti Inoltra Discussione Forum Programmazione, GDRCD, Open Source, Hosting Elenco Forum
I dati del generatore di rank sono stati aggiornati!
The Coven: Secondo turno della side quest
World of Warship → MMO gratuito con frenetiche battaglie navali ambientate nel ventesimo secolo. Salpa con la tua nave ed affronta i nemici!
Il gestore di Storie di Agarthi ha risposto alla recensione di do the evolution
Storie di Agarthi: La Corte d'Ossidiana — Schiera
Ex Gratia GDR: Nuove location di gioco nello Xanadu
La Tana del Ladro: TdL Stories - ⚡ Boati a Xantharl ⚡
Enlisted → Guida la tua squadra di soldati in combattimenti su larga scala, con fanteria, veicoli corazzati e aerei della IIa Guerra Mondiale!
nww ha aperto un annuncio di ricerca: New Wizarding World ricerca Giocatore
Lineage II: Promozione "E' tempo di craftare!"
Sea of Conquest: Codice gratuito per Festa del papà!
exfainte ha aperto un annuncio di ricerca: Sylmaera GDR ricerca Programmatore
Storie di Agarthi → Un Varco si apre davanti a te, un mondo tra i mondi è a portata di mano. Lasciati alle spalle le certezze, inizia l'avventura!
Dalemyr: Distribuzione a sorpresa
Ex Gratia GDR: Quest | Il magazzino della PEH!
Legacy of Magic: La nuova regina del Brehorn
Storie di Agarthi: Custodi della Sacra Fiamma — Schiera
World of Tanks → Lanciati in epiche battaglie spalla a spalla con altri giocatori. Conquista la supremazia nel mondo dei Carri Armati!
Creare un PNG - Come creare un PNG realistico e ben fatto?
Gdr-Online su Radio Serpe - Radio Serpe dedica un intera puntata al portale GDR-online! Buon ascolto!
D&D in Edicola! - I romanzi di Dungeons and Dragons escono in edicola a partire da oggi!
Saigo no Densetsu - Intervista al gestore del play by forum manga Saigo no Densetsu - La Leggenda del Momento Finale GDR
Yahoo Leak! - Yahoo: rubate mail e password di mezzo miliardo di persone. Cosa fare?
Gothik Praha - Intervista alla gestrice del GdR play by chat horror Gothik Praha
Creare un Background - Consigli ed alcune "linee guida" per creare un background credibile ed avvincente!
Giochi di Wrestling - Lista completa dei giochi di ruolo online ambientati nel patinato mondo del Wrestling