<?xml version="1.0" encoding="UTF-8"?>
<feed xml:lang="en-US" xmlns="http://www.w3.org/2005/Atom">
  <title>Reactive - News</title>
  <id>tag:www.ruby-reactive.org,2009:mephisto/</id>
  <generator version="0.8.0" uri="http://mephistoblog.com">Mephisto Drax</generator>
  <link href="http://www.ruby-reactive.org/feed/atom.xml" rel="self" type="application/atom+xml"/>
  <link href="http://www.ruby-reactive.org/" rel="alternate" type="text/html"/>
  <updated>2009-05-13T13:14:33Z</updated>
  <entry xml:base="http://www.ruby-reactive.org/">
    <author>
      <name>admin</name>
    </author>
    <id>tag:www.ruby-reactive.org,2009-05-13:12</id>
    <published>2009-05-13T13:14:00Z</published>
    <updated>2009-05-13T13:14:33Z</updated>
    <category term="reactive"/>
    <category term="release"/>
    <link href="http://www.ruby-reactive.org/2009/5/13/complete-rewrite" rel="alternate" type="text/html"/>
    <title>Complete rewrite</title>
<content type="html">
            &lt;p&gt;One year passed from the proof of concept release 0.1.0.&lt;/p&gt;


	&lt;p&gt;Now is the time of release 0.2.0, I still consider it as an alpha release, many changes have been made. In fact I rewrote it completely.&lt;/p&gt;


	&lt;p&gt;You may get the new release on &lt;a href=&quot;http://rubyforge.org/projects/reactive/&quot;&gt;rubyforge&lt;/a&gt; or with the gem command (read furthur with the &lt;a href=&quot;http://ruby-reactive.org/2009/5/13/create-a-reactive-0-2-0-application&quot;&gt;how-to&lt;/a&gt; article).&lt;/p&gt;


	&lt;p&gt;Your comments are welcome,&lt;/p&gt;


	&lt;p&gt;Pascal&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://www.ruby-reactive.org/">
    <author>
      <name>admin</name>
    </author>
    <id>tag:www.ruby-reactive.org,2009-05-13:13</id>
    <published>2009-05-13T13:14:00Z</published>
    <updated>2009-05-13T13:14:51Z</updated>
    <category term="architecture"/>
    <link href="http://www.ruby-reactive.org/2009/5/13/architecture" rel="alternate" type="text/html"/>
    <title>Architecture</title>
<content type="html">
            &lt;p&gt;The new Reactive release is based on a simple architecture.&lt;/p&gt;


	&lt;p&gt;Let&#8217;s take an example: 
An application issues a request, this request will be processed by a &lt;strong&gt;dispatcher&lt;/strong&gt; which will likely produce a response. This response should be treated by the application, it will through an &lt;strong&gt;output handler&lt;/strong&gt;.&lt;/p&gt;


	&lt;p&gt;So an application is a bundle of dispatchers and output handlers.&lt;/p&gt;


	&lt;p&gt;&lt;img src=&quot;http://ruby-reactive.org/assets/2009/5/13/architecture.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;


	&lt;p&gt;What is a request like?&lt;/p&gt;


A request may be &#8220;list all my books&#8221;, so the response should be a representation of the books list. The user should see this list.
	&lt;ul&gt;
	&lt;li&gt;The &lt;strong&gt;dispatcher&lt;/strong&gt; is responsible of handling the request, thus getting the book list.&lt;/li&gt;
		&lt;li&gt;The &lt;strong&gt;output handler&lt;/strong&gt; will expose the book list to the user in a form chosen by the request but created by the dispatcher.&lt;/li&gt;
	&lt;/ul&gt;


	&lt;p&gt;In the current release, I provide a dispatcher that is capable of handling request in a &lt;span class=&quot;caps&quot;&gt;MVC&lt;/span&gt; manner, this is &lt;strong&gt;reactive-mvc&lt;/strong&gt;.
