Créer votre framework web en Ruby
Gratuit !
With Membership
$12.99
Prix conseillé

Créer votre framework web en Ruby

À propos du livre

Le framework web, quel qu'il soit, est l'outil de base du travail quotidien de nombreux développeurs et de nombreuses développeuses. Avec ce livre vous apprendrez tout de son fonctionnement et de ses rouages internes.

Vous aborderez en pratique la plupart des éléments qui composent les frameworks web :

  • Les notions de bases, que sont le routage, les contrôleurs, les vues et les modèles.
  • Des ORM (Object-relational mapping) comme Sequel, DataMapper ou Active record. Dans cet ouvrage nous utiliserons Sequel.
  • La gestion des templates et de leur disposition dans la page web avec des moteurs tel que ERB, Haml, Markaby ou Liquid.
  • La gestion des API, avec le format Json ou le format XML.
  • Le protocole HTTP avec ses réponses, ses requêtes, ses codes de retour.
  • Le flash, comme dans Ruby on Rails.
  • Les bases de données Sqlite et Postgresql, les notions de migration et de CRUD.
  • Des éléments moins glamour comme la gestion des logs, des redirections, du cache, ou encore des différents environnements de travail (development et production).
  • Des éléments beaucoup plus sexy comme les générateurs à la Ruby on Rails, les DSL, ou le déploiement dans le cloud sur Heroku.
  • Les notions de backend et de frontend pour former une seule et même application.

Il y aura quelques éléments spécifiques à Ruby, comme l'interface Rack et ses middlewares, le Gemfile et les gems, et le binding.

Pour tirer pleinement profit de ce livre, vous aurez besoin de quelques connaissances préliminaires en programmation. Si vous avez écrit deux ou trois sites web, quelque soit le langage, quelque soit le framework, vous possédez déjà les compétences requises pour utiliser ce livre au mieux. Comme le titre le précise, nous allons écrire un framework web en Ruby, il vous sera donc utile d'avoir déjà une certaine connaissance du langage Ruby. Si ça n'est pas le cas, rassurez vous, Ruby est un langage qui s'apprend facilement et rapidement et vous pourrez très bien l'apprendre en même temps que que vous lirez ce livre.

  • Partager ce livre

  • Catégories

    • Web Development
    • Ruby
    • Software Engineering
  • Commentaires

    Écrire à l'auteur

À propos de l'auteur

xavier nayrac
Xavier Nayrac

Xavier Nayrac est un développeur autodidacte qui a écrit ses premiers programmes sur l'ordinateur ZX81 en 1983. Adolescent, il gagne ses premiers francs dans l'industrie informatique en écrivant pour son père un programme de probabilité destiné à trouver les gagnants du tiercé. Depuis ses premiers sites web en PHP dans les années 90s jusqu'à son poste actuel d'expert technique, il a vu passer de nombreux frameworks web, tous différents, et en même temps tous identiques. 

