[python-users] ftp upload tool

Ralf Schoenian ralf at schoenian-online.de
Di Feb 10 21:43:44 CET 2009


Hi Klaus,

das sagst Du jetzt, wo ich mir Argumente für eine Anpassung zurechtlege :-)

Vermutlich ist es Geschmackssache, ob man rechts oder links rum geht.
 
Seiteneffekten weicht man allerdings nur bedingt aus, da man ja die 
zugrundeliegende Funktionalität nutzen möchte. Warum also dann nicht 
gleich erben? - Nun ja, Wrappen gibt Raum für Erweiterungen, die ich 
normalerweise fürs logging nutze. Sobald wir auf eine neuere Python 
Version gehen können - so in 100 Jahren etwa - und decorators zur 
Verfügung stehen werde ich meinen Ansatz aber noch mal Überdenken. Ein 
Argument um bei der bestehenden Praxis zu bleiben wäre auch noch 
"Explicit is better than implicit." 

Was machen denn die Anderen?

Ciao,
Ralf




Klaus Bremer wrote:
> Hi Ralf,
>
> dann gebe ich auch mal meinen Senf dazu:
>
> Vererbung 1:
> sehe ich wie Du. Lieber wrappen als erben; die Gefahr von  
> Seiteneffekten wird dadurch geringer. Es sei denn, dass es die  
> Funktionalität erfordert Methoden zu überladen; dann natürlich erben.
>
> Vererbung 2:
> Ich habe mir angewöhnt in der __init__ Methode alle Instanz-Variablen  
> zu initialisieren. So behalte ich besser den Überblick und vermeide  
> auch die Situation, dass in einer Methode auf eine Variable  
> zugegriffen wird, die in einer anderen Methode zuvor erst hätte  
> angelegt werden müssen.
>
> Gruß
> Klaus
>
>
> Am 08.02.2009 um 21:11 schrieb Ralf Schoenian:
>
>   
>> Guy K. Kloss wrote:
>>     
>>> On Mon, 09 Feb 2009 07:54:42 Ralf Schoenian wrote:
>>>
>>>       
>>>> ich habe ein kleines  ftp Tool geschrieben, dass mir die  
>>>> Synchronisation
>>>> meiner übersetzten PyMOTW Texte erleichtert. Vielleicht kann es  
>>>> der ein
>>>> oder andere für eigene Zwecke nutzen. Ihr könnt es hier
>>>> http://home.arcor.de/ralf_schoenian/websync/index.html finden.
>>>>
>>>>         
>>> Nett!
>>>
>>> Waer's nicht einfacher FTPhelper von ftplib.FTP vererben zu lassen?
>>>
>>> Getters und setters kann man in Python auch elegant mit der  
>>> property()
>>> Function oder dem @property decorator erschlagen.
>>>
>>> Guy
>>>
>>>
>>>       
>> Hi Guy,
>>
>> ftplib.FTP Vererbung:
>> Merkwürdig, aber ich habe mir irgendwie angewöhnt nur von eigenen
>> Klassen zu erben. Klassen die ich kenne und auf die ich unmittelbar
>> Einfluss habe - alle anderen wrappe ich in der Regel.
>>
>> Properties:
>> Stimmt, properties wären hier besser gewesen. Das werde ich in der
>> nächsten Version auf jeden Fall ändern.  Das nächste Release möchte  
>> ich
>> im Büro nutzen, wo wir allerdings an Python 2.3.5 gebunden sind - ist
>> also nichts mit @property :-(  Das nächste Release soll Proxies
>> unterstützen. Meine Idee ist, erst beim Proxy anzuklopfen und dann ein
>> open auf die eigentliche site auszuführen. Vielleicht hat aber auch  
>> noch
>> jemand eine bessere Idee?
>>
>> Ralf
>>
>>
>>
>>
>> ________________________________________
>> Diese Mail erhalten Sie ueber die Mailingliste Python-users der  
>> Universitaet zu Koeln
>> Python-users at uni-koeln.de
>> https://lists.uni-koeln.de/mailman/listinfo/python-users
>>     
>
>
> ________________________________________
> Diese Mail erhalten Sie ueber die Mailingliste Python-users der Universitaet zu Koeln
> Python-users at uni-koeln.de
> https://lists.uni-koeln.de/mailman/listinfo/python-users
>
>   




Mehr Informationen über die Mailingliste python-users