Newsletter

Grupa MagazynyInternetowe

Online: 955

Wyszukiwarka

Ruby, Ruby on Rails, Programowanie

Programowanie w Ruby

Programowanie w Ruby Ruby on Rails rzutem na taśmę wywołało burzę skrajnie różnych emocji. Owszem, jest to nowy, rewolucyjny sposób szybkiego budowania aplikacji internetowych. Lecz także i tej technologii trzeba się nauczyć niejako od nowa. Aby należycie zaprezentować możliwości RoR, postanowiliśmy wpierw przyjrzeć się Ruby, obiektowemu językowi programowania, który pomimo tego, że powstał dobre kilkanaście lat temu, jest do dziś dobrze znany tylko wąskiej grupie programistów.

Paweł Grzesiak

Instalacja Ruby

Autorem Ruby jest Yukihiro Matsumoto, programista i zwolennik wolnego oprogramowania. Stworzył on Ruby, gdyż jak to określa w referencyjnej książce (oficjalnympodręczniku Ruby) - był zniechęcony sposobem, w jaki wiele innych języków zmusza programistę do wielokrotnego wykonywania tych samych czynności. Ruby jest językiem skryptowym, co oznacza, że do wykonania programu konieczne jest zinterpretowanie jego kodu przez parser.

Ruby jest też językiem zorientowanym obiektowo, którego wyróżnikiem jest brak konieczności deklarowania zmiennych, a co za tym idzie - ich typów. Zmienne zostają automatycznie zadeklarowane w momencie pierwszego przypisania. Mechanizm dynamicznego doboru typu zmiennej pozwala nie tylko wyręczyć programistę, lecz także zapobiec błędom przy kompilacji. Choć ten mechanizm ma wielu zwolenników wśród programistów C++ czy Javy, to zachowanie języka niekoniecznie musi działać na jego niekorzyść.

Językiem o podobnych cechach jest np. PHP, który dzięki łatwości implementacji zdobył przewagę w obsłudze aplikacji internetowych. Jednak PHP ma wiele wad i nie narzuca programiście żadnego stylu programowania, czego efektem jest chaotyczny kod pisany przez amatorów programowania.

Ruby zostało wypuszczone na rynek w 1995 roku, ale przez wiele lat nie było zauważone. Dopiero za sprawą Ruby on Rails, oczy wielu programistów skierowały się na ten interesujący niewątpliwie język. Ruby on Rails jest frameworkiem napisanym w języku Ruby. Celem RoR (skrót od Ruby on Rails) jest stworzenie przyjaznego środowiska dla programistów aplikacji internetowych. Wykorzystanie do tego celu Ruby okazało się bardzo trafne, o czym świadczy bardzo duże zainteresowanie developerów tą nową technologią. Mimo że RoR powstało w 2003 roku, prawdziwego rozpędu nabrało dopiero niespełna dwa lata temu.

Ruby on Rails oparto o architekturę MVC (Model, Widok, Kontroler), która wydaje się naturalnym paradygmatem realizacji aplikacji internetowych. Słusznie zauważono, że w aplikacjach sieciowych rozdzielenie widoku i kontrolera byłoby okupione większym skomplikowaniem aplikacji i tworzeniem dodatkowego, niepotrzebnego kodu (a przecież Ruby chce tego uniknąć). Rails podoba się, bo napisanie prostych aplikacji jest proste. Doskonałym kontrprzykładem jest tu język Java, który jest co prawda doskonały w rozbudowanych aplikacjach, lecz kompletnie nie nadaje się choćby do prostych implementacji, takich jak wyświetlenie na ekranie tekstu „Witaj świecie” - do osiągnięcia tego celu potrzebuje bowiem kilkunastu linii kodu.

