
Last Updated on 7 Settembre 2019 by Roberto De Pedrini
Il 20 Ottobre 2018 è stata rilasciata la Community Edition 2 di PowerRuby. E’ di fatto la fusione di Developer Edition e di Community Edition: il componente coperto da license key (che caratterizzava la Developer Edition) è venuto così a far parte del packaging della versione CE2 come opzione 1. Questa opzione abilità l’utilizzo di una gemma (così si chiamano i moduli addizionali nel gergo Ruby) che consente l’accesso al DB2. Il grace period è di soli 7 giorni ma -a fronte della registrazione- si può ricevere una license key valida 7 anni dalla data del rilascio (quindi fino al 20 Ottobre 2025).
Tutto il progetto PowerRuby è originato da un investimento della società inglese Dancerace Ltd volto a studiare nuove possibilità di utilizzo dell’architettura IBM i nell’ambito dello sviluppo applicativo. In tal senso il cuore dell’operazione è stato realizzare le estensioni mirate alla integrazione al DB2. Mi limiterò qui a segnalare tre aspetti di tale integrazione.
Il primo aspetto riguarda lo Unicode. Tutto lo sviluppo Web consente di utilizzare uniformemente la codifica UTF-8 ma quando si accede al database si possono presentare problemi. Un approccio potrebbe essere quello di creare tutte le tabelle con campi testo definiti per gestire Unicode. In tal modo non avremmo valorizzato una funzionalità del DB2: DB2 per IBM i è in grado di convertire l’encoding in scrittura e lettura -selettivamente per ciascuno campo- senza imporre nulla all’applicativo. Si è trattato quindi di offrire in fase di definizione dei campi (le cosiddette “migration” di Rails) la possibilità di indicare campo per campo un CCSID specifico: ed è quello che abbiamo fatto.
Il secondo aspetto concerne la integrazione del supporto alle foreign keys nella logica elegante offerta da Active Record di Rails. Tutte le operazioni di definizione sono a carico del middleware Rails che adotta anche qui il famoso concetto CoC (Convention-over-Configuration)
Il terzo aspetto molto elegante (per la pulizia del codice applicativo) è l’aver integrato il supporto alle transazioni offerto da Active Record. Azioni multiple sul database possono quindi essere raccolte all’interno di una unica Unit-of-Work con una sintassi limpida.
Il punto di partenza per approfondire è la documentazione ufficiale.
Il supporto (e la richiesta di licence key) si esplica attraverso l’indirizzo support@powerruby.com .
Enjoy PowerRuby CE2!