Article View: pl.comp.lang.ruby
Article #617Kontynuacja - przekleństwo czy błogosławieństwo?
From: Maciej Piechotka
Date: Fri, 07 Sep 2007 15:14
Date: Fri, 07 Sep 2007 15:14
59 lines
2167 bytes
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.plShow 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