|
Ruby on Rails ... pana acum toata lumea a auzit numai superlative despre acesta. Promite un cod mai eficient, orientare pe obiecte si arhitectura MVC (Model, View, Control). Intr-adevar, RoR ofera toate acestea si ceva in plus. Codul este superb, usor de intretinut si de editat. In plus, timpul de implementare al unei aplicatii este mai mic decat in PHP.
Scopul
Chiar daca la momentul actual nu stii nimic despre acest limbaj, citind aceasta serie de tutoriale vei fi capabil sa realizezi aplicatii web complete cu RoR.
Prezentul tutorial
Te avertizez ca acest prim tutorial s-ar putea sa fie cam fad, dar este necesar pentru a invata RoR. In aceasta prima parte ne vom ocupa de setarea framework-ului si a serverului web precum si de modul in care functioneaza acesta. Astfel, vei avea baza de cunostinte necesara invatarii RoR.
Ce este Ruby?
Ruby este un limbaj orientat pe obiecte, care ruleaza pe framework-ul rails. Sintaxa sa este inspirata din Perl, dar ea seamana si cu cea a altor limbaje ca Python, Lisp, Dylan si CLU. Citez din Wikipedia:
"Ruby a fost conceput la data de 24 Februarie 1993 de catre Yukihiro Matsumoto care a dorit sa creeze un nou limbaj care sa balanseze programarea functionala cu cea imperativa. Conform lui Matsumoto, el dorea un limbaj de scripting mai puternic decat Perl si mai orientat pe obiecte decat Python. De aceea, el a hotarat sa-si creeze propriul limbaj".
Ruby a fost extrem de popular in Japonia pana la aparitia framework-ului Rails. Din acel moment, a continuat sa se dezvolte peste tot in lume.
Ce este Rails?
Rails este faimosul framework pe care se bazeaza Ruby. Dezvoltat de catre David Heinemeier Hansson, a fost lansat ca open source in iulie 2004, numarul sau de utilizatori crescand constant. Acest framework utilizeaza arhitectura MVC (Model - View - Controler). Ultima versiune este 2.1.0, care aduce cateva imbunatatiri semnificative fata de prima versiune.
Conceptele Ruby on Rails
Pentru a mentine codul curat si exact, Ruby on Rails urmeaza cateva principii, dupa care ar trebui sa te ghidezi daca vrei sa obtii rezultate cat mai bune. In primul rand, respecta termenul de programare DRY (Don't repeat yourself) (Nu te repeta). In mod clar aceasta inseamna ca un cod trebuie scris o singura data, la locul potrivit. De exemplu, daca vrei ca acest cod sa execute ceva anume, atunci il asezi in acelasi loc de fiecare data.
Cel de-al doilea concept pe care il urmeaza RoR este CoC (Conventions over Configuration (Conventiile inaintea configurarilor). Ruby isi asuma multe decizii, ceea ce explica majoritatea elementelor prestabilite pe care le genereaza pentru tine. In loc sa fie necesar sa configurezi totul in fiecare proiect, ruby face acest lucru in mod automat. Deci, daca vrei sa faci ceva neconventional, pur si simplu extinzi elementele prestabilite care sunt deja incluse in RoR. Aceasta inseamna ca vei scrie un numar mai redus de linii de cod.
Avantajele Ruby on Rails:
- Este destul de usor de invatat comparativ cu alte limbaje;
- Complet orientat pe obiecte;
- Arhitectura MVC;
- Nu trebuie sa scrii mult cod;
- Usor de extins;
- Open Source;
- Comunitatea de programatori este extrem de amabila, raspunzand cu promptitudine la intrebari;
- Chiar daca foloseste un framework relativ nou, el ofera destul de multe facilitati si are putine bug-uri.
Dezavantajele Ruby on Rails:
- Codul ruleaza diferit fata de alte limbaje, deci poate fi mai lent pe serverele care nu sunt suficient de bine configurate pentru a suporta ruby. In prezent, tot mai multe servere sunt din ce in ce mai bine echipate pentru Rails pe masura ce acesta continua sa se dezvolte, asadar acest lucru devine din ce in ce mai putin o problema.
Un fisier Ruby
Un fisier ruby are extensia .rb. Aceste fisiere nu contin de obicei HTML. Mai jos poti vedea o portiune dintr-un astfel de fisier (mai precis un controler dintr-un joc). Dupa cum poti observa, el extrage informatii dintr-o baza de date si afiseaza o lista de jocuri in conformitate cu variabilele categorie si titlu.
class GameController < ApplicationController
def game_list<BR> @title = '3'<BR> @category = 'Action'<BR> @games = Game.find
(:all, <BR> :conditions => ["title LIKE ? AND category = ?", '%' + title + '%', category],<BR> :order => 'title, category ASC',<BR> :limit => 5, :offset => 0)
<BR> end
end
Cod Ruby imbricat
Asemeni multor alte limbaje web, Rails iti permite sa combini ruby cu HTML. Seki Masatoshi a creat un program numit ERb (embedded ruby), care scaneaza toate fisierele .rhtml (fisiere ruby imbricate), pana cand intalneste fie <% Cod Ruby care este procesat -%>, fie <%= Cod Ruby care este afisat%>. Apoi executa codul si completeaza spatiile daca este necesar.
Acesta este un exemplu de cod imbricat:
<% title = "Nettuts" %><BR><% header_text = "Tutorial Ruby on Rails" %
><BR><html><BR><head><BR><title><%= title %></title><BR></head><BR><body><BR><h2><%
= header_text %
></h2><BR><p>Acesta este un exemplu de pagina .rhtml. </p><BR></body><BR></html>
pe care utilizatorul il va vedea astfel:
<html><BR>
<head><BR>
<title> Nettuts </title><BR>
</head><BR>
<body><BR>
<h2>Tutorial Ruby on Rails</h2><BR>
<p> Acesta este un exemplu de pagina .rhtml.</p><BR>
</body><BR>
</html> <BR>
Instalarea Ruby on Rails pentru Windows
Atat utilizatorii de Windows cat si cei de OSX sunt foarte norocosi. Pentru ambele sisteme de operare exista un program de instalare/administrare all-in-one care instaleaza ruby, rails si serverul. Pentru Windows, exista optiunea de Instant Rails. Acceseaza http://instantrails.rubyforge.org/wiki/wiki.pl pentru a-l downloada. L-am utilizat personal si nu am avut probleme majore cu el. In plus este mai usor asa decat sa le instalezi pe fiecare separat.
In pagina care se deschide, da click pe linkul download pentru a descarca instantrails. Vei fi redirectionat catre rubyforge.org, de unde poti alege ultima versiune. La momentul scrierii acestui tutorial, ultima versiune era 2.0, pe care multe host-uri nu o suportau, preferand in schimb versiunea 1.8.x. Exista diferente considerabile intre versiunile 1 si 2, deci depinde de tine ce versiune doresti sa instalezi. In acest tutorial, vom folosi versiunea 2.0.
Dupa ce ai downloadat fisierul, dezarhiveaza-l intr-un director al carui nume nu contine spatii.
|