Specielne konstrukce 

p "X" if neco
p "X" unless neco 

me trochu jezi chlupy. Pripomina mi to Perl, kde co programator, to vlastni 
vytvarny styl. 

Hodne by me zajimalo, jak je takovy kod udrzovatelny za 5 let vyvoje. Jestli 
Ruby neni podobne write-only jazyk jako Perl.

Ale neznam ho, takze to jsou spis otazky nez tvrzeni.

Tom


-----Původní zpráva-----
Od: konference-boun...@java.cz za uživatele Jiří Hradil
Odesláno: st 26.1.2011 11:48
Komu: Java
Předmět: Re: Off Topic - Oracle/Java/Linux zkratka ala LAMP?
 
Podívej se na strukturu Ruby, mrkni na zdrojáky. Taky díky skutečně
objektovému návrhu Ruby (žádné primitivní typy aka Java) je kód velmi
přehledný. Autor Ruby upřednostňuje právě čitelnost před efektivitou
zpracování kompem (lze dohledat, viz rozhovovy s Matzem, první odkaz v
Google na 'Matz').

Třeba:

p "ahoj svete" if podminka

p "cau Martine" unless neco

5.times {p "ahoj"}

Obrovska vyhoda oproti Jave jsou open classes. Kdyz ti chybi metoda ve
Stringu, tak si proste otevres String a dopises si tam, co potrebujes.
Idealni pro DSL.

Je pravdou, že Ruby není staticky typované, má duck typing, což zní
pro javistu hrozně, ale za pár dnů si na to ani nevzpomenete. Dá se to
dohnat testy, které jsou v RoR prakticky vynucované.

Víte, co je na tom nejvíc legrační? Že po několika letech práce s
Javou a několika měsících práce s Ruby a RoR jsem si na Javu už
nevzpomněl a spoustu věcí jsem okamžitě zapomněl. Což samozřejmě může
být mou blbou pamětí. Nebo taky tím, že skutečně důležité věci si
člověk pamatuje a nepříjemné věci zapomíná :).

Jirka Hradil



2011/1/26 Martin Kuba <ma...@ics.muni.cz>:
> Dne 26.1.2011 11:20, Jiří Hradil napsal(a):
>>
>> Bezime na tom nekolik mesicu v poctu uzivatelu v radu stovek/tisicu a
>> naprosto v pohode. Pocet modulu (subsystemu) v radu desitek.
>>
>> i18n, utf-8, skalovani, rychlost - vse OK. Diky "share nothing" proste
>> pridavam servery dle potreby do clusteru a je mi jedno, jestli je to o
>> par procent pomalejsi nez Java. Failover resi balancer. I kdyz je
>> reseni stabilni, tak pripadny vypadek jednoho ze serveru me netrapi,
>> uzivatele jsou v dalsim requestu presmerovani na jiny server. Restart
>> serveru kvuli nestabilite nepamatuju.
>>
>> Vyvoj je 10x rychlejsi, takze tyhle drobnosti neresim, protoze koupit
>> novy server je mnohem levnejsi, nez se patlat s Javou. Tohle je gral
>> vyvoje. Nikoli rychlost jazyka, ale rychlost vyvoje. Kdyz se ale divam
>
> To zní velmi zajímavě. Ale napadá mne jedna námitka - rychlost
> vývoje není všechno, důležitá je i udržovatelnost. Moje zkušenost
> s Ruby mi říká, že se v něm sice mnohem rychleji píše než v Javě,
> ale zato mnohem hůře čte. Gosling  se kdesi vyjádřil ve smyslu -
> "zjistili jsme experimenty, že se kód mnohem častěji čte než píše.
> Proto je Java záměrně navržena tak, aby se dobře četla, spíš než dobře
> psala".
>
> Přece jenom statické typování dohromady s kontrolami v Intellij IDEA
> mi umožňují psát téměř bezchybný kód, kdežto dynamické typování
> v Ruby mi nedovoluje ani zjistit co můžu očekávat v parametrech
> nějaké metody.
>
> Makub
> --
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> Supercomputing Center Brno             Martin Kuba
> Institute of Computer Science    email: ma...@ics.muni.cz
> Masaryk University             http://www.ics.muni.cz/~makub/
> Botanicka 68a, 60200 Brno, CZ     mobil: +420-603-533775
> --------------------------------------------------------------
>
>

<<winmail.dat>>

Odpovedet emailem