Pięć najlepszych gemów Ruby, które pokochasz!

Michał Brodecki 2015-07-15

Każdy programista jest inny - każdy posiada swój ulubiony edytor kodu i system operacyjny. Każdy słucha innego rodzaju muzyki w czasie pracy, bądź nie słucha jest wcale. Pomimo różnych osobowości i preferencji wszyscy posiadamy jedną wspólną rzecz, która nazywa się "Gemfile". Po przejrzeniu moich ostatnich kilku projektów zauważyłem, że kilka gemów powtarza się dla każdej z aplikacji. Chciałbym przedstawić Wam pięć gemów, które pokochacie.

PRY

W momencie rozpoczęcia nauki Ruby on Rails moim największym problemem było zrozumienie co robię źle. Niektórzy w Was mogą znać IDE od Microsoftu zwane Visual Studio - to bardzo potężne IDE, które posiada narzędzia do debugowania. Możesz oznaczyć dowolną linię kodu i w momencie, gdy interpreter zacznie ją wykonywać przejrzeć wartości zmiennych w tym właściwym momencie.

Jakiś czas temu znajomy pokazał mi interesujący gem - Pry, który był jak brakujące ogniwo. Działanie gem'a Pry podobne jest do debugger'a w Visual Studio. Można zatrzymać aplikację w dowolnym momencie poprzez wpisanie:

binding.pry

W momencie, gdy interpeter trafi na odpowiednią linię kodu program się zatrzyma i w terminalu, w którym uruchomiony został serwer aplikacji zobaczysz konsolę. W ten sposób możesz z łatwością debuggować swoje zmienne zamiast robienia "puts" albo "p" wszędzie. Przykład działania na obrazku poniżej:

Oczywiście to nie jedyna funkcja tego gema. Potrafi on także "odbudować" konsolę IRB. Po prostu spróbuj - zapewniam, że od tego momentu trafi on na stałe do Twojego pliku Gemfile.

BETTER ERRORS

Pozostańmy na chwilę w temacie debugowania. Z pewnością często otrzymujesz ekran błędu w aplikacji RoR - co jeśli istnieje gem, który pokaże Ci ten błąd w przejrzysty sposób? Z pomocą przychodzi gem Better errors, ponadto możesz mieć dostęp do "powłoki na żywo" jeżeli skorzystasz z gema Binding of caller. Błędy z tymi gemami wyglądają bardziej przyjaźnie.

 

REFORM

Są projekty, w których potrzebujesz stworzyć rozbudowane formularze, które posiadają zagnieżdżone atrybuty, przyjmowanie pewnych określeń itp. Dobrą praktyką jest zbudowanie obiektu formularza w celu łatwego nim zarządzania. Reform daje maksimum możliwości przy minimalnej ilości kodu. Każdy obiekt formularza dziedziczony jest z klasy Reform::Form. Po prostu definiujesz pola (jako właściwości) i piszesz walidacje to nich. Mogę napisać cały post na blogu o możliwościach jakie oferuje ten gem, ale to nie jest istotne. Sprawdź go sam.

DRAPER

 Czy Twoje widoki haml zawierają wiele linii jak te poniżej:

-if @user.something
  %p User is something
-else
  %p User is not something

albo

=@user.publication_date.strftime("at %I:%M%p")

 Jeżeli tak to zdecydowanie powinieneś użyć jakiegoś wzorca prezentacji albo w tym przypadku - dekoratora. Używając Drapera możesz umieścić logikę, która może byc potrzebna w widoku. Widok powinien być łatwy do czytania i rozszerzania - większa ilość "if-else" albo metod "upiększania" wcale tutaj nie pomoże. Dzięki Draperowi cała logika modelu widoku może zostać umieszczona w dekoratorze, a widok sam w sobie będzie odpowiedzialny jedynie za wyświetlanie danych.

PALOMA

W aplikacjach RoR jest miejsce dla JavaScriptu. Nawet jeśli, musisz wyraźnie zrobić wywołanie w swoim widoku w celu odwołania się do funkcji z javascriptu. Dzięki gemowi Paloma można porządkować JavaScript w bardziej przejrzysty sposób. Więcej na ten temat możecie przeczytać we wpisie Kamila: Keeping Scopes Clean While Coding in JavaScript or CoffeeScript.

BONUS

To jest konieczność dla wszystkich deweloperów, ale nie mów tego nikomu. To będzie nasz sekret. Jest to klucz do pisania aplikacji z mniejszą ilością literówek, nawet bez potrzeby ich sprawdzania. Poniżej przykład kodu, który przedstawia co się dzieje kiedy zaczniesz uzywać tego gema:

YourLife.rotate(180)

BinarApps

Wpis pojawił się u nas na blogu dzięki współpracy z BinarApps. Zachęcamy do zapoznania się z ich blogiem , znajdziesz tam wiele interesujących wpisów dotyczących Ruby.

https://binarapps.com/blog/

 

Hosting z dyskami SSD

Szukasz szybkiego hostingu z dyskami SSD? Dobrze trafiłeś.

Pakiety hostingowe Kylos to sprawdzone i niezawodne rozwiązanie dla Twojej strony.

Darmowy okres próbny pozwoli Ci sprawdzić naszą ofertę, bez ponoszenia kosztów.

 

Sprawdź nas

Mogą Cię również zainteresować

comments powered by Disqus