Comment atteindre un niveau supérieur avec le framework Web populaire
Ruby on Rails est un framework Web fantastique. Il est facile d’apprendre et de commencer à créer des logiciels. Combiné au langage Ruby, il est attractif pour tous ceux qui souhaitent développer des logiciels.
En peu de temps, les ingénieurs apprennent toutes les bases nécessaires de Ruby on Rails. Et puis, ils commencent à chercher de nouveaux défis. Heureusement, Rails a beaucoup à offrir et ne vous ennuie jamais.
Les sujets suivants vous permettront de peaufiner votre maîtrise de Ruby on Rails et de devenir un meilleur développeur.
Ruby on Rails a un routage exhaustif Documentation. Pourtant, chaque développeur est bloqué avec la bonne configuration de routage au moins quelques fois.
Chaque fois que la personnalisation est nécessaire, il devient difficile de garder les choses intactes.
Avez-vous essayé d’ajouter un point de terminaison personnalisé à la collection ? Ou ajouter des contraintes spécifiques sur les ressources ? Ou prendre en charge plusieurs paramètres uniquement pour une certaine action ?
Toutes ces tâches sont simples une fois que vous les avez déjà effectuées. Cependant, les premières fois peuvent vous causer des problèmes.
La commande bin/rails routes
est votre assistant fiable chaque fois que vous touchez le fichier d’itinéraires. Il imprimera les URL définies et leur format.
La métaprogrammation est un concept puissant du langage Ruby, mais qu’est-ce que c’est ?
La métaprogrammation est une technique qui permet d’écrire du code décrivant le code source. Au début, cela peut sembler étrange. Pour mieux comprendre, regardons l’exemple suivant :
class Order
attr_reader :iddef initialize(id:)
@id = id
end
define_method(:print_id) { puts "ID #{id}" }
end
...
order = Order.new(id: 1)
order.print_id
La classe Order
est simple. Il a un attribut id
qui est en cours d’initialisation.
Ce qui attire notre attention est l’appel define_method
. Il décrit une méthode print_id
qui affiche l’ID de la commande.
Nous n’avons pas défini la méthode print_id
explicitement. Mais nous avons utilisé la métaprogrammation pour décrire cette méthode.
Ce concept est largement utilisé dans Ruby on Rails et dans le support des gems. Il permet la déclaration de méthodes et d’attributs à l’exécution. Dans des cas spécifiques, cela peut être pratique et donne de l’élégance à votre code.
Lorsqu’une action doit être effectuée de manière asynchrone, nous devons impliquer des tâches d’arrière-plan. Les applications Web modernes les utilisent activement.
Dans Ruby on Rails, la prise en charge des tâches d’arrière-plan est fournie via Travail actif. L’idée entière est simple. Les développeurs écrivent du code qui doit être exécuté de manière asynchrone, puis ce morceau de code est programmé pour exécution.
Cependant, lorsque vous commencerez à approfondir, vous en apprendrez davantage sur les files d’attente prioritaires, la simultanéité et les tentatives en cas d’échec. Vous pouvez également rencontrer des problèmes comme reprendre le travail après un redéploiement ou trouver comment tester et déboguer le travail.
Les tâches d’arrière-plan impliquent l’intégration du backend de mise en file d’attente, comme Sidekiq. C’est une autre technologie avec laquelle vous devrez vous familiariser.
WebSocket n’est pas nouveau. Il est déjà utilisé depuis une décennie et est devenu populaire avec la demande croissante d’applications en temps réel.
Câble d’action est un wrapper autour de WebSockets dans Ruby on Rails. Il dispose des interfaces nécessaires pour mettre en œuvre les fonctionnalités de diffusion et d’abonnement.
Pourtant, il faut un certain temps pour comprendre comment la technologie fonctionne et comment la déboguer car le code est différent de ce que nous avions l’habitude de voir dans les contrôleurs REST vanille.
Apprendre à mesurer les performances des applications vous aidera à créer des applications rapides et efficaces. Ces mesures vous aideront à identifier les goulots d’étranglement potentiels dans le code source et à les résoudre.
Ruby on Rails a des capacités intégrées pour le profilage des performances. En plus de cela, il y a beaucoup de joyaux qui aident à cela.
Par exemple, la gemme Référence a quelques méthodes pour mesurer le temps d’exécution des blocs de code. Ils évalueront la consommation de CPU et de mémoire et généreront une sortie vers la console.
La gestion des performances consiste à décider où placer le suivi des métriques et à comprendre la raison de la mauvaise mise en œuvre.
Lorsque vous sentez que vous connaissez les bases de Ruby on Rails et que vous souhaitez en savoir plus, considérez les sujets ci-dessus. Ceux-ci sont activement utilisés dans le cadre et dans d’autres joyaux populaires.
Les rubriques avancées vous aideront à mieux comprendre le fonctionnement interne de Ruby on Rails et à en tirer le meilleur parti. Bon codage !