Article View: pl.comp.lang.ruby
Article #466Piękno if-unless
From: Rafał Komorowski
Date: Sun, 18 Mar 2007 19:34
Date: Sun, 18 Mar 2007 19:34
16 lines
1759 bytes
1759 bytes
Mam nadzieję, że w niedzielę wybaczycie mi tę luźną i niezbyt
odkrywczą uwagę, ale tam mi się spodobał pewien fakt, że muszę o tym
napisać :)
Chodzi mi o połączenie użycia dwóch konstrukcji: "STATEMENT if
CONDITION" oraz "STATEMENT unless CONDITION". Jeśli je połączyć, to
wychodzi piękne zdanie, czytelniejsze niż skomplikowany warunek z
użyciem "and not". Przykład:
zrób_coś_groźnego if warunek-pozwalający unless warunek-
konieczny
Żeby nie było, że dyskutuję akademicko, to właśnie użyłem to w swoim
kodzie:
add_error "Niespełniony warunek daty." if obj.created_on <
last_date_allowed unless disabled_date_limit
Technical Details
Message-ID:
<1174246472.332845.152740@y66g2000hsf.googlegroups.com>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.nask.pl!news.nask.org.pl!news.germany.com!postnews.google.com!y66g2000hsf.googlegroups.com!not-for-mailShow Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.nask.pl!news.nask.org.pl!news.germany.com!postnews.google.com!y66g2000hsf.googlegroups.com!not-for-mail From: Rafał Komorowski <komor@mac.com> Newsgroups: pl.comp.lang.ruby Subject: Piękno if-unless Date: 18 Mar 2007 12:34:32 -0700 Organization: http://groups.google.com Lines: 13 Message-ID: <1174246472.332845.152740@y66g2000hsf.googlegroups.com> NNTP-Posting-Host: 91.94.39.43 Mime-Version: 1.0 X-Trace: posting.google.com 1174246473 25755 127.0.0.1 (18 Mar 2007 19:34:33 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: Sun, 18 Mar 2007 19:34:33 +0000 (UTC) User-Agent: G2/1.0 X-HTTP-UserAgent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X; en) AppleWebKit/419 (KHTML, like Gecko) Safari/419.3,gzip(gfe),gzip(gfe) Complaints-To: groups-abuse@google.com Injection-Info: y66g2000hsf.googlegroups.com; posting-host=91.94.39.43; posting-account=jFd1wQ0AAAAlfseeQQmjNNaI5fc2IpJd Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit