Tại sao các phương thức truy cập từ đặc tả JavaBean trở thành tiêu chuẩn để phát triển Java?


9

Các JavaBeans Thông số kỹ thuật mô tả một JavaBean như

Java Bean là một thành phần phần mềm có thể tái sử dụng, có thể được thao tác trực quan trong một công cụ xây dựng

Do phần lớn các dòng mã được viết dường như không liên quan gì đến việc bị thao túng trực quan trong một công cụ xây dựng, tại sao đặc tả JavaBean là "cách" để viết mã hướng đối tượng?

Tôi muốn từ bỏ getter / setter truyền thống để ủng hộ Giao diện Fluent trong toàn bộ mã, không chỉ ở các nhà xây dựng mà còn sợ làm như vậy vì đây không phải là cách viết mã hướng đối tượng trong Java.


Bởi vì nó có thể được thao tác trực quan trong một công cụ xây dựng? Chỉ cần đoán. Tất nhiên, không có gì ngăn cản bạn sử dụng Giao diện Thông thạo ở mọi nơi, nếu bạn rất mong muốn. Kinh nghiệm đóng đinh sẽ đánh vào đầu bạn nếu điều đó trở thành một ý tưởng tồi.
Robert Harvey

Câu trả lời:


7

Các trình truy cập kiểu JavaBean đã được chứng minh là phù hợp với tất cả các loại kịch bản tương tự như kịch bản "công cụ xây dựng" ban đầu ở một điểm cốt lõi: các thành phần được truyền qua và thao tác bởi các thùng chứa và công cụ chung cũng như mã ứng dụng. Trong máy chủ ứng dụng, bạn có các thành phần dịch vụ mà bộ chứa EJB hoặc Spring thêm giao dịch và tiêm phụ thuộc, các mô hình miền liên tục mà ORM thêm tải phát hiện và thay đổi lười biếng và có thể được tuần tự hóa thành XML bởi thư viện mà không cần mã cụ thể.

Người truy cập cung cấp một API phổ biến rất linh hoạt trong cách sử dụng thành phần này - nó không đăng ký một trật tự hoạt động. Mỗi cuộc gọi của người truy cập là độc lập với người khác và tất cả họ đều theo cùng một mẫu, vì vậy bạn có thể dễ dàng thêm các lớp chung có thêm chức năng mà không làm gián đoạn mẫu sử dụng dự định.

Ngược lại, các giao diện lưu loát thường được thiết kế để sử dụng một lần: đối tượng được tạo, một chuỗi các phương thức được gọi là kết thúc bằng một phương thức tạo ra kết quả cuối cùng và sau đó đối tượng bị bỏ rơi. Có ít tính linh hoạt hơn (chủ yếu trong các phương thức là tùy chọn) và tính tổng quát, nhưng đây chính xác là lợi thế: giao diện buộc bạn vào một mô hình sử dụng dự định, làm cho nó rất dễ sử dụng.

Vì vậy, JavaBeans và giao diện lưu loát có lợi thế trong các kịch bản khác nhau và bạn nên sử dụng giao diện nào. Và bạn thậm chí có thể kết hợp cả hai.


3

Chà, vì Đặc tả JavaBeans mà bạn liên kết để xác định quy ước truy cập các thuộc tính, mọi người quyết định tận dụng quy ước và các khung được xây dựng xung quanh nó. Một số khung công tác này, chẳng hạn như Hibernate, khá hữu ích và do đó trở nên rất phổ biến. Vì vậy, vì mọi người đã sử dụng các khung công tác dựa trên đặc tả JavaBeans, javaBeans ngày càng trở nên phổ biến hơn và ngày càng có nhiều khung công tác được xây dựng xung quanh chúng.

Fluent Interfaces là một ý tưởng tuyệt vời, nhưng liệu họ có chơi tốt với Spring hay Struts 2 không? Đánh bại tôi

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.