groovy — συγκεντρωτικός οδηγός — DedSec Project
groovy — συγκεντρωτικός οδηγός Groovy Μοντέλο λειτουργίας Η Groovy λειτουργεί στην JVM και προσφέρει dynamic properties, closures και σύντομη σύνταξη που χρησιμοποιείται και σε build…
Groovy
Μοντέλο λειτουργίας
Η Groovy λειτουργεί στην JVM και προσφέρει dynamic properties, closures και σύντομη σύνταξη που χρησιμοποιείται και σε build tooling.
Παράδειγμα
def nums = [1, 2, 3]
println nums.collect { it * 2 }
Δοκίμασέ το με νόημα
Πρόβλεψε τη νέα λίστα και δοκίμασε findAll για φιλτράρισμα χωρίς μεταβολή της αρχικής.
Σφάλμα που πρέπει να ξεχωρίσεις
Το Groovy DSL του Gradle είναι API πάνω στη γλώσσα, όχι οποιοδήποτε Groovy script· δήλωσε το περιβάλλον.
Για να κρίνεις την άσκηση, κατέγραψε την αρχική είσοδο, την πρόβλεψη και την παρατήρηση σε πραγματικό, συμβατό περιβάλλον Groovy. Δώσε ξεχωριστό παράδειγμα όπου αλλάζει μόνο μία μεταβλητή ή ένα όρισμα. Αν εργάζεσαι χωρίς την αναγκαία εφαρμογή, μελέτησε τη σύνταξη ως παράδειγμα και μην παρουσιάζεις το κείμενο ως εκτελεσμένο test.
Επόμενη διερεύνηση
Φτιάξε ένα μικρό αντιπαράδειγμα σε δοκιμαστικά δεδομένα, προσδιόρισε σε ποιο σημείο διαφέρει το αποτέλεσμα και ταξινόμησε την αιτία ως θέμα εισόδου, τύπων, εκτέλεσης ή διαθέσιμου API. Κράτα μόνο μη ευαίσθητα δείγματα και την έκδοση εργαλείων για να μπορεί κάποιος άλλος να αναπαράγει την παρατήρηση.
Groovy — Αναλυτικός οδηγός εξάσκησης
Πραγματικό αρχικό δείγμα
def greet(name) { "Hello, ${name}!" }
println greet('Ada')
Περιβάλλον: groovy hello.groovy.. Επιβεβαίωσε ότι έχεις το σωστό compiler, host ή simulator πριν θεωρήσεις την έξοδο αξιόπιστη. Για scripts με πρόσβαση σε προσωπικά αρχεία ή ρυθμίσεις, χρησιμοποίησε προσωρινά και read-only δεδομένα.
Συγκεκριμένος στόχος υλοποίησης
Κάνε parsing JSON με JsonSlurper, επικύρωσε property πριν το GString και εξέτασε closure scoping και map property access.
Κρίσιμο λάθος που πρέπει να αναγνωρίζεις
Το GString interpolation δεν κάνει escaping· μη περνάς τιμές απευθείας σε shell/SQL/HTML. Gradle και standalone Groovy διαφέρουν.
Groovy — Διαδρομή ουσιαστικής εξάσκησης
Θεμελιώδης άσκηση
Χρησιμοποίησε JsonSlurper σε μικρό τοπικό JSON και επικύρωσε τα numeric fields.
Άσκηση επίλυσης προβλήματος
Σύγκρινε Groovy Map με strongly typed Java-compatible object. Εξέτασε String έναντι GString interpolation.
Ανεξάρτητο έργο
Φτιάξε read-only Gradle report για project properties. Μην μετατρέπεις input σε shell/SQL syntax και δήλωσε εκδόσεις Groovy/Gradle.