🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.ruby
Article #822

Re: RoR vs PHP

#822
From: Jaroslaw Zabiello
Date: Tue, 01 Jan 2008 18:23
39 lines
3073 bytes
On Tue, 01 Jan 2008 15:54:50 -0000, Przemysław Kowalczyk  
<someone@microsoft.com> wrote:

> moje odczucia sa dokladnie odwrotne. mam wrazenie, ze dla Ciebie SQL  
> jest jezykiem pierwotnym, jezykiem wyrazania podstawowych idei, a Ruby -  
> jakas nakladka na to, ulatwiajaca stworzenie aplikacji webowej.

Nie chodzi o idee. Powtórzę to, co już napisałem.

1. *Dane biznesowe są ważniejsze od aplikacji*.

2. Pomijając proste przypadki, *optymalizacja bazy wymaga użycia  
specificznych dla niej rozszerzeń SQL'a*

Pełną spójność idei i implementacji uzyskasz tylko podczas pracy z  
prawdziwą *obiektową bazą danych*. Tylko, że nie napisano jeszcze takiej  
dla Rubiego...

> dla mnie jest odwrotnie. projektuje i programuje w Ruby'm, a SQL jest  
> dla mnie zlem koniecznym. staram sie minimializowac jego uzycie na  
> korzysc Ruby'ego. dla mnie podejscie: jak wymyslona przeze mnie klase  
> przelozyc na tabele jest wlasnie podejsciem oczywistym i najprostszym.

Tylko dla trywialnych przypadków. Ale już choćby zmiana silnika MySQL z  
domyślnego InnoDB na inny, albo pododawanie różnych collations dla  
poszczególnych kolumn wymaga sięgnięcia do SQL'a. Nawet Hibernate ci nie  
pomoże aby zamaskować różnicę między tak różnymi bazami jak MySQL,  
POstgreSQL, MSSQL i Oracle.

W sumie nie o to chodzi aby uciekać od SQL jak diabeł od święconej wody,  
ale aby używać tego, co praktyczne. Jak się da to oczywiście lepiej  
obiektowo. Ale jak jest coś nietypowego i aby uzyskać to w sposób  
obiektowy trzeba się nagimnastykować, to po prostu lepiej i *prościej*  
użyć SQL'a. Zresztą to jest celem tego biednego Active Record: uprościć  
pracę z danymi a nie na siłę robić wszystko w Ruby.

-- 
Jarosław Zabiełło
http://blog.zabiello.com
Technical Details
Message-ID: <op.t39j1mmrr2rg33@jzmbp.local>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
References: <fl6ahk$m1q$1@inews.gazeta.pl> <op.t351icnsr2rg33@jzmbp.local> <fl93bh$d8p$1@inews.gazeta.pl> <r4il45-1ar.ln1@router.piechotka.com.pl> <op.t358bkfwr2rg33@jzmbp.local> <fl9aau$9b9$5@inews.gazeta.pl> <20071231084648.6d47feda.gryf_esm-no@spam-o2.pl> <op.t37dq3ydr2rg33@jzmbp.local> <0enn45-u25.ln1@router.piechotka.com.pl> <op.t37qnpdrr2rg33@jzmbp.local> <3pbo45-ha7.ln1@router.piechotka.com.pl> <op.t3777x1jr2rg33@jzmbp.local> <jtip45-n8c.ln1@router.piechotka.com.pl> <op.t388lvhur2rg33@jzmbp.local> <op.t39c5orduw9fft@negative-361apc>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
From: "Jaroslaw Zabiello" <abuse@tpnet.pl>
Newsgroups: pl.comp.lang.ruby
Subject: Re: RoR vs PHP
Date: Tue, 01 Jan 2008 18:23:36 -0000
Organization: "Portal Gazeta.pl -> http://www.gazeta.pl"
Lines: 39
Message-ID: <op.t39j1mmrr2rg33@jzmbp.local>
References: <fl6ahk$m1q$1@inews.gazeta.pl> <op.t351icnsr2rg33@jzmbp.local> <fl93bh$d8p$1@inews.gazeta.pl> <r4il45-1ar.ln1@router.piechotka.com.pl> <op.t358bkfwr2rg33@jzmbp.local> <fl9aau$9b9$5@inews.gazeta.pl> <20071231084648.6d47feda.gryf_esm-no@spam-o2.pl> <op.t37dq3ydr2rg33@jzmbp.local> <0enn45-u25.ln1@router.piechotka.com.pl> <op.t37qnpdrr2rg33@jzmbp.local> <3pbo45-ha7.ln1@router.piechotka.com.pl> <op.t3777x1jr2rg33@jzmbp.local> <jtip45-n8c.ln1@router.piechotka.com.pl> <op.t388lvhur2rg33@jzmbp.local> <op.t39c5orduw9fft@negative-361apc>
NNTP-Posting-Host: 89.124.240.242
Mime-Version: 1.0
X-Trace: inews.gazeta.pl 1199211817 4239 89.124.240.242 (1 Jan 2008 18:23:37 GMT)
X-Complaints-To: usenet@agora.pl
NNTP-Posting-Date: Tue, 1 Jan 2008 18:23:37 +0000 (UTC)
X-User: hipertracker
User-Agent: Opera Mail/9.25 (MacIntel)
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit