Layered Design for Ruby on Rails Applications - Vladimir Dementyev

Layered Design for Ruby on Rails Applications

Discover practical design patterns for maintainable web applications
Buch | Softcover
298 Seiten
2023
Packt Publishing Limited (Verlag)
978-1-80181-378-5 (ISBN)
42,35 inkl. MwSt
Transition from the traditional Rails model-view-controller trio to an abstraction model and let your application codebase evolve with synchronized components, boosting flexibility and maintainability.
Purchase of the print or Kindle book includes a free PDF eBook through the link provided within

Key Features

Understand Rails' architectural patterns along with its advantages and disadvantages
Organize business logic in Rails apps when the default approach is insufficient
Introduce new abstractions to address design problems

Book DescriptionRuby on Rails is an open-source framework for building web applications from scratch while focusing on productivity, leveraging the power of the convention-over-configuration principle, and the well-defined model-view-controller pattern, assisting the developers in building useful features. However, this initial simplicity often leads to uncontrollable complexity turning the well-structured codebase into a hardly maintainable mess. This book aims to help you keep the code maintainable while working on a Rails application.
You’ll start by exploring the framework capabilities and principles, allowing you to reap the full potential of Rails. Then, you’ll tackle many common design problems by discovering useful patterns and abstraction layers. By implementing abstraction and dividing the application into manageable modules, you’ll be able to concentrate on specific parts of the app development without getting overwhelmed by the entire codebase. This strategy also encourages code reuse, simplifying the process of adding new features and enhancing the application's capabilities. Additionally, you’ll explore further steps in scaling Rails codebase, such as service extractions.
By the end of this book, you’ll be a code design specialist with a deep understanding of the Rails framework principles.What you will learn

Discover Rails' core components and its request/response cycle
Understand Rails' convention-over-configuration principle and its impact on development
Explore patterns for flexibility, extensibility, and testability in Rails
Identify and address Rails’ anti-patterns for cleaner code
Implement design patterns for handling bloated models and messy views
Expand from mailers to multi-channel notification deliveries
Explore different authorization models and layers
Use a class-based approach to configuration in Rails

Who this book is forThis book is for Rails application developers facing challenges in managing the growing complexity of their projects. It offers practical strategies for maintaining code readability and manageability, providing valuable guidance for developers at all levels. Whether you've recently launched your first Rails minimum viable product or are struggling to progress with a sizable monolithic application, this book is here to help. A deep understanding of core Rails principles is a must. Some experience in building web applications using the Rails framework will enhance your comprehension and application of the concepts presented in the book.

Vladimir Dementyev has been working on web applications for more than 10 years and launched his first Ruby on Rails project back in 2014. Since then, he has been working on a dozen of Rails web applications, used by hundreds of millions of customers, monolithic or component-based, following the Rails way or trying to swim against the current. He has been an active member of Rails open-source community since 2015, becoming a regular Rails contributor, a RailsConf speaker, and the author of dozens of gems, including AnyCable, TestProf, and Action Policy to name a few. For his work on the Ruby Next project, the author got the Fukuoka Ruby Award for outstanding performance in 2021. Currently, he's leading the backend developers' team at Evil Martians, helping dozens of web projects around the world build better software.

Table of Contents

Rails as a Web Application Framework
Active Models and Records
More Adapters, Less Implementations
Rails Anti-Patterns?
When Rails Abstractions Are Not Enough
Data Layer Abstractions
Handling User Input outside of Models
Pulling Out the Representation Layer
Authorization Models and Layers
Crafting the Notifications Layer
Better Abstractions for HTML Views
Configuration as a First-Class Application Citizen
Cross-Layers and Off-Layers

Erscheinungsdatum
Verlagsort Birmingham
Sprache englisch
Maße 191 x 235 mm
Themenwelt Informatik Web / Internet Web Design / Usability
ISBN-10 1-80181-378-7 / 1801813787
ISBN-13 978-1-80181-378-5 / 9781801813785
Zustand Neuware
Haben Sie eine Frage zum Produkt?
Mehr entdecken
aus dem Bereich
der Weg zur professionellen Vektorgrafik

von Uwe Schöler

Buch (2024)
Carl Hanser (Verlag)
29,99
alles, was Sie über Gestaltung im Web wissen sollten

von Björn Rohles; Jürgen Wolf

Buch | Softcover (2023)
Rheinwerk (Verlag)
29,90