Результаты поиска по запросу "decorator"

8 ответов

 класс. Поскольку все классы имеют одинаковый корень, каждый отдельный класс может свободно подключаться без какого-либо порядка.

читал ввикипедия [http://en.wikipedia.org/wiki/Decorator_pattern]этоВыкройка декоратора используется для.Сеть а такжеJava IO классы. Кто-нибудь может объяснить, как это используется? И какая польза от этого возможного примера? Есть ...

2 ответа

Да, я думаю, это было бы возможно. Но для меня это кажется неоптимальным дизайном, поскольку декоратор будет полагаться на свойства класса, который он использует, чтобы сделать его сложнее в использовании.

оложим, у меня есть простой класс class TestClass: def doSomething(self): print 'Did something'Я хотел бы украситьdoSomething метод, например для подсчета количества звонков class SimpleDecorator(object): def __init__(self,func): ...

4 ответа

Таким образом, при принятии решения о том, какой из них использовать, вы можете сначала захотеть проверить, относится ли расширенная функциональность только к этому классу или же эту же расширенную функциональность можно повторно использовать в других частях вашей системы. Если его нельзя использовать повторно, то наследование, вероятно, должно сработать. В противном случае, вы можете подумать об использовании декоратора.

ы решаете между использованием декораторов и наследования, когда оба возможны? Например.,Эта проблема [https://stackoverflow.com/questions/6394511/python-functools-wraps-equivalent-for-classes] имеет два решения. Я особенно заинтересован в Python.

ТОП публикаций

10 ответов

 пример в вопросе.

ел бы создать декоратор Python, который можно использовать с параметрами: @redirect_output("somewhere.log") def foo(): ....или без них (например, для перенаправления вывода в stderr по умолчанию): @redirect_output def foo(): ....Это вообще ...

2 ответа

) который предоставляет функцию таким образом, что она выглядит как простая переменная экземпляра.

о каком-то модуле python, я столкнулся с этим классом декоратора: # this decorator lets me use methods as both static and instance methods class omnimethod(object): def __init__(self, func): self.func = func def __get__(self, instance, owner): ...

1 ответ

Спасибо за информацию. Причина, по которой я использую XML, заключается в том, что XML на самом деле взят из унаследованного кода, поэтому это было своего рода «отправной точкой». Тем не менее, я бы хотел начать миграцию с Fluent API, следовательно, иметь часть этого в XML и часть в Fluent API.

я есть декоратор и фактическая реализация, которая выглядит так: public interface IAmUsedTwice { void DoSomething(); } public class ForReal: IAmUsedTwice { public SomethingElse Need { get; set; } public ForReal(SomethingElse iNeed) { Need = ...

1 ответ

Python: декорирование метода класса, который предназначен для перезаписи при наследовании

Допустим, у меня есть некоторый базовый класс: class Task: def run(self): #override this!Теперь я хочу, чтобы другие создали подкласс Task и переопределили метод run (): class MyTask(Task): def run(self): #successful override!Однако проблема в ...

6 ответов

 Метод не существует в классе украшается.

hon 2.5 есть ли способ создать декоратор, который украшает класс? В частности, я хочу использовать декоратор, чтобы добавить члена в класс и изменить конструктор, чтобы принять значение для этого члена. Ищем что-то вроде следующего (с ...

3 ответа

Определение, установлен ли root logger на уровень DEBUG в Python?

Если я установлю модуль ведения журнала на DEBUG с параметром командной строки, как это: if (opt["log"] == "debug"): logging.basicConfig(level=logging.DEBUG)Как я могу позже сказать, был ли регистратор установлен на DEBUG? Я пишу декоратор, ...

1 ответ

Autofac оформить QueryHandler по соглашению на основе имени параметра конструктора?

Мы вводимIQueryHandler<TQUery,TResult> в наших контроллерах MVC. Мы глобально регистрируем все это в контейнере Мы написали декоратор, который может кэшировать результатыIQueryHandler. Мы хотим иногда получать кешированные результаты, а иногда ...