Итак, я начинаю проект, используя Python, потратив значительное количество времени на статическую землю. Я видел некоторые проекты, которые создают "интерфейсы", которые на самом деле являются просто классами без каких-либо реализаций. Раньше я издевался над этой идеей и игнорировал эту часть этих проектов. Но теперь я начинаю согреваться до этой идеи.
Просто так, мы понятны, интерфейс в Python будет выглядеть примерно так:
class ISomething(object):
def some_method():
pass
def some_other_method(some_argument):
pass
Обратите внимание, что вы не передаете себя ни одному из методов, тем самым требуя, чтобы метод был переопределен для вызова. Я рассматриваю это как хорошую форму документации и полноте тестирования.
Итак, что же здесь такое мнение по этой идее? Могу ли я промыть мозги всем программированием на С#, которое я сделал, или это хорошая идея?