Les meilleurs livres Ruby & Rails
15 livres et 17 critiques, dernière mise à jour le 30 janvier 2016 , note moyenne : 5
Les meilleurs livres Ruby
- Refactoring - Ruby edition
- Practical Object-Oriented Design in Ruby - POODR
- Ruby Best Practices - Increase Your Productivity - Write Better Code
- Head First Rails
- The Well-Grounded Rubyist
- Ruby - Les fondamentaux du langage - Mise en oeuvre avec Ruby on Rails
- Ruby in Practice
- Advanced Rails
- Ruby on Rails - Vite et efficace
- Ruby et Rails - Le guide Ruby des développeurs Rails
- Ruby on Rails - 2ème édition
- Pratique de Ruby on Rails
- Ruby par l'exemple
- Ruby in a nutshell - Manuel de référence
- Ruby on Rails - Un guide pragmatique
Refactoring
Ruby edition
Résumé de l'éditeur
With refactoring, programmers can transform even the most chaotic software into well-designed systems that are far easier to evolve and maintain. What’s more, they can do it one step at a time, through a series of simple, proven steps. Now, there’s an authoritative and extensively updated version of Martin Fowler’s classic refactoring book that utilizes Ruby examples and idioms throughout–not code adapted from Java or any other environment.
The authors introduce a detailed catalog of more than 70 proven Ruby refactorings, with specific guidance on when to apply each of them, step-by-step instructions for using them, and example code illustrating how they work. Many of the authors’ refactorings use powerful Ruby-specific features, and all code samples are available for download.
Leveraging Fowler’s original concepts, the authors show how to perform refactoring in a controlled, efficient, incremental manner, so you methodically improve your code’s structure without introducing new bugs. Whatever your role in writing or maintaining Ruby code, this book will be an indispensable resource.
This book will help you
• Understand the core principles of refactoring and the reasons for doing it
• Recognize “bad smells” in your Ruby code
• Rework bad designs into well-designed code, one step at a time
• Build tests to make sure your refactorings work properly
• Understand the challenges of refactoring and how they can be overcome
• Compose methods to package code properly
• Move features between objects to place responsibilities where they fit best
• Organize data to make it easier to work with
• Simplify conditional expressions and make more effective use of polymorphism
• Create interfaces that are easier to understand and use
• Generalize more effectively
• Perform larger refactorings that transform entire software systems and may take months or years
• Successfully refactor Ruby on Rails code
Édition : Addison-Wesley - 480 pages, 1re édition, 15 octobre 2009
ISBN10 : 0321603508 - ISBN13 : 9780321603500
Réédition du livre REFACTORING de Martin Fowler, complètement réadapté pour Ruby !
Chapter 2. Principles in Refactoring
Chapter 3. Bad Smells in Code
Chapter 4. Building Tests
Chapter 5. Toward a Catalog of Refactorings
Chapter 6. Composing Methods
Chapter 7. Moving Features Between Objects
Chapter 8. Organizing Data
Chapter 9. Simplifying Conditional Expressions
Chapter 10. Making Method Calls Simpler
Chapter 11. Dealing with Generalization
Chapter 12. Big Refactorings
Chapter 13. Putting It All Together
Practical Object-Oriented Design in Ruby
POODR
Résumé de l'éditeur
Ruby’s widely admired ease of use has a downside: Too many Ruby and Rails applications have been created without concern for their long-term maintenance or evolution. The Web is awash in Ruby code that is now virtually impossible to change or extend. This text helps you solve that problem by using powerful real-world object-oriented design techniques, which it thoroughly explains using simple and practical Ruby examples.
Sandi Metz has distilled a lifetime of conversations and presentations about object-oriented design into a set of Ruby-focused practices for crafting manageable, extensible, and pleasing code. She shows you how to build new applications that can survive success and repair existing applications that have become impossible to change. Each technique is illustrated with extended examples, all downloadable from the companion Web site, poodr.info.
The first title to focus squarely on object-oriented Ruby application design, Practical Object-Oriented Design in Ruby will guide you to superior outcomes, whatever your previous Ruby experience. Novice Ruby programmers will find specific rules to live by; intermediate Ruby programmers will find valuable principles they can flexibly interpret and apply; and advanced Ruby programmers will find a common language they can use to lead development and guide their colleagues.
This guide will help you
Understand how object-oriented programming can help you craft Ruby code that is easier to maintain and upgrade
Decide what belongs in a single Ruby class
Avoid entangling objects that should be kept separate
Define flexible interfaces among objects
Reduce programming overhead costs with duck typing
Successfully apply inheritance
Build objects via composition
Design cost-effective tests
Solve common problems associated with poorly designed Ruby code
Édition : Addison-Wesley - 272 pages, 1re édition, 28 septembre 2012
ISBN10 : 0321721330 - ISBN13 : 9780321721334
Chapter 2: Designing Classes with a Single Responsibility 15
Chapter 3: Managing Dependencies 35
Chapter 4: Creating Flexible Interfaces 59
Chapter 5: Reducing Costs with Duck Typing 85
Chapter 6: Acquiring Behavior Through Inheritance 105
Chapter 7: Sharing Role Behavior with Modules 141
Chapter 8: Combining Objects with Composition 163
Chapter 9: Designing Cost-Effective Tests 191
Ruby Best Practices
Increase Your Productivity - Write Better Code
Résumé de l'éditeur
Édition : O'Reilly - 336 pages, 1er juin 2009
ISBN10 : 0596523009 - ISBN13 : 9780596523008
- Driving Code Through Tests
- Designing Beautiful APIs
- Mastering the Dynamic Toolkit
- Text Processing and File Management
- Functional Programming Techniques
- When Things Go Wrong
- Reducing Cultural Barriers
- Skillful Project Maintenance
- Leveraging Ruby's Standard Library
- Ruby Worst Practices
- Conclusions
Écrit dans un anglais très facile et agréable à lire, d'une couverture à l'autre, je n'ai aucunement eu besoin de consulter un dictionnaire malgré mon anglais plutôt approximatif.
Les exemples choisis dans ce livre, bien qu'ils ne traitent quasiment que de techniques pointues du langage, restent courts, simples et faciles à appréhender. Une clarté que Gregory T. Brown doit certainement à son background d'enseignant et à ses projets open source Prawn et Ruport dont il tire la plupart des exemples du livre.
Bref, un livre idéal pour tout développeur Ruby intermédiaire ou confirmé, mais à éviter par les débutants, car il n'introduit pas les notions de base du langage.
Seul (tout petit) regret, la dernière section « Ruby Worst Practices » me semble incomplète et plusieurs mauvaises techniques notoires ne sont pas exposées, bref on reste sur sa faim.
Cerise sur le gâteau tout de même, cette édition du livre est préfacée par un Yukihiro Matsumoto (le créateur de Ruby) humble et pertinent comme on l'aime.
Head First Rails
Résumé de l'éditeur
By the time you're finished, you'll know more than just another web framework. You'll master database interactions, integration with Ajax and XML, rich content, and even dynamic graphing of your data... all in a fraction of the time it takes to build the same apps with Java, PHP, ASP.NET, or Perl. You'll even get comfortable and familiar with Ruby... but you'll do it in the context of web programming, not another boring version of "Hello, World!"
We think your time is too valuable to waste struggling with new concepts. Using the latest research in cognitive science and learning theory to craft a multi-sensory learning experience, Head First Rails uses a visually rich format designed for the way your brain works, not a text-heavy approach that puts you to sleep.
Édition : O'Reilly - 462 pages, 16 janvier 2009
ISBN10 : 0596515774 - ISBN13 : 9780596515775
- Getting Started
- Going Beyond Scaffolding
- Inserting, Updating and Deleting
- Using Database Finders
- Validating Your Data
- Making Connections
- Dynamic Ajax
- XML and Multiple Representations
- REST and Ajax
Comme tous les livres de la collection Head First, le livre se distingue principalement par sa manière d'approcher le sujet. Très concrètement, ce bouquin n'est pas un reference book, il n'est pas exhaustif sur Rails. Aussi, ça parle de Rails et non pas Ruby (Ruby est le language, Rails est un ensemble de scripts écrits en Ruby destinés à faire des applications web). Ce livre n'est pas vraiment destiné à un débutant complet en informatique non plus. Un peu d'expérience en application web permet d'ailleurs de constater sur quels points, comment, et dans quelle mesure Rails peut permettre de gagner en productivité et simplicité (c'est quand même LA promesse implicite autour de Rails...).
Concrètement, chaque chapitre se présente sous la forme d'un "mon client veut ça, comment faire avec Rails ?". Et on découvre au fur et à mesure des idées, des exercices pratiques à effectuer en parallèle avec une machine de développement sous Rails (indispensable). C'est bien fait, parce que ça suit une approche expérimentale du genre "essayons ça et voyons ce que ça donne ? Hmmm qu'en pensez-vous ?". On apprécie particulièrement l'approche visuelle punchy qui représente facilement la moitié du contenu (ça aide franchement à retenir et rend la lecture agréable). Les exercices Code Magnets sont aussi très utiles et bien faits : le code y est présenté sous la forme d'un texte à trous avec, à coté, les éléments à y mettre, ce qui permet de découvrir/apprendre/retenir à la fois Rails et Ruby intuitivement et très rapidement.
Comme points négatifs, on retiendra quand même :
* Parfois, on voudrait aller plus loin sur des sujets et on reste un peu sur sa faim. C'est voulu, ce n'est pas un reference book. Personnellement c'est le comportement de Rails en montée de charge par rapport à d'autres technologies (son principal défaut il parait) qui aurait du, je pense, être un minimum mentionné.
* De même, il n'est pas question spécifiquement de Ruby, donc le sujet est seulement survolé. Là encore c'est voulu. Mais du coup, par exemple, la différence entre une variable et un symbole (:ma_variable) aurait pu être mieux expliquée.
* J'ai été ralenti dans les exercices par plusieurs coquilles génantes. Ce n'est pas bloquant, mais agaçant. On sent que le livre aurait du avoir plus de relecteurs, heureusement les coquilles et leurs fixs sont indiqués sur ce site : http://oreilly.com/catalog/9780596515775/errata/. D'ailleurs, au passage, on peut de toute facon télécharger le code corrigé correspondant à chaque chapitre (http://www.headfirstlabs.com/books/hfrails/) et là il n'y a pas d'erreur.
Globalement c'est un cahier d'exercices de plus de 400 pages qui aborde les pricipaux sujets de Rails, progressivement, en incitant à la réflexion et à l'action. On sent que le livre a été écrit par des professionnels de la formation et du cognitif : on apprend rapidement et efficacement, c'est dynamique et fun. Du très bon pour qui ne connait pas du tout et veut aller vite.
The Well-Grounded Rubyist
Résumé de l'éditeur
The Well-Grounded Rubyist is a thoroughly revised and updated edition of the best-selling Ruby for Rails. In this new book, expert author David A. Black moves beyond Rails and presents a broader view of Ruby. It covers Ruby 1.9, and keeps the same sharp focus and clear writing that made Ruby for Rails stand out.
Starting with the basics, The Well-Grounded Rubyist explains Ruby objects and their interactions from the ground up. In the middle chapters, the book turns to an examination of Ruby's built-in, core classes, showing the reader how to manipulate strings, numbers, arrays, ranges, hashes, sets, and more. Regular expressions get attention, as do file and other I/O operations.
Along the way, the reader is introduced to numerous tools included in the standard Ruby distribution--tools like the task manager Rake and the interactive Ruby console-based interpreter Irb--that facilitate Ruby development and make it an integrated and pleasant experience.
The book encompasses advanced topics, like the design of Ruby's class and module system, and the use of Ruby threads, taking even the new Rubyist deep into the language and giving every reader the foundations necessary to use, explore, and enjoy this unusually popular and versatile language.
It's no wonder one reader commented: "The technical depth is just right to not distract beginners, yet detailed enough for more advanced readers."
Édition : Manning Publications - 520 pages, 1re édition, 1er décembre 2008
ISBN10 : 1933988657 - ISBN13 : 9781933988658
- Bootstrapping your Ruby literacy
- Objects, methods, and local variables
- Organizing objects with classes
- Modules and program organization
- The default object (self), scope, and visibility
- Control-flow techniques
- Built-in essentials
- Strings, symbols, and other scalar objects
- Collection and container objects
- Collections central: Enumerable and Enumerator
- Regular expressions and regexp-based string operations
- File, I/O, and system operations
- Object individuation
- Callable and runnable objects
- Callbacks, hooks, and runtime introspection
Se focalisant sur les mécanismes fondamentaux de Ruby, l'auteur n'aborde que partiellement sa librairie interne de classes et de modules, dans la deuxième partie de l'ouvrage. Après une longue description de l'indispensable (les classes pré-définies, les méthodes de conversion, les énumérateurs etc.) il consacre deux chapitres entiers aux possibilités de Ruby en matière de traitement des E/S et des expressions régulières, particulièrement développées.
Les trois derniers chapitres, qui composent la troisième et dernière partie de l'ouvrage, traitent des aspects dynamiques de Ruby. Ce qui pourrait passer pour la partie la plus complexe du livre se révèle en fait étonnamment facile à assimiler, et on se rend alors compte que les efforts de l'auteur pour nous amener progressivement à une connaissance suffisante de Ruby afin d'aborder sans douleur les sujets les plus difficiles, a porté ses fruits.
Cet ouvrage se destine plus particulièrement à ceux qui découvrent Ruby, mais sera également profitable à des développeurs Ruby plus avancés. Ainsi, le talent de l'auteur m'a permis de comprendre totalement certains mécanismes que j'employais sans les maîtriser, et que je n'avais jamais vu exposés nul part aussi clairement. Les conseils avisés de l'auteur pour faire bon usage de la richesse exceptionnelle de Ruby, prodigués tout au long de l'ouvrage, profiteront également à tous.
Aussi bon soit-il, cet ouvrage présente cependant quelques légers défauts ; l'auteur voulant parfois trop bien faire, certaines explications sont un peu longues et redondantes, et son choix délibéré de ne pas traiter des différences importantes intervenues entre les version 1.8 et 1.9 de Ruby pourra contrarier certains lecteurs. Mais ces défauts sont vraiment mineurs par rapport aux grandes qualités de ce livre que je recommande totalement.
English version :
“The Well-grounded Rubyist” belongs to these still too rare books which deal exclusively and in-depth with Ruby, by leaving Rails, its killer app, on side. David A. Black proposes to give us a strong foundation for the comprehension of the Ruby's mechanisms. On this purpose, he adopts a didactic and original step, by presenting the concepts according to a progressive and well balanced difficulty, not following the “traditional” progression found in other books treating of computer programming languages. Thus, for example, the method lookup strategy is described in chapter 4, even before looking in detail at the test and loop instructions in chapter 6. This order, which can seem curious at first sight, appears finally perfectly logical and natural. This progressive and cumulative approach will however impose to the reader a linear reading of the book to withdraw all the benefit from it.
Focusing himself on the fundamental mechanisms of Ruby, the author only partially cover its built-in classes and modules library, in the second part of the book. After a long description of essential (predefined classes, conversion methods, enumerators etc) he devotes two whole chapters to the extensive Ruby's possibilities about I/O operations and regular expressions.
The three final chapters, which compose the third and last part of the book, treat dynamic aspects of Ruby. What would appear to be the most complex topic of the book is in fact surprisingly easy to assimilate, and one realizes that the efforts of the author to gradually lead us to a sufficient knowledge of Ruby in order to tackle without pain the most difficult subjects, bore its fruits.
This book is intended more particularly for those who discover Ruby, but will be also advantageous to more advanced Ruby developers. Thus, the talent of the author enabled me to completely understand certain of mechanisms I used without mastering them, and which I never had seen exposed anywhere so clearly. The wise advice of the author, lavished throughout the book, to make good use of the exceptional richness of Ruby will also benefit to all readers.
As good as it is, this book presents however some small defects: the author always wanting to make sure you hit the point, some explanations are slightly verbose, and its deliberate choice to not speak about the important differences occurred between Ruby 1.8 and 1.9 may annoy some readers. But these few defects are really minors in regard of the great qualities of this book, and I completely recommend it.
Ruby
Les fondamentaux du langage - Mise en oeuvre avec Ruby on Rails
Résumé de l'éditeur
Édition : ENI - 404 pages, 1re édition, 8 décembre 2008
ISBN10 : 2746046601 - ISBN13 : 9782746046603
- Installation de ruby
- Premiers programmes
- Structures de données
- Programmation objet
- La librairie standard
- Conception d'interfaces graphiques
- Programmation web en cgi
- Ruby on rails
- Corrections des exercices
Je conseille donc ce livre aux débutants en Ruby qui ne se sentiront pas perdus tout au long de leur lecture.
Ruby in Practice
Résumé de l'éditeur
Ruby in Practice increases your productivity by showing you specific Ruby techniques you can use in your projects. The book offers detailed strategies for using Ruby in a large-scale environment. You'll see concrete examples of integration, messaging, web development, and databases, all presented in a clear Problem/Solution format. This book won't help you push your deadline back, but it will help you get the job done in less time.
In this book, you'll learn valuable techniques like how to:
- Expose an existing Ruby library to a Rails application in a natural way
- Master structured formats like XML, RSS, Atom, XHTML, YAML, and CSV
- Securely store and authenticate passwords
- Index and search via query any set of documents
- Generate scheduled reports in Ruport
Above all, Ruby in Practice is a practical book for developers who want an in depth understanding of the Ruby language and its toolset. The book is divided into three major parts.
The first part concentrates on issues that developers face both from within their organizations and from their peers. The authors weigh the costs and benefits of using Ruby in enterprise development projects, the over-riding theme being that every developer should always aim to use the right tool for any particular job. The authors then examine the pros and cons of developing with Ruby, and where appropriate, compare Ruby to other languages, both conceptually and in code. The authors also focus on explaining the Ruby way of developing software, especially large-scale software, and using Ruby as a tool for integration.
The second part discusses techniques for communication and integration of systems. The authors describe how libraries and techniques are used to facilitate messaging, web development and communication automation. They also focus on how the strategies in the first section can be used with these libraries to make development more flexible and efficient.
The last part shows how to manage data and integrate with existing data using Ruby. The authors describe techniques for using existing Ruby libraries that either replace popular Java libraries or can interface with existing data in a different way. They go on to show you how strategies covered in the first section can be used to enable Ruby to interact with existing assets or to build new data systems.
Édition : Manning - 299 pages, 1er février 2009
ISBN10 : 1933988479 - ISBN13 : 9781933988474
- Ruby under microscope
- Testing Ruby
- Integration with Ruby
- Rails techniques
- Web services
- Automating communication
- Asynchronous messaging
- Deployment and management
- Databases
- Structured documents
- Authentication and identity brokering
- Indexing and searching
- Document processing and reporting
- A. Installing Ruby
- B. JRuby
- C. Deploying web apps
Then you will see a quick, but comprehensive enough, presentation of various libraries to solve problems in a more concise and/or more efficient way. The reader will find many examples of solutions for n-tier (Web Services, REST, Websphere MQ), for deployment in the workplace (authentification directories, RDBMS, search engines, emailing). I particularly appreciated the generation of PDF documents. These presentations are sometimes also a good reminder of good practice in professional development, as aspects of tests (Test:: Unit, RCov) and specifications (RSpec).
Finally, you will see other important elements in appendix :
1) different installation procedures for Ruby and Gem on the platforms Linux (Redhat or Debian), Windows and Mac OS X.
2) a review of the integration of Ruby in the Java platform with JRuby and deployments WAR for J2EE.
3) how to start Rails applications on different web servers.
The only criticism I can make is the lack of a real common thread throughout the book, which might give the impression of a listing of useful libraries.
Ensuite, vous verrez une présentation rapide, mais assez complète, de différentes bibliothèques pour résoudre des problèmes courants de manière plus concise et/ou plus performante. Ainsi, vous y trouverez nombre d'exemples pour les solutions n-tiers (WebServices, REST, Websphere MQ), pour des déploiements en milieu professionnel (annuaires, SGBD, moteurs de recherche, e-mailing). J'ai tout particulièrement apprécié l'importance accordé à la génération de documents PDF. Ces présentations constituent parfois un excellent rappel des bonnes pratiques en matière de développement professionnel, comme les aspects de tests (Test::Unit, RCov) et de spécifications précises (RSpec).
Enfin, vous verrez en annexe d'autres éléments importants :
- différentes procédures d'installation de Ruby et de Gem sous les plate-formes Linux (Redhat ou Debian), Windows et MacOS X.
- une présentation de l'intégration de Ruby dans la plate-forme Java avec JRuby et les déploiements de WAR pour J2EE.
- une présentation de différentes méthodes de mise en production d'applications Rails sous différents serveurs Web.
Le seul reproche que je ferai est l'absence de réel fil conducteur tout au long de l'ouvrage, qui pourraient donner l'impression d'un listing de bibliothèques utiles.
Advanced Rails
Résumé de l'éditeur
Chapters in this book help you understand not only the tricks and techniques used within the Rails framework itself, but also how make use of ideas borrowed from other programming paradigms.
Édition : O'Reilly - 357 pages, 1re édition, 11 janvier 2008
ISBN10 : 0596510322 - ISBN13 : 9780596510329
- Foundational Techniques
- ActiveSupport and RailTies
- Rails Plugins
- Database
- Security
- Performance
- REST, Resources, and Web Services
- i18n and L10n
- Incorporating and Extending Rails
- Large Projects
Ensuite, bien que très intéressant, le premier chapitre fait mal, très mal...
Commencer par la méta-programmation n'est pas forcément des plus agréable, mais certaines notions très importantes sont abordées ici, et rien que pour ça, je ne regrette pas l'achat de ce livre.
Le second chapitre reprends diverses notions, mais peut être passé très rapidement.
J'ai trouvé le reste du livre très agréable à lire, et j'y ai appris énormément de choses (je pense qu'une seconde lecture ne me ferai pas de mal tout de même, c'est dense...).
Vous apprendrez ensuite ce qu'est un plugin, comment l'installer, et surtout comment en développer un, puis le tester. L'examen de plugins existants est très agréable, bien expliqué, à se demander des fois pourquoi ce n'est pas nous qui avons développé ces plugins.
Après une introduction aux divers SGBD supportés par Rails, vous verrez comment (entre autres) gérer des clés composites, vous connecter simultanément à plusieures bases, quels sont les principes de la haute disponibilité et du load balancing, ...
Passons maintenant aux deux chapitres qui m'ont le plus emballés : la sécurité et les performances.
Bien qu'énnonçant parfois des faits censés être acquis pour tout développeur ayant un peu d'expérience, ils n'en demeurent pas moins extrêmement bien construits et instructifs, avec de nombreux exemples à la clé.
Les chapitres suivants sont égalements très intéressants, et pas seulement d'un point de vue purement technique. Ils exposent également divers concepts (travail en équipe, historique de l'encodage de texte, ...) de différents points de vue que l'on ne maitrise pas forcément.
Petit bonus spécial pour les "Further Reading" à la fin de chaque chapitres, qui permettent de se documenter plus avant si le sujet nous intéresse.
Ruby on Rails
Vite et efficace
Résumé de l'éditeur
Cet ouvrage explique les fondamentaux du développement d'applications Web avec Ruby on Rails. Au fil des chapitres, les éléments théoriques sont illustrés par la construction d'un projet du début à la fin. De l'accès à des bases de données à l'utilisation d'Ajax, les développeurs y trouveront tout ce dont ils ont besoin pour programmer facilement des applications Web de dernière génération.
Avec Ruby on Rails - Vite et efficace découvrez comment :
- Utiliser Active Record pour vos bases de données.
- Exploiter les migrations pour modifier vos bases de données sans avoir besoin de SQL.
- Modéliser les relations entre les tables dans vos bases de données.
- Développer des vues HTML avec des templates.
- Intégrer des fonctions AJAX dans vos applications.
- Réaliser des tests unitaires, fonctionnels et d'intégration.
Édition : Dunod - 190 pages, 1re édition, 7 mars 2007
ISBN10 : 2100510118 - ISBN13 : 9782100510115
- Introduction à Rails
- Notions de base d'Active Record
- Relations Active Record
- Echafaudage (scaffolding)
- Etendre les vues
- AJAX
- Tester l'application
Attention tout de même, ce livre ne s'adresse pas à un débutant complet qui souhaite se lancer dans le développement web, à plus forte raison encore dans le développement Ruby on Rails.
En effet, l'auteur considère beaucoup de notions comme acquises : architecture client / server, Ruby, notions d'orienté objet, ...
Pour le reste, ce livre est très agréable à avoir sous le coude lorsque l'on débute : en moins de vingt pages, vous aurez déja une bonne idée du fonctionnement des contrôlleurs et des vues, puis nous nous attarderons plus longuement sur le gros plus de Rails, ActiveRecord.
Viendra ensuite le tour du scaffold, qui bien que souvent inutile "en vrai" n'en colle pas moins plein les mirettes lorsque l'on débute.
Le chapitre suivant complétera vos connaissances sur les vues, avant de jeter un bref regard du coté d'AJAX.
Une mention toute particulière au chapitre consacré aux tests de votre application, qui clôt votre initiation.
On appréciera également les très nombreuses annexes qui font office de très bonnes "cheat sheet" en cas de doute ou de mémoire de poisson rouge.
En bref, outre son coté "peu" abordable, un très bon livre pour obtenir une vue d'ensemble du framework Rails.
Ruby et Rails
Le guide Ruby des développeurs Rails
Résumé de l'éditeur
Cet ouvrage est conçu pour aider les développeurs Rails à maîtriser Ruby. Chaque chapitre vous entraîne plus loin dans la compréhension de Ruby et met en évidence ses liens avec Rails. Vous apprendrez à travailler avec les objets et les classes ainsi qu'à exploiter la syntaxe élégante et expressive de Ruby pour développer des applications Rails performantes. Vous améliorerez vos qualités de développeur Rails grâce à une connaissance approfondie de Rails et apprendrez à mieux en tirer profit.
Les développeurs Ruby débutants trouveront dans ce livre une introduction simple au langage Ruby orienté Rails contenant des techniques de programmation dynamiques, une présentation des objets, des classes et des structures de données Ruby, ainsi que de nombreux exemples clairs de code Ruby et Rails à l'œuvre.
Édition : Campus Press - 540 pages, 1re édition, 1er décembre 2006
ISBN10 : 274402127X - ISBN13 : 9782744021275
- 1. Fonctionnement de Ruby
- 2. Fonctionnement de Rails
- 3. Enrichissement du développement Rails avec Ruby
Partie 2 : Blocs de construction Ruby
- 4. Objets et variables
- 5. Organisation des objets en classes
- 6. Modules et organisation des programmes
- 7. Objet par défaut (self) et portée
- 8. Techniques de contrôle des flots
Partie 3 : Classes et modules prédéfinis
- 9. Principaux éléments prédéfinis
- 10. Objets scalaires
- 11. Collections, conteneurs et énumérations
- 12. Expressions régulières et opérations de chaînes avec regexp
- 13. Dynamique de Ruby
Partie 4 : Interaction Ruby/Rails
- 14. (Re)modélisation de l'application R4RMusic
- 15. Optimisation des modèles ActiveRecord par voie de programmation
- 16. Optimisation des contrôleurs et des vues
- 17. Techniques d'exploration du code source Rails
Annexe
- Installation et ressources de Ruby et Rails
Un programmeur débutant dans ce langage ne doit pas avoir de crainte pour appréhender ce livre. Malgré tout, je ne conseille pas ce livre pour débuter l'apprentissage de la programmation, il y a des langages plus simples à maitriser auparavant.
En abordant le framework Rails, on entre vraiment au coeur du sujet. Il suffit dès lors de se laisser porter d'exemples en exemples, de manipulations en manipulations pour progresser à son rythme. Ce n'est pas un ouvrage qu'on lit d'un bout à l'autre d'une seule traite. Il faut appliquer progressivement les acquis à des situations concrètes ou à des idées à développer et toujours garder le livre sous la main comme tout bon dictionnaire.
Un seul petit reproche : les explications trop lapidaires pour l'installation de Ruby puis de Rails notamment dans les différentes manières de procéder et dans les "mauvaises" interactions existant avec d'autres environnements déjà installés sur votre ordinateur.
Conclusion : Un livre qui vous enseignera les bons réflexes de la programmation RoR tout en vous guidant vers les aspects les plus ardus du développement Web. Pour vous guider et vous aider dans votre apprentissage, surtout n'oubliez pas le forum, la FAQ et les tutoriels Ruby et Rails.
Ruby on Rails
2ème édition
Résumé de l'éditeur
En l'espace de 18 mois, Rails a créé un véritable bouleversement dans le monde du développement Web, ralliant de nombreux développeurs PHP, Java ou. NET séduits par la cohérence et les gains de productivité offerts par ce Framework : plus de laborieux mapping objet-relationnel ni de fichiers de configurations multiples à gérer, un code concis et facile à faire évoluer, une intégration native d'Ajax qui permet de migrer sans douleur vers des interfaces Web 2.0 et, surtout, des projets qui se terminent dans les temps et vont au-delà des attentes des clients.
Une deuxième édition entièrement refondue du livre fondateur
Coécrit par David Heinemeier Hansson, le créateur de Rails, et Dave Thomas, le plus influent des experts de la communauté Ruby, cet ouvrage adopte une approche mêlant pratique et approfondissement technique, aussi efficace pour les néophytes que pour les développeurs ayant déjà une expérience de Rails.
La première partie propose un apprentissage par l'exemple, à travers la réalisation d'une application de commerce électronique complète. La deuxième partie de l'ouvrage décrit en profondeur toutes les composantes du Framework, la dernière partie présentant les meilleures pratiques en matière de sécurité et de déploiement.
Cette nouvelle édition s'est enrichie d'un an de retours d'expérience sur des projets de grande ampleur et détaille les nombreuses nouveautés apportées par les versions 1.1 et 1.2 de Rails : les migrations, les templates RJS, l'intégration de Prototype, la gestion innovante des applications REST, les nouveaux outils de déploiement (Capistrano), sans parler des multiples améliorations apportées aux modules ActiveRecord, ActiveSupport et ActionPack.
Édition : Eyrolles - 797 pages, 2e édition, 1er mai 2007
ISBN10 : 2212120796 - ISBN13 : 9782212120790
Partie 1 - Premiers pas avec Rails
- Architecture des applications Rails
- Installer Rails
- Plaisir immédiat
Partie 2 - Construire une application Rails
- Présentation de l'étude de cas
- Tâche A : maintenance des produits
- Tâche B : affichage du catalogue
- Tâche C : création du panier
- Tâche D : ajouter une touche d'Ajax
- Tâche E : gestion des commandes
- Tâche F : questions d'administration
- Tâche G : la touche finale
- Tâche T : test de l'application
Partie 3 - Le Framework Rails
- Rails en profondeur
- Active Support
- Migrations
- Les bases de Active Record
- Active Record : relations entre les tables
- Active Record : cycle de vie des objets
- Action Controller : routage et URL
- Action Controller et Rails
- Action View
- Le Web 2.0 avec Ajax
- Action Mailer
Partie 4 - Sécuriser et déployer vos applications Rails
- Sécuriser vos applications Rails
- Déploiement et mise en production
Partie 5 - Annexes
Mon choix s'est avéré judicieux ! J'ai dévoré d'une traite cet ouvrage en me régalant !
Pourquoi avoir choisi ce livre ? Plutot autodidacte, j'aime bien apprendre par la pratique et une partie entière de ce livre était une étude de cas qui semblait détaillée et que l'auteur nous aidait à mener a bien. Et en effet cette partie est, à mon goût, parfaite ! Une découverte progressive des concepts et du langage tout en répondant à une commande qu'un client aurait pu nous faire. L'auteur se permet même de jouer, en complicité avec le client, avec le Framework pour en présenter la flexibilité. Après chaque étape de progression dans la construction de ce projet, les auteurs proposent quelques minis exercices pour aller plus loin de ses propres ailes avec cependant, au travers de leur site anglais, des discussions sur les solutions à mettre en place. Cette étude est vraiment complète, des scénarios d'utilisation aux tests unitaires, digne d'un projet professionel.
Avant l'étude de cas, les auteurs ont pris la précaution, dans une première partie, de nous présenter ce qu'est une application Rails, comment installer l'environnement rails et un équivalent du fameux "Hello Word".
Après l'étude de cas, et malgré une sensation de parfaite maitrise de Rails, nous découvrons de manière minutieuse et pédagogique les entrailles du Framework.
La dernière partie, preuve de maturité du Framework et des retours d'expérience des auteurs, est consacrée à des astuces et bonnes manière de sécurité à appliquer dans les applications développée ainsi qu'aux techniques de déploiement, et de supervision de votre site web.
A noter que le langage Ruby n'est présenté qu'au travers d'une annexe assez "légère". Si vous découvrez Ruby, un support autre sera à prévoir.
Le plus difficile après avoir dévoré ce livre est de ne pas mettre en pratique immédiatement toutes les astuces et facilités qu'offre le Framework Rails !
Je ne saurais que vous conseiller ce livre si vous désirez découvrir Ruby on Rails !
Pratique de Ruby on Rails
Résumé de l'éditeur
Pour tirer le meilleur parti de Rails, il est indispensable de se familiariser avec Ruby, de connaître les règles qui président à la conception d'une base de données relationnelle, et de faire sien le fameux modèle MVC (Modèles, Vues, Contrôleurs). Éric Sarrion nous explique tout cela avec sa minutie habituelle, dans un ouvrage très progressif.
Pratique de Ruby on Rails se compose de 5 parties :
- La partie Introduction montre en 15 pages comment installer Rails et créer une petite application. Elle plonge ensuite dans les bases de la programmation Ruby, un langage qui s'avère particulièrement agréable à apprendre.
- La partie Contrôleurs montre comment écrire les actions destinées à être appelées par le serveur http. C'est là que le développeur décide de la réaction de l'application en fonction de l'url demandée.
- Dans la partie Modèles, vous apprendrez non seulement à créer et modifier les objets qui représentent votre base de données, mais aussi à concevoir une base de données relationnelle dans les règles de l'art.
- La partie Vues se concentre sur le rendu des valeurs calculées par les contrôleurs et les objets du modèle. C'est là que vous apprendrez à paginer votre affichage HTML, intégrer CSS et JavaScript, et bien sûr utiliser Ajax.
- La dernière partie aborde des fonctions indispensables comme l'envoi de mail ou la publication de services Web, sans lesquels une application web moderne ne serait pas complète.
Voici donc un manuel d'apprentissage progressif et très complet, destiné à tous ceux, du programmeur occasionnel au développeur professionnel, qui souhaitent se mettre rapidement à Rails sans en maîtriser nécessairement tous les pré-requis.
Édition : O'Reilly - 580 pages, 1re édition, 1er octobre 2006
ISBN10 : 2841773884 - ISBN13 : 9782841773886
- Introduction
- Les contrôleurs
- Les modèles
- Les vues
- Compléments
Après un léger tutoriel dédié à l'installation de Ruby, de Rails, vous réaliserez une application de type CRUD (Create, Read, Update, Delete) générée par Rails. Puis, le chapitre 4 condense les spécifications du langage et vous arme pour vos premiers programmes (SciTE Editor, les commentaires, variables et constantes, tests conditionnels et boucles, fonctions, classes, modules, collections, exceptions, etc.). Les parties II, III, IV décrivent ensuite le modèle Rails MVC: les contrôleurs, les modèles, les vues, le tout basé sur des exemples concrets. L'ensemble est expliqué simplement et de manière pragmatique. AJAX est également abordé, mais aussi l'envoi de mail SMTP, ou la publication et consommation de services Web, le paramétrage du serveur HTTP WEBrick (changement de port, les exceptions en production, la journalisation).
J'ai apprécié la vision adaptée pour une bonne compréhension des débutants, même si certaines explications sont un peu approximatives à mon gout (en POO notamment). Si vous souhaitez commencer le développement MVC avec Ruby ET Rails, ce livre accompagnera vos premiers pas !
L'auteur Eric Sarrion nous emmène dans les méandres de « Ror » avec une facilité déconcertante, ce livre est composé de cinq parties :
- introduction
- les contrôleurs
- les modèles
- les vues
- compléments
Introduction
Dans cette première partie, Eric Sarrion nous fait un rappel de l'installation de "Ruby on Rails" sur différentes architectures.
Il nous propose également une première application "Rails", de façon à nous mettre directement dans le bain. Cela est fait de façon claire et concise en abordant quelques points essentiels comme le "Scaffold" et "WEBrick".
Les soixante-dix pages suivantes sont consacrées au langage "Ruby" lui même. On passe en revue l'essentiel de cette programmation de la création de variable à la gestion des exceptions, de la table de hachage (très bien expliquée et importante pour comprendre les ":params"), aux boucles et itérateurs. La partie sur les modules pourrait être, je pense , plus claire.
Arrivé à la fin de ce chapitre vous êtes fichu, il faut aller jusqu'au bout
Les contrôleurs
Cette partie du livre pose les bases du succès de "RoR".
On nous explique les relations qu'il y a entre les "Url" et les définitions dans les classes contrôleurs.
Le premier chapitre de cette partie du livre est consacrée à la définition des "Url" définies dans le fichier de routage(config/routes.rb).
Même si au départ cela ne semble pas très clair, l'auteur n'a de cesse durant tout l'ouvrage de nous faire référence (en indiquant chaque fois la page) à ses propos, ce qui donne un réel fil conducteur durant toute la lecture.
Le nombre de choses qu'il passe en revue est assez conséquent, en vrac nous passons de la méthode "render()", aux filtres, en ayant vu au passage les sessions et les flash.
Nous pourrions regretter que l'auteur, E.Sarrion, se contente de ne rester que dans un seul contrôleur et de ne faire de l'interaction que dans cet unique contrôleur (même si on comprend bien la logique), cela m'a posé problème notamment lors des essais avec les sessions lorsque l'exemple de l'auteur ne fonctionne correctement que si l'on reste dans le même contrôleur.
Les modèles
Le chapitre sur les modèles est impressionnant, il représente à lui seul à peu près un tiers du livre.
On passe en revue tout ce qui concerne l'accès aux bases de données.
Les systèmes de connection (par défaut, ou dans un modèle), la création des structures de tables, la recherche dans les tables, ainsi que les modifications etc.
On a même droit à un petit cours sur les entités/associations et la façon de modéliser nos tables.
Tout est très bien expliqué, c'est clair, c'est concis, c'est agréable à lire, les méthodes "Rails" sont vues dans leur ensemble, ainsi que les possibilités de code "SQL" avec la méthode "find_by_sql()" par exemple.
Nous savons comment gérer les contraintes de cardinalité grâce à Rails, nous apprenons les mécanismes de validation des données.
Le cycle de vie d'un objet et les transactions sont également abordés dans cette partie du livre.
Les vues
Dans cette rubrique on nous explique la coopération entre "contrôleurs et vues" et entre "modèles et vues".
Dans les différents chapitres nous apprenons comment visualiser nos actions, comment partager notre codes dans l'architecture "MVC".
L'auteur, dans sa pratique pédagogique ne se contente pas de nous donner des recettes miracles, mais quand il propose un exemple, il le mettra toujours sous forme "HTML" et sous forme "Rails", en nous expliquant bien les avantages de l'un et de l'autre.
De même si vous devez créer une table, le code Sql et le code Rails seront chaque fois exposés de sorte que vous puissiez choisir une méthode ou l'autre.
Comme je vous l'ai signalé , l'auteur se contente de rester dans un programme minimaliste, toutefois dans cette partie du livre, il développe deux petites applications (mise à jour d'une base client et la gestion d'une agence immobilière) qui vont nous permettre d'apprécier toute l'étendue et la puissance de "Ror".
Un chapitre est consacré au "CSS", mais ce qui est plus intéressant encore, un chapitre qui est dédié au partage de code entre les vues, les contrôleurs et les modèles, grâces aux fichiers assistants (helper).
Il y a également un chapitre intéressant et bien fourni sur "Ajax" et les composants de script.aculo.us.
Compléments
Dans cette partie du livre l'auteur nous parle de la gestion de mails, et des services Web.
Il y également une brève introduction au serveur web "WEBrick", ainsi qu'à l'IDE RadRails (E.Sarrion préfère Scite).
Nous finirons cet ouvrage par quelques conseils sur la méthodologie de conception d'un projet Rails.
Conclusion
Ma conclusion est que ce livre est excellent, pour entrer dans le monde "Ror". Notez que c'est le premier livre que je lis sur ce langage!
Néanmoins ayant un projet à développer, j'ai bien l'ensemble des bases pour débuter et approfondir maintenant les connaissances acquises tout au long de cette lecture.
Sans hésiter je recommande ce livre pour celui ou celle qui veut en savoir plus sur "Ruby on Rails".
Ruby par l'exemple
Résumé de l'éditeur
Ruby par l'exemple se propose de vous faire entrer dans l'univers de Ruby sans repasser par les bases du langage. Il s'adresse aux développeurs issus d'horizons aussi variés que celui des scripts en Perl ou Python, de la programmation objet en Java ou du Web avec PHP. Grâce à sa syntaxe à la fois simple et intuitive, Ruby permet de réaliser très rapidement des opérations qui seraient soit longues à mettre en place sous un autre langage, soit complexes à coder. Les 432 recettes de cet ouvrage sont là pour vous faire accéder directement à la solution adaptée au problème que vous avez à résoudre.
Édition : O'Reilly - 867 pages, 1re édition, 7 septembre 2007
ISBN10 : 2841773477 - ISBN13 : 9782841773473
- Chaînes
- Nombres
- Dates et temps
- Les tableaux
- Les hachages
- Fichiers et répertoires
- Blocs et itérateurs
- Objets et classes
- Modules et espace de noms
- Introspection et méta-programmation
- XML et HTML
- Graphiques et autres formats de fichiers
- Bases de données et persistance
- Services internet
- Développement Web : Ruby on Rails
- Services web et programmation distribuée
- Tester, déboguer, optimiser et documenter
- Distribuer des logiciels sous forme de paquetages
- Automatiser les tâches avec Rake
- Multitâche et multithreading
- L'interface utilisateur
- Etendre Ruby avec d'autres langages
- L'administration système
J'ai véritablement adoré cet ouvrage. Il s'agit en fait d'une FAQ géante qui ne couvre pas moins de 337 problématiques différentes.
Pour chaque problématique, vous aurez ainsi un morceau de code solutionnant le problème, mais pas seulement et c'est bien là que réside l'atout principal du livre : à chaque solution est associée une section "Discussion", qui détaille la solution, ouvre de nouvelles perspectives, incite à se poser des questions, etc.
Notons également la présence lorsque c'est necessaire d'une section "Pour aller plus loin", qui fait référence à d'autres problèmes proches traités dans le livre.
En bref, et au risque de me répéter, un "must have" absolu !
Apprendre par la pratique, c'est ce que vous propose ce livre.
On dit aussi qu'un petit dessin vaut mieux qu'un long discours. Le livre applique à la lettre cette philosophie.
Le livre regorge d'exemples, souvent simples, courts et efficaces. De plus, la quantité des exemples couvre un large éventail, et donne plein de bonnes idées. Vous êtes sûrs de trouver des choses qui vous serviront un jour.
Si vous êtes débutant, vous serez épatés, en le feuilletant, de toutes les possibilités de ce langage.
Au niveau ergonomie, l'organisation du livre est assez bonne, on trouve facilement ce qu'on cherche; rien n'à envier de notre moteur de recherche préféré...
Et avoir le livre sous la main permet de noter ses idées et commentaires au fur et à mesure.
Attention tout de même, ici seul Ruby est traité.
Si vous voulez faire du Ruby on Rails, ce livre ne correspondra pas à votre attente dans un premier temps. Il vous servira par la suite pour faire des scripts en Ruby sur les serveurs.
En résumé, ce livre est extrêmement bienvenu, lorsque vous avez besoin de voir un bon exemple qui marche, pour vous aider.
Ruby in a nutshell
Manuel de référence
Résumé de l'éditeur
Ruby in a Nutshell présente toutes les fonctionnalités intégrées du langage, ainsi que toutes les bibliothèques de la distribution standard. Les programmeurs garderont cet ouvrage ouvert sur leur bureau pendant qu'ils travaillent car il traite de tout ce qui concerne Ruby, des options de la ligne de commande, aux classes et modules les plus fréquemment utilisés, en passant par la syntaxe du langage, les variables et les fonctions prédéfinies. Ce livre présente la dernière version stable de Ruby (1.6) mais s'applique également à la version de développement 1.7 et à la prochaine version stable prévue (1.8).
Comme tous les livres de la série in a Nutshell, Ruby in a Nutshell est destiné à des programmeurs déjà initiés au maniement du langage, qui ont besoin d'un guide de référence exhaustif et facile à consulter.
Édition : O'Reilly - 242 pages, 1re édition, 14 mai 2002
ISBN10 : 2841772101 - ISBN13 : 9782841772100
- L'élégance de Ruby
Ruby en action
Bases du langage
- Options de la ligne de commande
Variables d'environnement
Conventions lexicales
Littéraux
Variables
Opérateurs
Méthodes
Structures de contrôle
Programmation orientée objet
Sécurité
Guide de référence de la bibliothèque intégrée
- Variables prédéfinies
Constantes globales prédéfinies
Fonctions intégrées
Bibliothèque intégrée
Guide de référence de la bibliothèque standard
- Bibliothèque standard
Outils de Ruby
- Outils standard
Autres outils
Archive des applications Ruby
Evolution de Ruby
- Résumé des changements
Différences entre les versions 1.6.5 et 1.7.1
Futur de Ruby
Participer à Ruby
En revanche, il s'avère être un excellent ouvrage de référence, le livre à avoir à coté de soi quand on développe, pour s'y référer dès qu'on a un trou.
Il couvre l'ensemble de ruby, des options de la ligne de commande, en passant par les méthodes de définition des classes, les boucles, à la bibliothèque stardard et à l'utilisation du debugger.
Par contre, inutile de s'attendre à des tonnes d'exemples, la syntaxe et les différents paramètres sont exposés, à vous d'adapter à vos besoins.
Pour résumer donc, un excellent livre pour tout programmeur ruby ayant un peu de bouteille, les débutants lui préféreront sans doutes divers tutoriaux trouvés sur internet.
Ruby on Rails
Un guide pragmatique
Résumé de l'éditeur
Édition : Eyrolles - 590 pages, 1re édition, 19 janvier 2006
ISBN10 : 2212117469 - ISBN13 : 9782212117462
- Introduction
Premiers pas avec Rails
- Architecture des applications Rails
- Installer Rails
- Plaisir immédiat
Construire une application Rails
- Présentation de l'étude de cas
- Tâche A : maintenance des produits
- Tâche B : affichage du catalogue
- Tâche C : création du panier
- Tâche D : gestion des commandes
- Tâche E : gestion des expéditions
- Tâche F : questions d'administration
- Tâche T : test de l'application
Le framework Rails
- Rails en profondeur
- Les bases de Active Record
- Active Record en profondeur
- Action Controller et Rails
- Action View
- Le Web 2.0 avec AJAX
- Action Mailer
- Les services Web dans Rails
- Sécuriser vos applications Rails
- Déploiement et montée en charge
Annexes
- Introduction à Ruby
- Paramètres de configuration
- Code source
- Ressources
Si votre seul objectif est d'apprendre Ruby, ce livre ne vous est pas destiné. Par contre, si vous êtes plus intressé par RoR, ce livre est fait pour vous.
- Introduction à RoR
- Construction d'une application
- Framework RoR en profondeur
- Introduction à Ruby
Voilà un livre qui a tout compris. Après une petite introduction à RoR, les auteurs nous plongent dans le vif du sujet à travers la construction d'une application e-commerce. En parallèle de la création de cette application, nous poursuivons notre apprentissage de RoR. Chaque nouveau point du Framework abordé est immédiatement mis en pratique. Le site e-commerce est réalisé en un temps record. Cependant, ce mode d'apprentissage est parfois assez pénible. On peut parfois avoir la désagréable impression de taper des morceaux de code sans comprendre.
La 3ème partie est consacrée au coeur de RoR. Il s'agit de comprendre enfin la signification des lignes de code après les avoir utilisées sans vraiment savoir le pourquoi du comment. Cette partie est une vraie documentation de RoR. Les points les plus importants sont abordés même si la sortie de RoR 1.6 rend nécessaire une mise à jour d'une partie de cette documentation. Bien heureusement, cela n'a aucune incidence sur l'apprentissage en lui-même.
Le livre traite également de problèmes qui ne sont pas obligatoirement liés à RoR :
- Conseils sur la sécurité des applications web.
- Conseils sur comment déployer des applications web, accompagnés d'exemples sur différents serveurs web. (Point Noir : il ne parle pas de Capistrano - "The" outil pour le déploiement)
- Expériences de vraies applications professionnelles
Dans la dernière partie, une brève introduction à Ruby qui vous apprendra à mon goût peu de chose.
Donc, pour apprendre réellement Ruby, il vous faudra un autre livre.
En conclusion, un livre indispensable à tout ceux qui s'intéressent à RoR.
Premier constat : apprenez Ruby avant, la (très) courte introduction à Ruby en annexe du livre ne suffira pas.
Une fois ce petit désagrément, et passée une petite introduction sur le fonctionnement de RoR, nous sommes tout de suite mis dans l'ambiance, avec la construction étape par étape d'une application de commerce électronique complète.
Autant vous prévenir tout de suite, venant du PHP, la syntaxe a eu beaucoup de mal à rentrer, et, au début, on passe son temps à revenir en arrière pour se remémorer les fonctions des différents éléments de la syntaxe.
Nous sommes tenus par la main pour construire brique par brique notre application, et on se rend compte très tôt de la puissance phénoménale de Rails : la création d'une simple table dans notre base de données nous génère automatiquement une interface d'administration, une interface de consultation, etc.
Petit regret à ce stade, nous faisons plein de choses merveilleuses, mais sans réellement en comprendre le fonctionnement (on 'sent' seulement quelques petites choses), qui ne sera expliqué que dans la partie suivante.
Je n'avais jamais codé en suivant le Modèle Vue Controlleur (MVC), mais c'est un régal. Rails étant construit autour de ce modèle, tout est prévu pour nous faciliter la tâche.
Il est affolant de constater la vitesse de développement. En se basant sur les éléments générés automatiquement, une simple ligne de code rajoutée dans un contrôleur personnalisera / modifiera le comportement d'un élément. On a tôt fait de se retrouver avec une application parfaitement fonctionnelle, montrable à un client, là où il aurait fallu des milliers de lignes de code en PHP.
Autre 'point noir' (relatif tout de même), nous n'apprenons au cours de ce livre qu'à construire une seule 'grosse' application. Sans doute que des exemples plus variés et plus légers auraient facilité la compréhension des différents mécanismes.
Mais tout n'est pas noir dans le monde de Rails, rassurez-vous. Voici les points forts du livre qui ont retenu mon attention :
- Procédure d'installation claire et détaillée
- Chapitre sur la sécurité très bien réalisé, et transposable à l'ensemble des langages Web
- Explications du déploiement sur différents serveurs Web
- Mise en place d'un 'vrai' projet professionnel