Tôi muốn làm rõ điều đó cho tôi.Ý tưởng lớn đằng sau việc thực hiện AOP là gì
Tôi đã đọc về khái niệm AOP và tôi hiểu rằng đó là cách tuyệt vời để chia sẻ các dịch vụ cắt chéo. (đăng nhập, bảo mật, giao dịch ...)
Nhưng tôi muốn nói/hỏi điều gì đó về ý tưởng này và nó đang thực hiện.
Tôi đọc có một số cách như AspectJ, JBOSS AOP để đồng hóa AOP với logic nghiệp vụ của tôi.
nhưng không phải ở đây đã lâu rồi?
giả ví dụ tôi muốn chia sẻ một ghi chép, an ninh thực hiện amongs thành phần của tôi (đậu Java, EJB'S, nào ..)
Tại sao tôi không thể làm cho một bean Singleton đảm bảo nó sẽ chỉ có một Ví dụ và ngay sau khi bất kỳ thành phần nào sẽ cần dịch vụ đăng nhập/bảo mật của nó, nó sẽ tra cứu và sử dụng dịch vụ của nó.
Tại sao tôi cần phải hiểu và có tất cả những triển khai "Lớn" đó như aspectj hoặc jboss AOP? Tôi nhớ gì ở đây?
Điều gì sẽ xảy ra nếu tôi tạo lớp cha và mở rộng các lớp học của tôi mở rộng từ nó. Tôi có thể đặt tất cả logic "perment" của tôi trong lớp cha mẹ đó. khi một lớp sẽ mở rộng nó, nó sẽ có thể tận hưởng tất cả các phương thức loggig/secutiry ... mà tôi đã khai báo trước đó. Tôi cũng có thể tạo thêm các phương thức "tạo"/"hủy" cho loggig perment và như vậy .. – rayman
@rayman: nhưng bạn vẫn cần ** gọi ** các phương thức này một cách rõ ràng (xem mẫu mã tuyệt vời * JB Nizet *). AOP sẽ làm điều đó cho bạn một lần được hướng dẫn, cũng cho mã bạn chưa viết! Điều này cũng có nghĩa là các lập trình viên mới sẽ tận hưởng các tính năng ghi/bảo mật mà không hề biết đến chúng.Chưa kể bạn không làm lộn xộn mã của bạn với các lớp cơ sở/phương thức trợ giúp –
Mybe bạn có thể kiểm tra nhận xét cuối cùng của tôi về JB. – rayman