Corso di Programmazione Web con Ruby ed SQL

Corso Ruby Sql Web LogoAgli albori del World Wide Web la figura professionale di riferimento era il Web Master, ovvero il "tuttofare" che realizzava i siti web da zero, anche in autonomia.

Nel corso dell'ultimo decennio, con l'aumentare della complessità del Web e dei progetti a esso correlati, le figure professionali di riferimento si sono nettamente differenziate.

Il Web Developer (o Programmatore Web o Sviluppatore Web) è la figura professionale che si occupa di progettare e programmare la logica di business del sito web utilizzando un linguaggio di programmazione lato Server come, in questo caso, Ruby .

In altre parole, il Web Developer è il professionista che progetta e sviluppa il back-end dei siti web, ovvero la parte logico-funzionale, tipicamente eseguita dal Server e che gli utenti non vedono.

Volendo fare un parallelismo fra lo sviluppo di un'applicazione web e quello di un nuovo modello di automobile, il Web Developer si occuperebbe principalmente del motore, lasciando invece il design della carrozzeria e dell'abitacolo al Web Designer.

Requisiti minimi: Predisposizione per la programmazione e una conoscenza base di Internet, del Web e del linguaggio HTML.

Requisiti consigliati: Aver frequentato il nostro Corso di Introduzione al Web o equivalente e, di conseguenza, avere già un proprio progetto web (e.g. un piccolo sito personale) sul quale lavorare.

Durata: 80 ore.

Programma

Il Corso di Programmazione Web in Ruby ed SQL integra il Corso di Programmazione in Ruby con gli argomenti necessari alla programmazione di Siti Web Dinamici, in particolare l'interfacciamento con un Database SQL e la generazione dinamica di pagine HTML e costituisce la migliore introduzione possibile allo sviluppo Web avanzato con l'utilizzo del Framework Ruby on Rails.

Introduzione

  • Installazione di Ruby
  • Gli strumenti di Lavoro
  • I comandi principali per eseguire Programmi in Ruby

Lavorare coi Numeri

  • Numeri interi e numeri con virgola mobile
  • Aritmetica di base
  • Il comando puts

Lavorare con le Lettere

  • Le stringhe di testo
  • L'aritmetica delle stringhe
  • La differenza fra 12 e '12'

Variabili e Assegnamenti

  • Cosa sono le variabili
  • Come funzionano gli assegnamenti
  • Scema dell'utilizzo della memoria

Unione dei concetti fin qui trattati

  • Le conversioni
  • Approfondimento sul metodo puts
  • Il metodo gets
  • Il metodo chomp
  • I metodi
  • I principali metodi delle stringhe
  • Metodi matematici
  • Numeri casuali
  • L'oggetto Math

Il controllo del Flusso

  • Metodi di comparazione
  • Il branching
  • Il looping

Array e Iteratori

  • Il metodo Each
  • I metodi degli Array
  • I vantaggi degli Iteratori

Creazione nuovi metodi

  • Come scrivere metodi personalizzati
  • I parametri dei metodi
  • Le variabili locali
  • Lo scope
  • I valori di ritorno

La ricorsione

  • Come scrivere metodi ricorsivi
  • Un rito di passaggio: l'ordinamento ricorsivo 

Basi di Input e Output

  • L'oggetto IO
  • Aprire, Leggere, Scrivere e Salvare un File
  • Il linguaggio YAML
  • Leggere l'HTML

Nuove Classi di Oggetti

  • La Classe Time
  • La Classe Hash
  • I Range
  • Il funzionamento delle Classi

Modificare Classi esistenti e crearne di nuove

  • Creare nuove classi
  • Le variabili d'istanza
  • new e initialize
  • programmare un semplice giochino

I Blocks e i Procs

  • Metodi che accettano un Proc come parametro
  • Metodi che restituiscono Proc
  • Passare Block (e non Proc) ai metodi

Condivisione della funzionalità

  • Ereditarietà fra classi
  • Moduli
  • Mixin

Le Basi della Programmazione Avanzata

  • Collaborare con un team di sviluppo: gli SCM, le repository e GIT  
  • Le Eccezioni
  • I Test e il Test Driven Development
  • La metaprogrammazione
  • I Framework

La Generazione Dinamica di pagine HTML

  • I Siti Web Dinamici
  • Generazione di HTML tramite Ruby
  • I Form e la gestione dei Dati
  • Interfacciamento del Database con il Sito Web
  • I Framework

Il DBMS PostgreSQL

  • Teoria dei Database Relazionali 
  • Progettazione del Database
  • Il linguaggio SQL
  • Ottimizzazione delle queries e degli indici
  • Introduzione al framework Ruby on Rails

Pratica

Entro il termine del corso ciascuno studente avrà realizzato, sotto la supervisione del docente, un semplice sito web dinamico con architettura three-tier.


Attestato di Frequenza e Orientamento

Al termine del Corso ti sarà rilasciato un Attestato di frequenza e ti sarà indicato il corso e/o i contenuti più idonei a proseguire gli studi sulla base delle tue capacità, passioni e aspirazioni. Con particolare riferimento al Corso di Ruby on Rails.