Python | Декораторы...

Apr 01, 2011 23:31

Помню, в июле прошлого года написал эту статью:

python decorator - вещь, на которой я запнулся...

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

И вот, настал момент - и я ( Read more... )

python

Leave a comment

Comments 2

stdray April 3 2011, 11:49:45 UTC
Основная задумка в том, что можно изменить логику работы функции, не меняя ее код. Я бы не сказал, что это какое-то очень нужное средство. В основном можно использовать, когда надо добавить функциональность, которая к логике работы оборачиваемой функции не имеет. Свои декораторы почти не пишу, пользуюсь только готовыми.

Reply

chevalry April 3 2011, 15:26:40 UTC
В Django, например, декоратор используется для изменения работы функции в зависимости от того, авторизован пользователь или нет. Это практический пример, который в литературе часто приводится в качестве иллюстрации того, когда и как следует применять декораторы. Примерно совпадает с тем, что вы пишите - логика функции при этом не меняется. Но по-моему, это довольно удобно. Впрочем, зависит от цели и практической области применения.

Reply


Leave a comment

Up