Я изучаю программирование в колледже Stamp Coupling. Мы изучаем системный анализ и проектирование. Мой одноклассник задал мне вопрос, как решить Stamp Coupling? Я спрашиваю Учителя, который сказал: «Используйте интерфейс для ограничения доступа клиентов», но я все еще неправильно понимаю.
Улучшение сцепления штампа
comment
Это слишком широко, чтобы ответить. Вам нужно будет сообщить нам конкретный случай, в котором вам нужно решить соединение штампа (желательно с соответствующим кодом).
- person Eran   schedule 14.12.2017
comment
Возможный дубликат Не могу понять принципы SOLID и шаблоны проектирования
- person rkosegi   schedule 14.12.2017
comment
@Eran Извините, я пропустил вопрос, я уже редактирую и добавляю заголовок вопроса.
- person LiHao   schedule 14.12.2017
Ответы (1)
Ну, так как метод печати нуждается только в имени, адресе и платежной информации Заказчика, вам не нужно передавать ему что-либо еще.
Вы можете определить интерфейс:
public interface PrintableCustomer
{
public ... getName();
public ... getAddress();
public ... getBillingInfo();
}
Теперь пусть класс Customer
реализует PrintableCustomer
.
Метод печати теперь может принимать PrintableCustomer
вместо Customer
.
void print (PrintableCustomer customer)
{
...
}
Теперь print()
видит только те свойства, которые ему нужны.
person
Eran
schedule
14.12.2017