Loading presentation...

Present Remotely

Send the link below via email or IM


Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.


Event-Based Components

Scalable, evolveable, understandable Building Blocks for Software Systems

Ralf Westphal

on 17 June 2010

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of Event-Based Components

Event-Based Components Building Blocks for scalable, evolveable, understandable Software Systems by Ralf Westphal,
www.ralfw.de, ralfw.blogspot.com
What is different n software? Broad
dependencies Today defined by
services Fine-grained
dependencies defined by
clients Tomorrow A New Component Mindset Dissolving Topological
Dependencies Formalization 1. Components are specified
by a single interface interface IClient
{...} 2. "Needs" are defined
with delegates, "offerings"
are procedures interface IClient
event Action<string> Out_RequestProcessing;
void In_ReceiveResult(string text);
} 3. Pins are standardized Delegates/events and procedures are of the form Action<T> Event-Based Components Basic Terminology Benefits of Event-Based Component Mindset True Layers of Abstraction Old-style Components Refinement Event-Based Components Stepwise Refinement Architecture in sync
with Code Clear Separation
of Concerns Clear and simple:
Boards wire up components
Parts implement business logic Intuitive Designs through flow based perspective Simple AOP through wiretaping and interception Scalable Architectures due to event-/message
orientation More Potential for Reuse due to standardized pin
(method contracts) Event-Based Components Building Blocks for Scalable and Evolvable Architectures
Full transcript