2009-08-16 20 views

Trả lời

2

"Lớp ngữ cảnh thực thi" chỉ là lớp chủ, được tạo bởi cấp cao nhất của chương trình, chứa tất cả mọi thứ (như đối tượng Giao dịch trong ví dụ được liên kết) từ cấp cao nhất có thể cần.

Đó là cách đóng gói để tránh các biến toàn cục.

Một số người tin rằng ngay cả điều này cũng là kiểu gây sốc, bởi vì nếu các cuộc gọi hàng đầu A gọi B mà gọi C gọi là D cần mức cao nhất, bạn phải chuyển ngữ cảnh sang A, B và C, không cần nó.

Và vì vậy nó thúc đẩy ràng buộc nơi không cần thiết - A, B và C không thể sử dụng lại trong chương trình không sử dụng ngữ cảnh này. Nhưng đó là một sự thay thế hoàn toàn khả thi đối với trạng thái toàn cầu ẩn giấu, và sự gia tăng vô tận của những người độc thân và những thứ lộn xộn khác.

Chỉnh sửa: đoạn này không hợp lệ: Tôi khuyên bạn nên sử dụng lớp ExecutionContext trong javax.resource.spi.work ( http://www.j2ee.me/j2ee/1.4/docs/api/javax/resource/spi/work/ExecutionContext.html), vì ít nhất hạn chế ràng buộc trên các lớp can thiệp vào một tiêu chuẩn, thay vì một cái gì đó ứng dụng cụ thể.

+0

bất kỳ ví dụ nào về cách sử dụng javax.resource.spi.work.ExecutionContext? – cometta

+0

Uhhh, tôi xấu hổ ở đây. Tôi đã đề xuất một cách vội vàng, dựa trên việc đọc một javadoc quá nhanh. Nó, err, không đáp ứng nhu cầu của bạn. Tôi sẽ chỉnh sửa câu trả lời của tôi để phản ánh điều này. – CPerkins

Các vấn đề liên quan