Суммируйте список чисел в Python

Интерфейсы

  • Определяют контракт между 2 модулями. Не может иметь никакой реализации.
  • Большинство языков позволяет Вам реализовывать несколько интерфейсов
  • , Изменение интерфейса является повреждающимся изменением. Все реализации должны быть перекомпилированы/изменены.
  • Все участники общедоступны. Реализации должны реализовать всех участников.
  • Интерфейсы помогают в Разъединении. Можно использовать ложные платформы для насмешки чего-либо позади интерфейса
  • , Интерфейсы обычно указывают на своего рода поведение
  • , Интерфейсные реализации разъединяются / изолированный друг от друга

, Базовые классы

  • Позволяют Вам добавлять [приблизительно 1 116] значение по умолчанию реализация, которую Вы получаете бесплатно деривацией
  • Кроме C++, можно только произойти из одного класса. Даже если мог от нескольких классов, это обычно - плохая идея.
  • Изменение базового класса относительно легко. Деривации не должны делать ничего специального
  • , Базовые классы могут объявить защищенные и государственные функции, к которым могут получить доступ деривации
  • , Абстрактные базовые классы нельзя дразнить легко как интерфейсы
  • , Базовые классы обычно указывают на иерархию типа (A)
  • , деривации Класса могут произойти для зависимости от некоторого основного поведения (имейте сложное знание родительской реализации). Вещи могут быть грязными, если Вы вносите изменение в базовое внедрение для одного парня и повреждаете другие.
344
задан Peter Mortensen 2 June 2018 в 10:41
поделиться