Ruby on Rails: wprowadzenie

Słowem wstępu chciałbym Was bardzo serdecznie powitać moim pierwszym wpisem na temat Ruby on Rails. Nadmienię, że w planach mam bardzo fajne pomysły i jestem pewien, że zbudujemy niedługo kącik wiedzy każdego Railsowca. Przechodząc do meritum tematu omówię na początku słownikowe podstawy na temat samego języka Ruby.

Czym jest Ruby on Rails?

Zacznijmy od samej podstawy, czyli od języka w jakim napisano RoR – Ruby.
Ruby to interpretowany, w pełni obiektowy i dynamicznie typowany język programowania stworzony w 1995 roku przez japończyka Yukihiro Matsumoto.

Twórcą samego frameworka opartego o język Ruby jest duński programista David Heinemeier Hansson – jeden z programistów grupy 37signals.

Yukihiro Matsumoto - Twórca języka Ruby Yukihiro Matsumoto – Twórca języka Ruby

David Heinemeier Hansson David Heinemeier Hansson – Autor frameworka Rails

Cechy szczególne języka Ruby:

  • automatyczne odśmiecanie pamieci,
  • iteratory,
  • przeciążanie operatorów (ang. operator overloading),
  • normalne i zaawansowane właściwości zorientowania obiektowego (w Ruby wszystko po prostu jest obiektem!),
  • obsługa wyjątków,
  • wyrażenia regularne wbudowane w składnię,
  • liczby całkowite o dowolnych rozmiarach,
  • dodawanie metod do instancji klasy (rozszerzanie funkcjonalności klas jest naprawdę bardzo proste),
  • bloki i lambdy – wygodne przekazywanie funkcji jako parametrów,
  • „Duck typing” – rozpoznawanie typów na podstawie ich zachowania, a nie deklaracji,
  • moduły – rodzaj wielodziedziczenia pozwalający włączyć gotową implementację zbioru metod do danej klasy,
  • możliwość zmiany praktycznie wszystkiego – dodanie dodatkowych metod do klasy Array, czy zmiana sposobu drukowania liczb całkowitych są niezmiernie proste,
  • zmienne leksykalne modyfikowalne w czasie działania programu

Źródło: Wikipedia

Ruby on Rails jest rozbudowanym frameworkiem open-source dającym programistom swobodę programowania, zapewniając wysoką stabilność swoich usług, przyjemność pracy oraz produktywność za sprawą swojej klarowności. Pozwala na pisanie pięknego i wydajnego kodu preferując konwecję ponad konfiguracją.

Dlatego właśnie RoR zyskał rzeszę wiernych użytkowników, którzy ceniąc swój czas postawili na zwinne programowanie z wykorzystaniem stabilnego rozwiązania.

Do kogo skierowany jest Ruby on Rails?

Do wszystkich pragnących utrzymywać wysoką kulturę swojego kodu skupiając się na postępach, zapominając o długim procesie wdrażania. Ruby on Rails jest przełomem w dziedzinie programowania potężnych aplikacji Internetowych, których tworzenie kiedyś zajmowało wiele więcej czasu, dziś pozwala tworzyć serwisy w kilka dni.

Duża społeczność pasjonatów Ruby on Rails zapewnia dostęp do najnowszych rozwiązań, które w łatwy sposób dokładamy do naszej aplikacji rozbudowując ją o kolejne poziomy. Obecna baza RubyGems bo tak nazywa się repozytorium dodatków do języka, liczy obecnie ponad 60 000 projektów oraz 1.9 miliarda pobrań. Głównym założeniem Ruby on Rails jest szybkość tworzenia dużych aplikacji zapewniając jej wysoką stabilność i łatwość rozszerzania.

Kolejną stosowaną metodyką RoRa jest DRY czyli „Don’t Repeat Yourself” – polega na unikaniu powtarzania się elementów w różnych częściach aplikacji. Metoda tworzenia kodu sprawia, że w naszej aplikacji panuje ład i porządek, a edycja elementów sprowadza się do poprawienia pojedynczych plików – dlatego ważne jest by dobrze rozplanować architekturę naszej aplikacji.

Cechą szczególną na pewno jest „Convention Over Configuration” czyli reguła polegająca na uproszczeniu użytkowania frameworka pozostawiając domyślne wartości konfiguracji. Możliwość użycia gotowych wtyczek (tzw. GEM) pozwala w jednej chwili rozbudować funkcjonalność naszej aplikacji o gotowe, przetestowane rozwiązania takie jak: zarządzanie użytkownikiem, rejestracja, skalowanie zdjęć, moduły e-commerce zachowując integralność z naszym kodem.

Z czego składa się Ruby on Rails?

Podstawowymi komponentami Rails są cztery główne części:

  • ActiveRecord – mechanizm ORM (Object Relational Maping) dla języka Ruby. Odpowiada za generowanie modeli w architekturze MVC oraz zarządzanie zasobami bazy danych.
  • ActionPack – biblioteka zawierająca klasy ActionController i ActionView, które odpowiadają za tworzenie odpowiednio kontrolerów i widoków czyli elementów MVC.
  • ActiveSupport – zbiór użytecznych dodatków do standardowej biblioteki Ruby, zawiera m.in. rozszerzenia klas String czy Time.
  • ActionMailer – biblioteka służąca do wysyłania wiadomości email (najczęściej przez aplikację Rails).

Rails wspiera wiele typów baz danych takich jak: MySQL, PostgreSQL, Oracle, Microsoft SQL Server, Sqlite oraz kilka innych.

Konkluzja

Ruby on Rails z pewnością urzecze prostotą pisania dużych aplikacji, zorganizowaniem kodu oraz piękną składnią. Rozbudowane repozytorium gemów zastąpi dla wielu proces odnajdywania koła na nowo.

W najbliższym artykule opiszę cały proces instalacji języka Ruby oraz frameworka Rails w środowisku Linux oraz podstawową konfigurację serwera Nginx. Zachęcam wszystkich do śledzenia tagu „rails” bo zapewniam, że będą ciekawe publikacje!

Programista, administrator - miłośnik nowych technologii. Jak każdy fachowiec w branży nie oprę się porannej kawie w towarzystwie świeżej prasy. Hobbystycznie fotografuję, psuję, naprawiam, lutuję. Czego nie lubię? Nieskromnych ludzi i brzydkiego kodu.

Send this to a friend

webmastah.weekly
Cotygodniowa porcja linków ze świata WEBDEV BEZ spamu, TYLKO samo mięcho!
Zobacz poprzednie wydania. Dołącz do 2 tysięcy webdeveloperów!
HTML5, CSS3, JS (React, Angular, Ember, Vue), PHP, SQL