I also provide an output handler which present the result with the &lt;a href=&quot;http://www.wxwidgets.org&quot;&gt;WxWidgets&lt;/a&gt;  toolkit, using &lt;a href=&quot;http://wxruby.rubyforge.org/wiki/wiki.pl&quot;&gt;wxRuby&lt;/a&gt;
,this is &lt;strong&gt;reactive-wx&lt;/strong&gt;.&lt;/p&gt;


	&lt;p&gt;Here is a more detailed architecture schema:&lt;/p&gt;


	&lt;p&gt;&lt;img src=&quot;http://ruby-reactive.org/assets/2009/5/13/architecture2.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;


	&lt;p&gt;You may see that several dispatchers may live at the same time in a Reactive application. Same goes for the output handlers.
Each of these are seen as &lt;em&gt;plugins&lt;/em&gt; (which are &lt;em&gt;gems&lt;/em&gt;) by Reactive, this let&#8217;s you construct an application architecture in a modular fashion.&lt;/p&gt;


	&lt;p&gt;Now that you know who does what, jump to the &lt;a href=&quot;http://ruby-reactive.org/2009/5/13/create-a-reactive-0-2-0-application&quot;&gt;create a reactive 0.2.0 application&lt;/a&gt; article.&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://www.ruby-reactive.org/">
    <author>
      <name>admin</name>
    </author>
    <id>tag:www.ruby-reactive.org,2008-05-14:1</id>
    <published>2008-05-14T09:00:00Z</published>
    <updated>2009-05-13T09:14:45Z</updated>
    <category term="reactive"/>
    <category term="release"/>
    <category term="wx"/>
    <link href="http://www.ruby-reactive.org/2008/5/14/first-reactive-release-0-1-0" rel="alternate" type="text/html"/>
    <title>First Reactive Release (0.1.0)</title>
<summary type="html">&lt;p&gt;Remember &lt;a href=&quot;http://www.rubyonrails.org&quot;&gt;Rails?&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Yeah, of course. It's this famous Web framework with a bunch of cooked-in facilities.&lt;/p&gt;

&lt;p&gt;Please welcome its alter-ego for desktop applications: &lt;b&gt;Reactive&lt;/b&gt;&lt;/p&gt;</summary><content type="html">
            &lt;p&gt;Remember &lt;a href=&quot;http://www.rubyonrails.org&quot;&gt;Rails?&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Yeah, of course. It's this famous Web framework with a bunch of cooked-in facilities.&lt;/p&gt;

&lt;p&gt;Please welcome its alter-ego for desktop applications: &lt;b&gt;Reactive&lt;/b&gt;&lt;/p&gt;

&lt;p&gt;Remember &lt;a href=&quot;http://www.rubyonrails.org&quot;&gt;Rails?&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Yeah, of course. It's this famous Web framework with a bunch of cooked-in facilities.&lt;/p&gt;

&lt;p&gt;Please welcome its alter-ego for desktop applications: &lt;b&gt;Reactive&lt;/b&gt;&lt;/p&gt;

&lt;p&gt;So what does reactive provide? It's a development framework for the &lt;a href=&quot;http://www.ruby-lang.org&quot;&gt;Ruby&lt;/a&gt; language. It targets the desktop environment, so stop now if you are a HTML aficionados.
It's built on the same architecture than rails: MVC. Thus, rails developers will feel at home.&lt;/p&gt;

&lt;p&gt;Because choosing a GUI toolkit is a matter of taste, religion and also customer needs, reactive does not enforce the developer to use a dedicated toolkit. Enter the &lt;i&gt;view provider&lt;/i&gt; system. The view is simply a layer that is not part of reactive but one of its plugins.&lt;/p&gt;

&lt;p&gt;Hey, this sounds good, but I want to see some code!. Yeah, the code is hosted on &lt;a href=&quot;http://rubyforge.org/projects/reactive&quot;&gt;RubyForge&lt;/a&gt;. You may already read the code, but wait for an upcoming post showing how to create a simple application.
          </content>  </entry>
</feed>
