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

Ce livre est complet à 100%

Complété le 2018-06-21

À 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.

À 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 of Contents

  •  
    • 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 45 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.

Free Updates. Free App. DRM Free.

If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).

Most Leanpub books are available in PDF (for computers), EPUB (for phones and tablets), MOBI (for Kindle) and in the free Leanpub App (for Mac, Windows, iOS and Android). The formats that a book includes are shown at the top right corner of this page.

Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.

Learn more about Leanpub's ebook formats and where to read them

Ecrire et publier avec Leanpub

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

En savoir plus sur l'écriture avec Leanpub