Z Ruby on Rails jest jednak jeden problem. Aby mógł on działać na serwerze WWW, tak jak PHP czy Perl (CGI), konieczne jest zainstalowanie odpowiedniego oprogramowania. Jeżeli spojrzeć na niewielką liczbę firm hostingowych obsługujących tę platformę, okazuje się, że nie jest to wcale takie łatwe. Co więcej, żadna licząca się na rynku firma hostingowa nie zdecydowała się na taki krok. Dlatego póki rosnąca popularność frameworka nie sprawi, że instalacja RoR na serwerach zacznie opłacać się z ekonomicznego punktu widzenia, raczej nie zaleje nas fala serwisów napisanych w RoR. Można więc powiedzieć, że koło się zamyka, bo racjonalnie myślący programiści nie używają technologii, której nie mogą wdrożyć i testować na żywym organizmie, jakim jest internet.

A jednak popularność RoR na świecie wydaje się być zaskakująco duża. Lecz i o hosting z obsługą RoR jest za oceanem znacznie łatwiej.

Najważniejsze cechy Ruby jako języka to:

  • Ruby łączy cechy języka czysto obiektowego (jak Smalltalk) z przystępnością języków skryptowych (Perl). Programy napisane w Ruby są kompaktowe, łatwe w interpretacji. Wiele kwestii można rozwiązać, wykorzystując zaledwie kilka linii kodu, bez zbytniego komplikowania składni.
  • Składnia i semantyka języka jest prosta i intuicyjna, a kod wynikowy wolny od niepotrzebnych znaków.
  • Programista koncentruje się wyłącznie na pisaniu rozwiązań, bez zbędnego zagłębiania się w potrzeby kompilatora.
  • Ruby posiada otwarte źródło i nie stawia ograniczeń co do platformy, na której może być wykonywane.

W tym artykule przyjrzymy się językowi Ruby, jego składni oraz możliwościom. W następnym, mając już opanowane podstawy Ruby, zgłębimy tajniki Ruby on Rails.

Instalacja Ruby

W przeciwieństwie do platformy Rails, interpreter języka Ruby można znaleźć na wielu komercyjnych serwerach liczących się firm hostingowych (za pośrednictwem powłoki lub jako skrypt CGI). Ruby jest językiem skryptowym, który może być wykorzystywany do rozmaitych celów. Dzięki Ruby można np. stworzyć interfejs graficzny(Tcl).

Nie istnieją jakiekolwiek ograniczenia co do platformy, na której uruchamiamy skrypty Ruby. Te same skrypty będą działać zarówno pod kontrolą systemów linuksowych, jak i Windowsów (z wyłączeniem kilku funkcjonalności specyficznych dla danej platformy). Witryna napisana w Ruby nie będzie tym samym, co witryna stworzona w oparciu o Ruby on Rails. Nie jest problemem wykorzystanie Ruby np. do obsługi formularzy czy obsługi parametrów przekazywanych poprzez adres URL. Mechanizm taki może być oparty o interfejs CGI (ang. Common Gateway Interface).

Niestety, napisana w ten sposób aplikacja nie będzie żadną rewolucją i nie przysporzy Ruby wielu fanów. Stworzona przy użyciu CGI aplikacja internetowa będzie przypominać w zasadzie to, co znają webmasterzy posługujący się Perl/CGI czy też osoby pracujące pod kontrolą Pythona. Oczywiście różnicą będzie tutaj język implementacji.

3 lutego 2008

Powiązane publikacje

RailsSpace. Tworzenie społecznościowych serwisów internetowych w Ruby on Rails

RailsSpace. Tworzenie społecznościowych serwisów internetowych w Ruby on Rails

Ruby on Rails dla zaawansowanych - tworzymy system newsów

Ruby on Rails dla zaawansowanych - tworzymy system newsów

Ruby on Rails

Ruby on Rails

 
Skomentuj
ten artykuł

Komentarzy: 1

Kod obrazkowy
(Kliknij, aby zmienić)
 
Przejdż do tego postu na forum Sunday, 10.02.2008 19:06bs

1. b % 2 (gdzie b = 5)
2. -> 0

Czy aby na pewno ? wink.gif

Zobacz wszystkie komentarze »

Autor

Paweł Grzesiak

Artykuły tego autora:

Newsletter

Jesli chcesz być na bieżąco z tym co się dzieje na stronie magazynu INTERNET Maker zapisz się do naszego newslettera.