2009-04-21 39 views
45

Mẫu thiết kế đối tượng ngữ cảnh là gì?mẫu thiết kế đối tượng ngữ cảnh là gì?

+7

Nếu bạn cung cấp một số thông tin cơ bản về lý do tại sao bạn đang xem xét mẫu này, bạn có thể nhận được phản hồi tích cực hơn cho mọi người vì nó sẽ thu hút nhiều sự quan tâm hơn. –

+1

Xem thêm: [Bạn có thể giải thích mẫu thiết kế Ngữ cảnh một chút không?] (Http://stackoverflow.com/questions/986865/can-you-explain-the-context-design-pattern-a-bit) – emallove

Trả lời

30

Ngữ cảnh là tập hợp dữ liệu, thường được lưu trữ trong một số Map hoặc trong một lớp tùy chỉnh hoạt động như cấu trúc với trình tiếp cận và công cụ sửa đổi. Nó được sử dụng để duy trì trạng thái và chia sẻ thông tin trong một hệ thống. See this PDF for an indepth description. Mặc dù nó có thể được sử dụng để chia sẻ dữ liệu hiệu quả và hiệu quả, bạn nên lưu ý rằng nhiều người cảnh giác với mẫu Contextan anti-pattern.

6

Ví dụ cho nó có thể là đối tượng HttpSession: bạn có các thuộc tính cơ bản là bản đồ với các khóa String và các phần tử đối tượng. Điều này cung cấp thông tin trạng thái giữa các yêu cầu http. Một ví dụ khác là ServletRequest cung cấp thông tin trạng thái giữa các Servlets.

5

Một đối tượng bối cảnh gói gọn thông tin HTTP cụ thể của máy chủ web theo dạng chung và di động hơn.

Nó được sử dụng khi:

  • bạn có linh kiện và dịch vụ mà cần truy cập vào hệ thống thông tin.
  • Bạn muốn tách riêng các thành phần và dịch vụ ứng dụng khỏi các chi tiết về giao thức của thông tin hệ thống.
  • bạn muốn chỉ hiển thị các API có liên quan trong một ngữ cảnh.

Sử dụng đối tượng ngữ cảnh để gói gọn trạng thái theo cách độc lập với giao thức được chia sẻ trong suốt ứng dụng của bạn.

Để cụ thể hơn see this article

+6

Đây là quá chi tiết. Bạn có thể nghĩ về HttpContext, không phải là một bối cảnh nói chung. – Slavo

2

"ngữ cảnh" xuất phát từ "thông tin theo ngữ cảnh".

Từ Msu.edu:

thông tin theo ngữ cảnh: Thông tin mà là để bổ sung các văn bản thực tế của tài liệu, chẳng hạn như ngày gửi, nhận dạng người gửi, nhận dạng addressee, thông tin định tuyến, và gửi lại biên lai.

Trong hầu hết các khung (và do đó mẫu thiết kế), một đối tượng bối cảnh lưu trữ thông tin về yêu cầu đến và xác nhận phản hồi.

2

Xem Can you explain the Context design pattern? để biết mô tả kỹ lưỡng về mẫu.

Bài đăng của tôi ở đó cũng giải thích lý do tại sao nó không phải là một mô hình chống - nhưng việc thực hiện không thành công của nó là.

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