OOP Material Grundlagen dynamische Attribute und Methoden Slots Module Ueberladen Vererbung UML Callback MVC Beispiele
Pfad: Startseite / Fächer / Informatik / Python / OOP / Callback
Autor: mk
10.12.2009 16:47:31
911
Callback

Verwendung einer Callback-Funktion

# -*- coding: iso-8859-1 -*-
# mk, 8.12.08

class Model(object):
    def __init__(self,callback=None):
        self.s = 0
        self.callback = callback

    def setCallback(self,callback):
        self.callback = callback

    def add(self,a,b):
        self.s = a + b
        if self.callback != None:
            self.callback(self.s)

def update(s):
    print s

Hollywood-Prinzip

'Don't call us, we call you!'

Man könnte dauernd beim Model 'anrufen' (polling), um eine Änderung mitzubekommen. Man könnte aber auch Model veranlassen, bei einer Änderung selbst 'anzurufen'.

MVC mit Callback

MVC1-Demo MVC2-Demo mvc2.py

Links

Valid XHTML 1.0!