Constructing Large Scale Enterprise Applications With Ruby And Rails

EMBARGO!

Journalists and bloggers: please do not publish anything about this until the embargo is lifted!

Please contact the author for more information about when this is.

Constructing Large Scale Enterprise Applications With Ruby And Rails

A Bitcoin Exchange Implementation

About the Book

Constructing Large Scale Enterprise Systems With Ruby And Rails : A Bitcoin Exchange Implementation

This book discusses the architecture and implementation of  large scale enterprise systems with Ruby and Rails. Architectural patterns for designing  highly concurrent,  scalable and loosely coupled systems are discussed. A Bitcoin Exchange using these patterns is implemented.  Among the topics covered are:

•  The use of design patterns which are very useful in the enterprise context

•  Using service objects

•  Using the the data context interaction pattern

•  Building a fault tolerant system

•  Using Facades and a Restful API in a large system

•  Using concurrency in enterprise scale systems

•  Decoupling enterprise systems with a message bus

•  Implementing workflows with finite state machines

•  Implementing locational transparency

•  Internationalizing the application

These  architectural patterns are applied to the construction of a Bitcoin Exchange.

This is primarily a book on architecture. Though the software implementation is in Ruby using the Rails framework, experienced developers should have no particular difficulty in following the code implementation and gaining a good understanding of the Ruby language and the Rails framework in the process.

  • Share this book

  • Categories

    • Agile
    • Software
    • Startups

About the Author

Karan Singh Garewal
Karan Singh Garewal

Karan Singh Garewal has over 20 years of software development experience in C, C++ and Ruby and Rails.  The author has been involved in developing very large scale systems in C++.  He has also been involved in software development projects in Canada, the United States, Germany and China. A practising attorney, the author has qualifications in Computer Science and Mathematics.  Karan's particular interests are peer to peer overlays and distributed systems.

Table of Contents

  • Preface
    • Design Is Good
    • The Focus Of This Book
    • Pathways In The Book
    • Presumed Background
  • Essential Object Oriented Design
    • Heuristic Object Design Principles
    • Fundamental Principles Of Object Oriented Design
    • Dependency Injection
  • Run-time Modification Of Ruby Objects
    • Extending Objects With Modules At Run-time
    • Extending Classes With Modules At Run-time
    • Injecting Code Into Objects At Run-time
    • Injecting Code Into Classes At Run-time
    • Defining Methods Dynamically With define_method
    • Alias Chaining
    • Dynamic Dispatch
    • Discovering Methods With respond_to?
  • Lambdas And Deferred Evaluation
    • Making Procs And Lambdas
    • Calling A Lambda Or A Proc
    • The Closure Of Procs And Lambdas
    • The & Operator
    • Return Semantics For Lambda And Proc
    • Arity
  • Architecting A Large Scale Enterprise System
    • Software Design At The Highest Level
    • Architectural Objectives For Large Systems
    • Architectural Principles For Large Scale Enterprise Systems
    • Using Ruby Gems
    • Implementing An Enterprise Architecture
  • The Service Object Pattern
    • Typical Service Object Patterns
  • The Data Context Interaction Pattern
    • The DCI Pattern Explained
    • Implementing A Shopping Cart With DCI
    • Thin Models Are In Vogue
    • Mapping Logical Design To DCI
    • The DCI Pattern And Rails
    • The Next Step
  • Mathematical Cryptographic Primer
  • Bitcoin And Other Cryptographic Curriencies
  • Bitcoin Mining And Transactions
  • Mapping Logical Design Into Rails Space
  • Architecting A Bitcoin Exchange
  • The Facade Pattern
  • The Decorator Pattern
  • Architecting A Restful API for The Bitcoin Exchange
  • CRUD Models For The Bitcoin Exchange
  • Applying The Facade Pattern To The Bitcoin Exchange
  • Implementing A Biological Finite State Machine
  • Implementing The Message Bus And DeCoupling
  • Baking In Locational Transparency
  • The Internationalized Exchange
  • Injectable Performance Monitors
  • Reaping The Benefits Of Architecture
  • Version History

The Leanpub 60 Day 100% Happiness Guarantee

Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.

Now, this is technically risky for us, since you'll have the book or course files either way. But we're so confident in our products and services, and in our authors and readers, that we're happy to offer a full money back guarantee for everything we sell.

You can only find out how good something is by trying it, and because of our 100% money back guarantee there's literally no risk to do so!

So, there's no reason not to click the Add to Cart button, is there?

See full terms...

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 $13 millionwriting, publishing and selling on Leanpub.

Learn more about writing on Leanpub

Free Updates. 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) and EPUB (for phones, tablets and Kindle). 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

Write and Publish on Leanpub

You can use Leanpub to easily write, publish and sell in-progress and completed ebooks and online courses!

Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks.

Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. (Or, if you are producing your ebook your own way, you can even upload your own PDF and/or EPUB files and then publish with one click!) It really is that easy.

Learn more about writing on Leanpub