29. Использование GROOVY для работы с базой данных
Phiên bản mới của ngôn ngữ lập trình Groovy nhằm mục đích làm cho cuộc sống dễ dàng hơn cho các lập trình viên làm việc với Java và SQL, các nhà phát triển ngôn ngữ lưu ý.
Tháng trước, SpringSource, một bộ phận của VMware và cộng đồng các nhà phát triển tình nguyện phía sau Groovy đã phát hành một phiên bản mới của ngôn ngữ được biên dịch động. Các tính năng mới bao gồm một số chức năng Java cũ có thể giúp các lập trình viên Java làm việc dễ dàng hơn với Groovy. Nó cũng bao gồm một số bổ sung giúp giảm gánh nặng khi làm việc với cơ sở dữ liệu dựa trên SQL.
Groovy là một trong số ngày càng nhiều ngôn ngữ chạy trên JVM của Sun Microsystems (Java Virtual Machine).
Được hình thành vào năm 2003, Groovy được phát triển như một ngôn ngữ giống như Java được tùy chỉnh cho các nhiệm vụ mà Java tự nó dò tìm, chẳng hạn như phân tích cú pháp XML. Guillaume Laforge, người đứng đầu phát triển Groovy cho SpringSource, một nhà cung cấp phần mềm quản lý cơ sở hạ tầng ứng dụng Java, cho biết, bằng cách sử dụng Groovy, các nhà phát triển Java có thể làm việc lên các kịch bản và mã lệnh mà không phải lo lắng về số lượng mã soạn sẵn. Bằng cách chạy trên JVM, Groovy cũng có thể sử dụng vô số các thư viện Java có sẵn.
Laforge lưu ý rằng kể từ khi nó được giới thiệu chính thức (phiên bản 1 chưa được phát hành cho đến năm 2007), Groovy đã tìm thấy một niche trong nhiều nhiệm vụ khác nhau, chẳng hạn như phát triển các nguyên mẫu của các chương trình Java. Kết hợp với khung phát triển nhanh của Grails, nó cũng được sử dụng để nhanh chóng đứng lên và chạy các ứng dụng Web dựa trên cơ sở dữ liệu.
Một tính năng là hỗ trợ cho các lớp bên trong vô danh và các lớp lồng nhau. Sự hỗ trợ như vậy từ lâu đã có sẵn trong Java, nhưng các phiên bản trước của Groovy đã tránh được chúng ủng hộ một kỹ thuật tương tự được gọi là đóng cửa. Cả hai cách tiếp cận đều cho phép các nhà phát triển viết mã theo cách mà không cần phải viết một lớp mới cho mọi quy tắc kinh doanh có thể có mà chương trình có thể gặp phải. Trong khi các nhà bảo trì Java đang xem xét việc sử dụng các bao đóng, Groovy sẽ hỗ trợ các lớp bên trong vô danh và các lớp lồng nhau để các lập trình viên Java có thể làm việc dễ dàng hơn với Groovy, Laforge nói. Sự bổ sung này cũng sẽ cho phép các khung công tác Java dựa chủ yếu vào các lớp bên trong vô danh để làm việc liền mạch hơn với Groovy, ông nói thêm.
Khả năng tương thích rộng hơn với SQL cũng đã được thử với phiên bản mới của Groovy. Laforge lưu ý rằng các quản trị viên đã viết các kịch bản Groovy để di chuyển "các lô dữ liệu lớn từ một hệ thống này sang hệ thống khác", ông nói. Rất nhiều ngôn ngữ kịch bản truyền thống không hoạt động tốt với SQL và viết một chương trình Java cho nhiệm vụ có thể là quá mức cần thiết. Groovy 1.7 có một phương thức mới cho phép dữ liệu được di chuyển theo lô, điều này sẽ đơn giản hóa việc viết các kịch bản di trú. Nó cũng có một phương pháp tương tự để xử lý giao dịch.
Các tính năng mới khác của Groovy 1.7 bao gồm hỗ trợ cải tiến cho chú thích và xác nhận. Giao diện GroovyConsole và Abstract Syntax Tree đã được cải thiện và GroovyScriptEngine đã được viết lại. Các nhà phát triển cũng đã phát hành một trình cài đặt Microsoft Windows cho Groovy. Grails đã được cập nhật gần đây.
Groovy, là mã nguồn mở theo giấy phép Apache, được cập nhật mỗi năm một lần, Laforge nói. Kế hoạch cho phiên bản 1.8 bao gồm cải tiến hiệu suất. Các chương trình được viết bằng các ngôn ngữ được biên dịch động, chẳng hạn như Groovy hoặc Ruby, thường chạy chậm hơn các ngôn ngữ được biên soạn trước, trong các ngôn ngữ được biên dịch tĩnh như Java. Groovy, đặc biệt, đã bị chỉ trích vì hiệu suất chậm. Các nhà phát triển đã không làm nhiều việc trên 1,7 về cải thiện hiệu năng, Laforge nói, mặc dù nó sẽ ưu tiên hơn cho phiên bản 1.8.
Ưu tiên khác cho Groovy 1.8 sẽ được cải tiến thêm để hỗ trợ phát triển các ngôn ngữ cụ thể của miền, hoặc DSL. DSL là các ngôn ngữ có từ khóa được tùy chỉnh cho một số tác vụ cụ thể. DSL có thể được sử dụng để viết logic nghiệp vụ theo cách mà người không lập trình có thể hiểu được. Với cú pháp và khả năng mở rộng tương đối đơn giản của nó, Groovy có thể phục vụ như một cơ sở để xây dựng các DSL, mặc dù Laforge nói rằng ông muốn xem nhiều công việc hơn khi làm sạch một số "tiếng ồn cú pháp" của ngôn ngữ, chẳng hạn như dấu phẩy và dấu chấm phẩy.
"Chúng tôi có một số ý tưởng về cách sắp xếp hợp lý cú pháp để cho phép các DSL đẹp hơn, trông giống như tiếng Anh thông thường", ông nói. để viết các chương trình Groovy.
Thông điệp đề cập tới các chủ đề nhạy cảm về chính trị như phong trào tinh thần Pháp Luân Công, Đài Loan và sự phản đối của Đảng Cộng sản Trung Quốc đang cai trị và lưu trữ trên máy chủ, các nhà nghiên cứu cho biết. Cũng giống như tất cả các ISP Trung Quốc, Tom Online có nghĩa vụ giám sát việc liên lạc, Silverman đã viết. Tuy nhiên, Skype tin rằng phần mềm Tom-Skype chỉ đơn thuần là lọc những từ nhất định từ tin nhắn trò chuyện, chứ không lưu trữ chúng trên máy chủ. "Chúng tôi đang hỏi Tom

