Bạn có chắc chắn muốn xóa bài viết này không ?
Bạn có chắc chắn muốn xóa bình luận này không ?
học thêm Groovy cho vui!
Trước đây mình chủ yếu code Java vs PHP nhưng dạo gần đây do nhu cầu công việc nên bị bắt dùng qua Groovy và framework của nó là Grails.
Groovy là 1 thứ cũng khá cũ kĩ rồi mà hình như ở VN chả ai thèm dùng cái này thì phải.
Bản thân mình lúc tiếp cần thấy có nhiều thứ khá là hay ho nên muốn chia sẽ(sẻ) với mọi người.
def name = "Li"
def hello = {
println "Hi! i am ${name}!"
}
hello()
có gì hay?
Sơ lược chút thì Groovy là 1 ngôn ngữ dynamic typing, chạy trên JVM, sử dụng Spring làm cấu trúc ứng dụng với dependency injection
Syntax thì 99% là giống với Java nên khá là thuận tiện cho những ai đã biết Java.
Bản thân em có biết 1 xíu về Java trước nên mất chỉ 1 ngày là có thể code vèo vèo, mặc dù đôi lúc theo thói quen cũ code thẳng Java vào lun, nhưng đừng lo, việc trộn lẫn 2 ngôn ngữ này vào vẫn chạy ok (tất nhiên không phải 100% lúc nào cũng được).-
Nếu lúc làm việc với Springs/hibernate thì phải config khá loằng ngoằng trong xml thì ở Groovy việc setting này đơn giản hơn nhiều.
Mọi người đã quen với 1 thứ khá phổ biến của Java ORM là hibernate thì lúc chuyển sang dùng grails sẽ thấy khá quen thuộc với GORM (Grails-ORM). Trong grails đã tích hợp sẵn hibernate làm ORM rồi.
GORM thiết kế Model class cực kì đơn giản. Tạo model rồi thì nó sẽ tự đông tạo bảng trong CSDL và sinh ra cho mình một đống Queries sẵngrails create-domain-class Test
-
Hỗ trợ scaffolding khá là hiệu quả. giúp auto generate hầu hết những tác vụ đơn giản CRUD. Nếu mà thích giữ 1 cái model trong java và map bằng hibernate thì vẫn có thể sử dụng scaffolding bằng cách import rồi đặt tên của model như là 1 scafforld argument
dependencies { compile "org.grails.plugins:scaffolding" }
grails generate-all
Vaf1 điểm khá hay của Groovy mà mình rất thích đó là kiến trúc plugin. Mọi tính năng/app đều có thể viết dưới dạng 1 plugin >> Trong plugin repository có thể đã có hàng núi các chức năng cần thiết cho mình nhưng đã có người khác làm rồi và share lên. Chỉ cần lấy về và install là có thể sử dụng được ngay. Ví dụ dự án mình đang làm có khá nhiều business phức tạp, vì thế mình viết riêng thành từng plugin(app), chỗ nào cần cái gì thì reuse lại bằng cách call plugin đó.
yolo
Đại loại nếu bạn rảnh rỗi thích làm thử cái gì đó cho lạ lạ hoặc muốn build 1 project với khá nhiều chức năng căn bản trong 1 vài phút thì grails là 1 sự lựa chọn khá hay.
Không cần cấu hình gì nhiều, chỉ down về và chạy, còn có thể deploy lên các web server thân thương giống Java như là tomcat, jetty, jboss(cái này mình chưa thử nhưng nghe bảo cũng được)...




