Lợi ích khi tiếp cận bài toán theo SOP

Một phần của tài liệu Tìm hiểu về lập trình hướng dịch vụ – service oriented programming (Trang 31 - 33)

Công nghệ để đạt được mục tiêu mang tính cách mạng của các nhà cung cấp thật sự đang tồn tại hiên nay. Những thuận lợi đã đến với các lập trình viên, các công việc hiện tại của họ khôn bao giờ bị hư hỏng và việc mở rộng hệ thống trở nên dễ dàng hơn. Còn đối với người dùng, SOP cho phép họ có thể kết nối với các dịch vụ theo cách mới với nhiều khả năng và giá trị được thêm vào. Các khả năng chuyển hướng âm thanh ở bất cứ đâu trong nhà, tới xe hơi, hoặc tới các thiết bị cá nhân sử dụng công nghệ không dây cung cấp nhiều giá trị to lớn và mới mẽ. Thay vì phải sử dụng các dây nối các thành phần âm thanh nổi, người dùng chỉ cần vẽ các đường nối giũa các thành phần thông qua file cấu hình. Mô hình client-server

truyền thống không cho phép mở rộng và linh hoạt các giải pháp mà SOP cung cấp.

CHƯƠNG 5: KẾT LUẬN

Lập trình hướng dịch vụ (SOP) là một mô hình lập trình cho khoa học máy tính, ngành khoa học máy tính đòi hỏi nhiều cách nghĩ khác nhau các bài toán phân bố. Ban đầu mô hình này được thiết kế cho các giao tiếp đa tiến trình, nhưng mô hình này vẫn có thể áp dụng cho các giao tiếp tron nội bộ một tiến trình, nghĩa là các giao tiếp giữa đối tượng chứa các tiểu trình trong một chương trình. Một lí do làm cho các mô hình tính toán phân luồng và tính toán phân bố vẫn còn mang nhiều lỗi là các hợp đồng không được định nghĩa một cách rõ ràng. Vấn đề này đặt biệt tệ trong mô hình phân luồng (đa tiến trình) , trong mô hình này các lời gọi phương thức hay hàm thương được tiến hành ngay trong lúc hiện thực các đối tượng đang chạy trên các tiểu trình khác nhau.

Cách tiếp cận hướng dịch vụ và các framework hướng dịch vụ như Openwings cung cấp nhiều lợi ích cho các lập trình viên và các nhà tích hợp hệ thống. Việc xây dựng các thành phần của phần mềm được đơn giản hóa bằng cách tuân theo các thiết kế hướng đối tượng. Việc thiết kế các thành phần được dựa trên các giao diện do các dịch vụ cung cấp. Điều này sẽ làm đơn giản hóa việc tích hợp hệ thống. Việc thực hiện nguyên mẫu

(prototyping) của các thành phần cũng được đơn giản hóa. Một framework của các thành phần hướng dịch vụ một cách đầy đủ như Openwings làm cho nó có khả năng xây dựng các thành phần phần mềm có thể sử dụng lại và rất quan trọng.

Lợi ích của việc làm đơn giản hóa việc phát triển và tích hợp được mang đến cho người dụng thực sự. Các hệ thống được thiết kế với vô vàng các dịch vụ sẽ có tính sẵn sàng rất cao vá thỏa mãn được mong muốn hệ thống phải luôn hoạt động. Để đáp ứng mong được của người sử dụng là dữ liệu của họ phải được an toàn thì SOP hỗ trợ các hệ thống được thiết kế với nhiều mức độ bảo mật khác nhau, trong đó đáng quan tâm nhất là bảo mật ở mức dịch vụ. Các hệ thống được thiết kế dựa trên sự hiểu biết rõ ràng về các giao diện sẽ trờ thành một một hệ thống theo kiểu cắm vào là chạy (plug and play) , nó sẽ thỏa mãn được đòi hỏi các hệ thống không cần sự quản trị nào.

Bởi vì các giao diện dịch vụ phân biệt rõ ràng với giao diện người dùng, các dịch vụ giống nhau có thể được truy xuất từ rất nhiều người dùng khác nhau, mỗi người dùng lại sử dụng các biện pháp khác nhau khi truy cập các dịch vụ này. Khi người dùng đã tăng mức độ thành thạo của họ về các dịch vụ, họ có thể nhận ra thêm nhiều tính năng của giao diện dịch vụ. Người dùng trên toàn thế giới có thể sử dụng một giao diện bằng chính ngôn ngữ của họ. Người dùng sẽ có khả năng truy xuất các dịch vụ với tất cả các loại thiết bị khác nhau. Trong tương lai gần, người dùng có thể kết hợp các thành phần đã được làm sẵn để xây dựng hệ thống theo ý đồ của họ.

Java, Jini, Openwings đang cung cấp một framework đầy đủ các tính năng cho lập trình hướng dịch vụ.

Tài liệu tham khảo

[1] Java, http://java.sun.com [2] Jini, http://www.jini.org

[3] Openwings, http://www.openwings.org [4] ServiceUI project, http://www.jini.org [5] Architecture Description Language (ADL),

Một phần của tài liệu Tìm hiểu về lập trình hướng dịch vụ – service oriented programming (Trang 31 - 33)