Tom Online đã giải quyết được vấn đề bảo mật được phát hiện bởi các nhà nghiên cứu. "Chúng tôi hiện đang giải quyết vấn đề tải lên và lưu trữ một số tin nhắn với Tom", Silverman nói.
S3 hiện đang được các công ty thuộc mọi quy mô sử dụng, bao gồm sao lưu và lưu trữ dữ liệu, lưu trữ nội dung trang web và chia sẻ tệp tin. Alyssa Henry, tổng giám đốc của S3, nói: "Với quy mô, khi chúng ta lớn lên, chúng ta có thể tổng hợp việc sử dụng tất cả các ứng dụng Web, các nhà quản lý lưu trữ và quản lý kho dữ liệu. khách hàng của chúng tôi và nhận được giảm giá từ các nhà cung cấp của chúng tôi và vượt qua những khoản tiết kiệm này cho khách hàng của chúng tôi ", bà nói.

Hiện tại ở Mỹ, AWS tính phí cố định cho S3 0,15 USD / gigabyte / tháng lưu trữ được sử dụng. Cấu trúc 4 cấp sắp tới sẽ giữ giá như nhau cho 50T byte đầu tiên của lưu trữ, nhưng giảm nó xuống 0,14 đô la mỗi gigabyte mỗi tháng cho 50t bytes lưu trữ tiếp theo của khách hàng. Giá sẽ giảm xuống 0.13 USD / gigabyte mỗi tháng cho các bộ nhớ lưu trữ 400T tiếp theo và 0,12 USD / gigabyte mỗi tháng để lưu trữ ngoài 500T byte.
Với tất cả các máy tính và thiết bị khác nhau, cơ hội tôi muốn phát một bài hát trên iPhone chỉ trên Apple TV của tôi, hoặc cơ hội mà tôi sẽ cần một tập tin ở nhà đó là chỉ trên công việc của tôi Mac là rất cao. Tôi ghét ý tưởng rằng tôi sẽ cần truy cập vào một tài liệu, PDF, bản nhạc hoặc phim, và không thể có nó tại địa phương, bất kể tôi đang ở đâu.

[ĐọC thêm: Các mẹo hay nhất trong Windows 10 của chúng tôi , sau khi thử nhiều và sai, tôi đã tìm thấy những gì tôi tin là giải pháp lý tưởng để đồng bộ hóa tài liệu, hình ảnh, nhạc, lịch email và danh bạ của mình.