Toen ik voor het eerst over Ruby Gems hoorde, leken ze me nogal magisch. Door bundle install uit te voeren, kon ik op de een of andere manier deze magische edelstenen verkrijgen die mijn code allerlei dingen zouden laten doen die mijn vaardigheden als week 1 Flatiron-student ver te boven leken te gaan. Net als “item boxes” in Mario Kart lijken edelstenen de gebruiker superkrachten te geven.
Ik ben van plan om mijn blog te gebruiken om dieper in te gaan op programmeerconcepten die mijn nieuwsgierigheid wekken en die ik niet helemaal begrijp. Voor mijn eerste blog post, ga ik het mystieke, magische karakter van Ruby gems ontkrachten.
Wat is een Ruby Gem?
Nee, Ruby gems zijn niet magisch. Het zijn gewoon open source bibliotheken die Ruby code bevatten en zijn verpakt met een beetje extra gegevens . Met behulp van een gem kan een programmeur de code in de gem gebruiken in hun eigen programma, zonder expliciet die code in te voegen.
Gems kunnen worden gebruikt voor allerlei doeleinden, en u kunt verschillende gems verkennen op https://rubygems.org/. Om een beter idee te krijgen van wat gems kunnen doen, zijn hier een paar populaire gems en hun functionaliteit:
Bundler – Zorgt voor een consistente omgeving voor Ruby-projecten door het bijhouden en installeren van de exacte gems en versies die nodig zijn. Het is de #1 gedownloade gem aller tijden, maar later meer over Bundler.
RSpec – Een test framework dat Behavior Driven Development voor Ruby ondersteunt.
Devise – Devise werkt met authenticatie. Voor elke website die moet gebruikers log-in’s, Devise behandelt aanmelden, aanmelden, reset wachtwoord, etc.
JSON – Biedt een API voor parsing JSON van tekst.
Nokogiri – Biedt HTML, XML, SAX, en Reader parsers met XPath en CSS selector ondersteuning.
Rails – Rails is een juweeltje! Rails biedt de fullstack framework waarmee Ruby kan worden omgezet in webapplicaties.
Installeren Gems
Heden ten dage, het gebruik van gems is eenvoudig! Gems lokaal installeren is zo simpel als een enkel commando: gem install . Het install commando haalt de code op, download het naar uw computer, en installeert de gem en alle benodigde afhankelijkheden. Tenslotte wordt de documentatie voor de geïnstalleerde gems gemaakt.
Terwijl sommige gems, zoals Bundler, slechts de installatie van 1 gem vereisen, hebben andere gems afhankelijkheden die de installatie van meerdere gems vereisen: