Z jakimi pytaniami z języka programowania Ruby on Rails możesz się spotkać na rozmowie rekrutacyjnej? Poniżej przedstawiamy 10 najczęściej pojawiających się pytań i odpowiedzi.
W artykule wymieniono:
1. Jaka jest rola podkatalogów app/controllers i app/helpers?
App/controllers: żądanie sieciowe użytkownika jest obsługiwane przez administratora. Podkatalog kontrolera to miejsce, w którym w Ruby on Rails wyszukuje się klasy kontrolerów.
App/helpers: Podkatalog helpera zawiera wszystkie klasy pomocników używane do wspomagania klas widoku, modelu i kontrolera.
2. Jaka jest różnica pomiędzy String a Symbol?
Jedyna różnica między nimi tkwi w identyfikatorze obiektu, pamięci i dostrojeniu procesu, gdy są używane razem. Symbol należy do kategorii niezmiennych obiektów, podczas gdy String są obiektami zmiennymi.
3. Różnice pomiędzy Symbol a zmiennymi
Symbol nie jest zmienną. W Ruby String jest zmienny, podczas gdy Symbol pozostaje niezmienny i można utworzyć tylko jedną jego kopię. Symbole są często używane jako odpowiedniki wyliczeń w Ruby.
4. Jak można utworzyć kontroler dla tematu w Ruby?
Za pomocą C:\ruby\library> ruby script/generate controller subject
5. Czym jest Cross-Site Request Forgery (CSRF) i w jaki sposób zabezpieczyć dane przed nim w Ruby?
CSRF to forma ataku, w której haker przesyła w Twoim imieniu żądanie strony do innej witryny, powodując szkody lub ujawniając Twoje poufne dane. Aby chronić się przed atakami CSRF, musisz dodać „protect_from_forgery” do kontrolera aplikacji. Spowoduje to, że Ruby będzie wymagać tokena CSRF do przetworzenia żądania. Token CSRF jest podawany jako ukryte pole w każdym formularzu utworzonym za pomocą konstruktorów formularzy Ruby on Rails.
6. Czym jest Mixin w Ruby on Rails?
Mixin w Ruby oferuje alternatywę dla wielokrotnego dziedziczenia, używając modułów mixin, które mogą być zaimportowane wewnątrz innej klasy.
7. Wyjaśnij, W jaki sposób zdefiniujesz zmienną instancji, zmienną globalną i zmienną klasową w języku Ruby?
Zmienna instancji w Ruby zaczyna się od — @
Zmienne klasy w Ruby zaczynają się od — @@
Zmienne globalne w Ruby zaczynają się od — $
8. Czym jest rake?
To narzędzie Ruby, które zastępuje narzędzie uniksowe „make” i używa „plików Rakefile” i „plików .rake” do tworzenia listy zadań. W języku Ruby Rake jest używany do normalnych zadań administracyjnych, takich jak: migracja bazy danych za pomocą skryptów, ładowanie schematu do bazy danych itp.
9. Czym jest i jaką funkcję ma sweeper?
Sweepery są odpowiedzialne za wygasanie lub kończenie pamięci podręcznych, gdy zmienia się obiekt modelu.
10. Jakie są ograniczenia języka Ruby?
Ruby on Rails został zaprojektowany do tworzenia aplikacji webowych CRUD przy użyciu MVC. Może to sprawić, że nie będą przydatne dla innych programistów. Niektóre funkcje, których ten język programowania nie obsługuje, obejmują:
Foreign key w bazach danych; Jednoczesne łączenie z wieloma bazami danych; Soap web services; Jednoczesne połączenie z wieloma serwerami baz danych.