Grails

Τον τελευταίο καιρό έχω πολύ ελεύθερο χρόνο. Άδραξα την ευκαιρία και πειραματίζομαι με κάποιες τεχνολογίες για web applications. Πρώτα έριξα μια ματιά στο δημοφιλές Ruby on Rails και μου άρεσε πολύ αλλά δυσκολευόμουν με την σύνταξη της Ruby. Ακολούθησα μερικά από τα tutorials και πήρα μια γεύση. Ψάχνοντας από δω και από κει ανακάλυψα το Grails... Η αρχική σελίδα του Grails έχει title Grails - The search is over. Πραγματικά πολύ πετυχημένος τίτλος.

Το Grails είναι ένα web application framework για την Groovy (μια scripting language βασισμένη στη Java). Βασίζεται στο Ruby on Rails εξ' ου και και το όνομα G - rails (Groovy Rails) και έχει σήμα το Ιερό Δισκοπότηρο (Holly Grail, πολύ πετυχημένο και αυτό). Δηλώνω εντυπωσιασμένος:
  1. Το Grails έχει το δικό του ORM tool αν και δεν είναι έτσι διότι το GORM (Grails' object relational mapping) παίζει με Hibernate από πίσω. Γράφεις τα models σου με τα relationships, constraints με πολύ εύκολο τρόπο. Μπορείς να γράψεις και validation rules.
  2. Μπορείς γρήγορα με δυναμικό τρόπο να δεις views με CRUD operations για τα models. Δεν γράφεται τίποτα κάπου. Τεστάρεις και τελειοποιείς τα models πριν να συνεχίσεις. Το feature αυτό λέγεται scaffolding.
  3. Μπορείς να κάνεις generate τους controllers και τα views στο άψε σβήσε (To Grails είναι αυστηρά MVC pattern implementation, models είναι τα entities, views τα gsp αρχεία και οι controllers έχουν την λογική). Μετά μπορείς να δεις το κώδικα και να τον αλλάξεις. Άμα έχεις παίξει με Java και Hibernate είναι πολύ ευχάριστο να δουλεύεις με τη Groovy!
  4. Το Grails έχει native υποστήριξη για Ajax (Prototype, Dojo...)
  5. Το Grails χρησιμοποιεί το Spring MVC under the hood. Άρα μπορείς να προγραμματίζεις με interfaces και να χρησιμοποιείς dependency injection.
Να δω αν τα καταφέρω να γύρισω τα μυαλά κάποιων να χρησιμοποιήσουν το Grails... Οδηγίες για να εγκαταστήσετε τη Groovy εδώ και το Grails εδώ για το Mac OS x Leopard. H beta version του Netbeans 6.5 έχει native support για το Grails.
0