Limbajul de programare Ruby

By Stefania Rusu
Ruby este un limbaj de programare reflectiv , dinamic si orientat pe obiecte. Acesta combina elemente de sintaza inspirate din Perl cu caracteristici obiect orientate de tipul Smalltalk si imparte anumite caracteristici cu Python, Lisp, Dylan si CLU.

Ruby este un limbaj orientat pe obiecte: fiecare tip de date este un obiect, inclusive clasele si tipurile pe care multe alte limbaje le considera primitive (cum ar fi tipul intreg, boolean si “nil”). Fiecare functie reprezinta o metoda. Variabilele desemneaza referinte la obiecte, nu obiectele in sine. Ruby suporta mostenirea, dar nu mostenirea multipla, totusi clasele pot importa module. Sintaza procedurala este acceptata, dar toate metodele definite in afara scopului unui obiect particular sunt de fapt metode ale clasei obiect. Din moment ce clasa este parinte pentru toate celelalte clase, schimbarile devin vizibile pentru toate clasele si obiectele.

Ruby este un limbaj de programare dinamic, open source, care se axeaza pe simplicitate si productivitate. Are o sintaxa eleganta, natural de citit si usor de scris.

Ruby este un limbaj bine organizat, creatorul lui Yukihiro “matz” Matsumoto a combina parti din limbajele lui preferate (Perl, Smalltalk, Eiffel, Ada si Lisp).

Este considerat un limbaj flexibil deoarece permite utilizatorilor sa modifice partile sale componente. Parti esentiale ale limbajului pot fi eliminate sau redefinite, dupa voie. Parti deja existente pot fi adaugate in plus. Ruby incearca astfel sa nu limiteze programatorul.

De exemplu, adaugara se face cu ajutorul operatorului “+”. Dar se poate folosi si cuvantul “plus”, se poate adauga o astfel de metoda in clasa “Numeric” din Ruby:

class Numeric

def plus(x)

self.+(x)

end

end



y = 5.plus 6

# y is now equal to 11

Spre deosebire de multe limbaje orientate pe obiecte, Ruby foloseste mostenirea, dar nu cea multipla. Dar Ruby cunoaste conceptul de module: colectii de metode. Clasele pot incorpora un modul si primeasc toate metodele sale. De exemplu, orice clasa care implementeaza metoda “each” poate incorpora modulul “Enumerable”, care adauga alte metode ce folosesc “each” pentru buclare.

Desi foloseste un numar limitat de semne de punctuatie si prefera de obicei cuvinte in engleza, Ruby foloseste totusi semne. Ruby nu are nevoie de declarare a variabilelor. Foloseste conventii de nume pentru a nui scopul variabilelor:

- “var” poate fi o variabila locala

- “@var” este o variabila instanta

- “$var” este o variabila globala.

 

0 comments so far.

Something to say?