Table des matières

  •  
    • Avant-propos
      • Code source
      • Comment contacter l’auteur
      • À qui s’adresse ce livre
      • Crédits images
      • Change log
    • Introduction
  • Partie I : Éléments basiques d’un framework web
    • 1 - Les bases de Rack
      • Première rencontre
      • Application attendue par Rack
      • Emplacement du config.ru
    • 2 - Une route + un contrôleur + une vue = une application
      • Une route
      • Un contrôleur
      • Une vue
      • Une application
    • 3 - Des routes + des controlleurs + des vues = un framework
      • Des routes
      • Des contrôleurs
      • Des vues
      • Un framework
      • Généralisons encore
    • 4 - Le Gemfile
      • Source
      • Gem
      • Bundle
      • Versions
      • L’opérateur pessimiste
      • Trouver la dernière version d’une gem
      • Le Gemfile final
    • 5 - Les bases de la base de données Sqlite3
      • Sqlite3 avec Ruby
      • Sqlite3 sur la ligne de commande
      • DB Browser for Sqlite
      • Conclusion
    • 6 - Modèle de données avec Sequel
      • Installer Sequel
      • Utiliser Sequel pour récupérer les données
      • Le modèle Article
    • 7 - Template et binding
      • Définition d’un template
      • Binding
      • Un premier template
      • Layout
    • 8 - CRUD
      • Encore un blog
      • Les 7 actions conventionnelles
      • Index
      • Show
      • Delete
      • Conclusion temporaire
    • 9 - CRUD (suite)
      • new
      • create
      • edit & update
      • Avec ou sans slash ?
      • Avant d’en finir
      • Conclusion
    • 10 - Les assets (CSS, JavaScript, images)
      • Définition
      • CSS
      • JavaScript
      • Les images
      • Inclure plusieurs fichiers
      • Conclusion
    • 11 - 500, 404 et favicon
      • Le dossier public
      • Erreur 500
      • Erreur 404
      • Favicon
      • Comment rafraîchir un @!$$#@ de favicon !
    • 12 - Templates partiels
      • Partager un partiel entre plusieurs templates
      • Un partiel dans le layout principal
      • Envoyer de l’information au template principal
    • 13 - Notice
      • De quoi parle-t-on ?
      • D’abord la surface des choses
      • Un premier essai de création
      • Une session pour la mémoire
      • Une classe Notice
      • Conclusion
    • 14 - Un DSL pour les routes
      • Un DSL, c’est quoi ?
      • Une version super simple mais controversée
      • Une seconde version
      • Conclusion
  • Partie II : Éléments avancés d’un framework web
    • 15 - La base de données Postgresql
      • Installation
      • Configuration
      • Création de la base de données
      • Création de la table posts
      • Utiliser Postgresql dans notre framework
      • Vers un framework multi base
      • Conclusion
    • 16 - Déploiement sur Heroku
      • Création d’une application sur Heroku
      • Première tentative de déploiement
      • Création de la table posts
      • Conclusion
    • 17 - Migrations
      • Introduction
      • Une première migration
      • Ajouter une seconde migration
    • 18 - Middlewares Rack
      • Introduction
      • Structure d’un middleware
      • TrailingSlashRemover
      • humans.txt
      • API switcher
      • Notice
      • Conclusion
    • 19 - Le cache HTTP
      • Cache HTTP ?
      • Mettre en cache pour combien de temps ?
      • Comment mettre en œuvre le cache HTTP ?
      • Un cache HTTP par défaut
      • Un cache HTTP à la demande
      • À la demande ou par défaut
      • Conclusion
    • 20 - Des logs
      • Log des requêtes HTTP
      • Un log pour la base de données
      • Log personnalisé
      • Conclusion
    • 21 - Autres moteurs de template (HAML, markaby, liquid)
      • Introduction
      • HAML
      • Markaby
      • Liquid
      • Conclusion
    • 22 - API (JSON, XML)
      • Les citations de Pulp Fiction
      • Expérimentons !
      • Mise à jour des données
      • Vers un framework «API friendly»
      • La gestion des erreurs
      • Et XML dans tout ça ?
      • Conclusion
    • 23 - Environnements
      • Introduction
      • Rechargement automatique
      • Logs
      • Base de données
      • CSS
    • 24 - Un générateur
      • Rake et les arguments
      • Création des 7 actions
      • Écriture du fichier
      • Avec des actions personnalisées
      • Conclusion
  • Partie III : Un exemple d’application
    • 25 - Présentation de l’application
      • Introduction
      • Les APIs externes utilisées
      • Notre framework
    • 26 - Un backend/API
      • Création des fichiers de base
      • Création d’un User
      • Création d’une collection
      • Visualiser un user
      • Lister les collections
      • Supprimer une collection
      • Boostrap des gifs
      • Lister les gifs d’une collection
      • Un gif au hasard avec Giphy
      • Ajout de l’API Tenor
      • Variables d’environnement
      • http://thecatapi.com/docs.html
      • Les erreurs
      • Déploiement en production
      • Conclusion
    • 27 - Un frontend
      • Introduction
      • Connexion
      • Liste des murs
      • CSS
      • Créer un mur
      • Afficher le contenu d’un mur
      • Menu
      • Supprimer un mur
      • Ajouter un gif
      • Supprimer un gif
      • Notice
      • JavaScript
    • 28 - Conclusion

Aucun risque ! Satisfait ou remboursé !

Durant les 60 jours suivant l'achat, vous pouvez obtenir un remboursement à 100% de la part de Leanpub, en moins de deux clics. Nous traitons les remboursements manuellement, un délai de quelques jours est nécessaire. Voir nos conditions générales.

80% Royalties. Earn $16 on a $20 book.

We pay 80% royalties. That's not a typo: you earn $16 on a $20 sale. If we sell 5000 non-refunded copies of your book or course for $20, you'll earn $80,000.

(Yes, some authors have already earned much more than that on Leanpub.)

In fact, authors have earnedover $12 million USDwriting, publishing and selling on Leanpub.

Learn more about writing on Leanpub

Mises à jour gratuit. Sans DRM.

Si vous achetez un livre Leanpub, vous obtenez des mises à jour gratuit tant que l'auteur met à jour le livre ! De nombreux auteurs utilisent Leanpub pour publier leurs livres en cours, lorsqu'ils les écrivent. Tous les lecteurs obtiennent les mises à jour gratuites, quel que soit le moment où ils ont acheté le livre ou combien ils ont payé (même s'ils étaient gratuits).

La plupart des livres Leanpub sont disponibles en format PDF (pour les ordinateurs) et EPUB (pour les téléphones, les tablettes, et les Kindles). Les formats inclus sont affichés dans le coin droit supérieur de cette page.

Finalement, les livres Leanpub n'ont pas de DRM, d'abord vous pouvez toujour les lire facilement sur n'importe quel appareil pris en charge.

En savoir plus sur les formats des livres ebook de Leanpub et où les lire

Écrire et publier avec Leanpub

Les auteurs, les entreprises et les universités utilisent Leanpub pour publier des livres incroyables en cours et compléter comme celui-ci. Vous aussi pouvez utiliser Leanpub pour écrire, publier et vendre votre livre ! Leanpub est une plate-forme puissante pour les auteurs sérieux, combinant un flux d'écriture simple et élégante avec un magasin axé sur la vente de livres ebooks en cours d'exécution. Leanpub est une machine à écriture magique pour les auteurs : il suffit d'écrire en texte clair et pour publier votre ebook, il suffit de cliquer sur un bouton. C'est vraiment facile.

En savoir plus sur l'écriture avec Leanpub