Nemusis to pouzivat. Vzdy je to o moralce, stejne jako v Jave: if neco p "X" end
Konstrukce jazyka nevynuti hezky kod. Muze jen inspirovat. Jirka Hradil 2011/1/26 Tomas Hubalek <[email protected]>: > 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: [email protected] 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 <[email protected]>: >> 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: [email protected] >> Masaryk University http://www.ics.muni.cz/~makub/ >> Botanicka 68a, 60200 Brno, CZ mobil: +420-603-533775 >> -------------------------------------------------------------- >> >> > >
