[ruby-it] Distruttore di classi

Michele Casari lablinux a gmail.com
Mar 16 Set 2008 14:50:53 CEST


Luigi Panzeri wrote:
> Il giorno 16/set/08, alle ore 12:42, Michele Casari ha scritto:
> 
>> La classe mi serve per gestire file excel, il distruttore mi serve per
>> chiuder l'area di lavoro e il file, dopo la chiusura libero le risorse
>> impostando a nil.
>>
> 
> Ok, quindi non ti serve un distruttore ma un metodo per terminare la
> tua sessione excel.
> 
>>
>>    def elabora
>>     yield
>>     fine()
>>   end
>>
> 
> Ottimo lavoro! Ti conviene inserire il tutto in un blocco begin/
> rescue cosi' chiudi excel anche se c'e' un errore nel blocco eseguito
> da yield.
> Ancora: puoi passare self allo yield cosi' da disaccoppiare meglio il
> blocco eseguito da quello che contiene la chiamata ad elabora.
> 
>>
> Non c'e' nessun buon motivo per inserire GC.start (il collector sa
> lui quando ripulire). Se ne hai uno inserisci immediatamente un
> commento altrimenti sarai sbalordito e avrai bisogno di un buon vino
> quando rivedrai quel codice tra 3 mesi ;-)


Il primo l'ho capito :
  def elabora
    begin
      yield
    rescue
    end
    fine()
  end

ma la questione del self proprio no.... Cosa intendi per passare self 
allo yeld?
-- 
Posted via http://www.ruby-forum.com/.


More information about the Ml mailing list