🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.ruby
Article #617

Kontynuacja - przekleństwo czy błogosławieństwo?

#617
From: Maciej Piechotka
Date: Fri, 07 Sep 2007 15:14
59 lines
2167 bytes
Narzekano na brak dyskucji na pl.comp.lang.ruby więc może zaproponuje 
temat 'świetej wojny' ;)

Są zapowiedzi że Ruby 2.0 nie będzie miało kontynuacji (łatwiejsza 
integracja z JRuby). Dla mnie kontynuacje to wspaniałe narzedzie które 
pozwala uniknąć różnych dziwnych klas narzędziowych.

Poczynając od tworzenia tego typu rzeczy co(ściągniete z którejś planety o 
RoR lub Ruby):

class Object
  def in? array
    array.include? self
  end
end

Na dodawaniu nowych możliwości kończąc (przykład jakiegoś kodu do 
serializacji):

class Object
  def serialize
    #...
  end
end

class Array
   def serialize
     #...
   end
end

o.serialize

Kontra(tego nie można modyfikować w przypadku dodania nowego typu):

if o.is_a? Array
  #...
elsif o.is_a? #...
  #...
else # Object
  #...

ewentualnie(rozszerzalne):

class Serializer
  # ...
  def serialize o
    @serialize[o.class].call o
  end
end

1. Co Wy sądzicie o kontynuacjach?
2. Czy ktoś wie, czy mają być usunięte?

Pozdrawiam
-- 
I've probably left my head... somewhere. Please wait untill I find it.
Homepage (pl_PL): http://uzytkownik.jogger.pl/
(GNU/)Linux User: #425935 (see http://counter.li.org/)
Technical Details
Message-ID: <8g68r4-248.ln1@router.piechotka.com.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.internetia.pl!nnrpd.internetia.pl

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.internetia.pl!nnrpd.internetia.pl
From: Maciej Piechotka <uzytkownik2@gmail.com>
Newsgroups: pl.comp.lang.ruby
Subject: Kontynuacja - przekleństwo czy
 błogosławieństwo?
Date: Fri, 7 Sep 2007 17:14:48 +0200
Organization: Netia S.A.
Lines: 60
Message-ID: <8g68r4-248.ln1@router.piechotka.com.pl>
NNTP-Posting-Host: 87-205-203-243.adsl.inetia.pl
Mime-Version: 1.0
X-Trace: mx1.internetia.pl 1189180979 27599 87.205.203.243 (7 Sep 2007 16:02:59 GMT)
X-Complaints-To: abuse@inetia.pl
NNTP-Posting-Date: Fri, 7 Sep 2007 16:02:59 +0000 (UTC)
X-Tech-Contact: usenet@internetia.pl
X-Orig-Path: router.piechotka.com.pl!news
User-Agent: Pan/0.132 (Waxed in Black)
X-Server-Info: http://www.internetia.pl/news/
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit