Makube, to s tim "spatne citelnym kodem" je v Ruby on Rails omezeno, protoze tam se drzite konvenci. Pak mate zcela jednoduchy zivot - dana adresarova struktura, nazvy logu databazi, striktni MVC, nazvy tabulek v db (napr. Contact je automaticky mapovan na tabulku contacts), atd.
Pokud by nekdo chtel v RoR psat spatne, tak by se musel hodne nadrit. Jirka Hradil 2011/1/26 Martin Kuba <ma...@ics.muni.cz>: > Dne 26.1.2011 12:52, Jiří Hradil napsal(a): >>>> >>>> Zkuste to a dejte vedet. Fakt to za to stoji. A verte mi, byl jsem >>>> velky obhajce Javy :). > > Zkusil jsem obojí, Javu i Ruby, a můj dojem z Ruby skutečně byl, > že je to mnohem silnější jazyk, ve kterém se dá elegantněji > a proto stručněji vyjádřit. Kdesi jsem četl, že člověk dovede > posoudit jenom slabší jazyky, než je ten nejsilnější, který zrovna umí, > a asi to tak bude. Se znalostí Ruby vidím, že Java má slabší > vyjadřovací schopnost, předtím bych to nedokázal posoudit. > (Na tom stejném místě psali, že nejsilnější je LISP, ten neumím, nemohu > posoudit :-)) > > > Ale, ALE ! Napsal jsem si v Ruby jistou poměrně komplikovanou aplikaci, > která už nějaké dva roky funguje. Jenže se do ní teď neodvažuji dělat > zásahy, > protože se mi v tom kódu teď, když jsem ho dlouho neviděl, špatně orientuje. > > Neodvažuji se dělat refaktoring, protože IDEA mi s tím nepomůže, jelikož > kvůli duck typing neví, kde se co používá. > > Takže můj soukromý závěr je, že Ruby je fantastické na psaní krátkých > kousků kódu, protože se v něm píše stručněji, a tím je i méně > místa na dělání chyb. Ale je naprosto hrozné na definování > rozhraní něčeho, to v něm v podstatě nejde. Když budu mít > parametr metody, který je seznam hešovacích tabulek ve kterých je klíčem > nějaká třída, tak to nikdy nezjistím. > > 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 > -------------------------------------------------------------- > >