Прокси для программного обеспечения, чтобы увеличить его функциональность - PullRequest
0 голосов
/ 30 июня 2011

У меня есть программное обеспечение, которое взаимодействует с API веб-сайта. Как я мог бы увеличить его функциональность для подключения к различным другим API, не касаясь кода в нем? Я думаю, что самый простой способ - написать прокси, который находится между API и SoftWre, переводит входящие сообщения из других API в базовые API, которые это программное обеспечение «понимает». Где мне искать дополнительную информацию о реализации этого прокси с использованием c #? Спасибо за помощь.

1 Ответ

1 голос
/ 30 июня 2011

Хм звучит как один из шаблонов разработки программного обеспечения, с которыми вы сталкиваетесь каждый день. Я думаю, что лучше всего подходит ваш "прокси" на самом деле бридж.

С создание источника

Intent

- Decouple an abstraction from its implementation so that the two can vary independently.
- Publish interface in an inheritance hierarchy, and bury implementation in its own inheritance hierarchy.
- Beyond encapsulation, to insulation

Problem

“Hardening of the software arteries” has occurred by using subclassing of an abstract base class
 to provide alternative implementations. This locks in compile-time binding between interface 
 and implementation. The abstraction and implementation cannot be independently extended or composed.

Пример на C #: http://sourcemaking.com/design_patterns/bridge/c%2523

Однако, если вы просто хотите, чтобы шаблон проектирования прокси-сервера (который imho не подходит для вашей проблемы) был указан здесь:

  1. Шаблон прокси.
  2. Шаблон прокси в C #.

РЕДАКТИРОВАТЬ: Хорошо, для более обобщенного решения, используйте шаблон Proxy и посмотрите на существующие реализации для прокси. На этом сайте вы найдете немало ответов на этот вопрос:

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...