Уведомления

Группа в Telegram: @pythonsu

#1 Дек. 5, 2008 11:52:14

romankrv
От:
Зарегистрирован: 2008-05-23
Сообщения: 513
Репутация: +  0  -
Профиль   Отправить e-mail  

Что такое манки-патчинг?

Здравствуйте.

Часто встречаю упоминание в сети манки-патчинг. Так вопрос:
Что такое манки-патчинг? Если можно привести простейший пример его кода.

Офлайн

#2 Дек. 5, 2008 11:57:10

slav0nic
Команда
От: dp.ua
Зарегистрирован: 2006-05-07
Сообщения: 2260
Репутация: +  41  -
Профиль   Отправить e-mail  

Что такое манки-патчинг?

http://en.wikipedia.org/wiki/Monkey_patch
В джанге смотри add_to_class метод

Офлайн

#3 Дек. 6, 2008 15:05:08

redbaron
От:
Зарегистрирован: 2006-11-16
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Что такое манки-патчинг?

monekey patch это что-то вроде хака. Например пользуешься ты либой superlib, и очень нравится тебе из нее функция superlib.make_cool() , но ты бы хотел что-бы она вела себя немного по-другому. И вместо того, чтобы писать патч , слать автору и т.д. ты просто в своем проекте манки патчишь эту либу примерно так:

import superlib

def new_make_cool():
... тут делаешь что тебе нужно

superlib.make_cool = new_make_cool

.. тут дальше твой основной код
после чего кто-бы не вызывл superlib.make_cool (даже если она используется где-то внутри самой superlib) она теперь будет вести себя как нужно тебе, а не авторам либы.



Офлайн

#4 Июль 17, 2012 14:07:41

prokoptsev
Зарегистрирован: 2012-07-17
Сообщения: 13
Репутация: +  1  -
Профиль   Отправить e-mail  

Что такое манки-патчинг?

А обратно как вернуть?

Офлайн

#5 Июль 17, 2012 14:19:08

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Что такое манки-патчинг?

prokoptsev
А обратно как вернуть?
Это же не на всю жизнь, а только внутри твоей программы, пока она работает.



Офлайн

#6 Июль 17, 2012 14:21:17

fata1ex
От:
Зарегистрирован: 2009-07-11
Сообщения: 732
Репутация: +  52  -
Профиль   Отправить e-mail  

Что такое манки-патчинг?

Ну почему же. Есть теория, что monkey-patching это на всю жизнь…



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version