Perché Ruby

Perché usare Ruby invece dei più noti C/C++, Java, Fortran?

Il motivo è semplice: essendo un primo corso di informatica/calcolo numerico/programmazione l’attenzione deve essere focalizzata sulla programmazione e non sulle caratteristiche del linguaggio.

Da questo punto di vista Ruby è una ottima scelta essendo un linguaggio tra i più facili da imparare per una programmazione a basso livello. Ma è un linguaggio sofisticato e abbastanza completo e supporta vari paradigmi di programmazione. è un linguaggio interpretato e quindi non necessita di compilazione, librerie da linkare o altro. Insomma è un linguaggio dove si ci concentra solo sull’algoritmo e sulla programmazione.

Infine avendo una sintassi simile al C è molto facile una volta imparato a programmare passare ad altri linguaggi come C/C++, Java, Fortran, Pascal etc.

Per avere avere una idea di quanti linguaggi di programmazione sono stati inventati date una occhiata al sito: http://www.levenez.com/lang/

Imparare Ruby (Italiano)

Imparare a Programmare in Ruby

questo sito contiene un corso online completo per imparare Ruby. Se non bastano le lezioni e le esercitazioni, o comunque qualche concetto è sfuggito questo sito è l’ideale per coprire le lacune. (Fortemente consigliato).

Ruby in Venti Minuti

Se partite da 0 non imparate a programmare in 20 minuti. In ogni caso sono ottimi 20 minuti o più da spendere.

Ruby User Guide

traduzione italiana da scaricare localmente. Manuale del linguaggio con una panoramica su tutte le sue caratteristiche. Manuale tradotto da: Gianluigi Spagnuolo, Cristiano Macaluso, Massimo Arnaudo, Gabriele Renzi.

Imparare Ruby (Inglese)

Ruby Essentials

Un ottimo libro online.

The Bastards Book of Ruby

Libro on line per imparare Ruby. Non adatto per un neofita ma ottimo come riferimento o per che conosce altri linguaggi di programmazione.

Imparare Ruby in modo interativo

serie di lezioni online per imparare Ruby.

Mr. Neighborly’s Humble Little Ruby Book

Un libro sul linguaggio Ruby.

Little Book Of Ruby

Semplice e un po datato sebbene abbastanza approfondito mini-libro sul linguaggio Ruby.

Corso interativo di codecademy

Fatto molto bene ma più adatto a chi sa già programmare in qualche altro linguaggio.

Problemi per esercitarsi nella programmazione

Problema N.1:

Leggere un file ascii che contiene una prima riga di intestazione con i nomi delle colonne. Le successive righe contengono le colonne dei dati. Il file letto va memorizzato in una hash le cui chiavi sono i nomi dello colonne della intestazione.

Una volta letto e memorizzato il file calcolare media e deviazione standard di ogni colonna.

Problema N.2:

Una volta letto il file del problema N.1 trasporre i dati e salvarli su un’altro file. Cioè la prima colonna diventa la prima riga, la seconda colonna diventa la seconda riga e cosi via.

Problema N.3:

Leggere un file ascii, separare i vari paragrafi cioè i blocchi di parole in linee consecutive non contenenti linee vuote. Salvare ogni paragrafo in una hash e farsi stampare sul terminale il numero di paragrafo il numero di parole che contiene.

Compattare (giustificare) ogni paragrafo in modo che riempia al meglio 80 colonne. Salvare su un altro file il file giustificato.

Altri problemi per esercitarsi nella programmazione

Progetto Eulero

Questo progetto raccoglie una serie di problemi che richiedono un po di matematica e un po di programmazione per essere risolti.

Olimpiadi dell’informatica (USA)

Sito che raccoglie i problemi proposti per le gare di informatica per le scuole superiori e materiale per addestrarsi.

DelphiForFun

Sito pieno di problemi, puzzle, e algoritmi ad ogni livello.

Al Zimmermann’s Programming Contests

sito con gare periodiche di programmazione (non per principianti).