Layered Design for Ruby on Rails Applications : Discover practical design patterns for maintainable web applications

個数:

Layered Design for Ruby on Rails Applications : Discover practical design patterns for maintainable web applications

  • 提携先の海外書籍取次会社に在庫がございます。通常3週間で発送いたします。
    重要ご説明事項
    1. 納期遅延や、ご入手不能となる場合が若干ございます。
    2. 複数冊ご注文の場合、分割発送となる場合がございます。
    3. 美品のご指定は承りかねます。

    ●3Dセキュア導入とクレジットカードによるお支払いについて
  • 【入荷遅延について】
    世界情勢の影響により、海外からお取り寄せとなる洋書・洋古書の入荷が、表示している標準的な納期よりも遅延する場合がございます。
    おそれいりますが、あらかじめご了承くださいますようお願い申し上げます。
  • ◆画像の表紙や帯等は実物とは異なる場合があります。
  • ◆ウェブストアでの洋書販売価格は、弊社店舗等での販売価格とは異なります。
    また、洋書販売価格は、ご注文確定時点での日本円価格となります。
    ご注文確定後に、同じ洋書の販売価格が変動しても、それは反映されません。
  • 製本 Paperback:紙装版/ペーパーバック版/ページ数 298 p.
  • 言語 ENG
  • 商品コード 9781801813785
  • DDC分類 006.76

Full Description

Transition from the traditional Rails MVC trio to an abstraction model and evolve your application codebase with synchronized components, boosting flexibility and maintainability

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
Purchase of the print or Kindle book includes a free PDF eBook

Book DescriptionThe Ruby on Rails framework boosts productivity by leveraging the convention-over-configuration principle and model-view-controller (MVC) pattern, enabling developers to build features efficiently. This initial simplicity often leads to complexity, making a well-structured codebase difficult to maintain. Written by a seasoned software engineer and award-winning contributor to many other open-source projects, including Ruby on Rails and Ruby, this book will help you keep your code maintainable while working on a Rails app.
You'll get to grips with the framework's capabilities and principles to harness the full potential of Rails, and 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 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 become a code design specialist with a deep understanding of the Rails framework principles.What you will learn

Get to grips with Rails' core components and its request/response cycle
See how Rails' convention-over-configuration principle affects development
Explore patterns for software 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
Introduce different authorization models and layers to your codebase
Take a class-based approach to configuration in Rails

Who this book is forThis book is for Rails application developers looking to efficiently manage the growing complexity of their projects. 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. Prior experience in building web apps using the Rails framework will help you understand and apply the concepts in the book in a better way.

Contents

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