<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	
	>
<channel>
	<title>
	Comments on: Miscellaneous Debris: Flex Todo Lists	</title>
	<atom:link href="https://jessewarden.com/2005/09/miscellaneous-debris-flex-todo-lists.html/feed" rel="self" type="application/rss+xml" />
	<link>https://jessewarden.com/2005/09/miscellaneous-debris-flex-todo-lists.html</link>
	<description>Software &#124; Fitness &#124; Gaming</description>
	<lastBuildDate>Tue, 20 Sep 2005 00:39:44 +0000</lastBuildDate>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	
	<item>
		<title>
		By: JesterXL		</title>
		<link>https://jessewarden.com/2005/09/miscellaneous-debris-flex-todo-lists.html/comment-page-1#comment-2877</link>

		<dc:creator><![CDATA[JesterXL]]></dc:creator>
		<pubDate>Tue, 20 Sep 2005 00:39:44 +0000</pubDate>
		<guid isPermaLink="false">http://jessewarden.com/?p=863#comment-2877</guid>

					<description><![CDATA[Thanks for taking the time to give me feedback Steven!

Ok, tough questions...

The reason I utilize my AdminController the way I do is from where I came from.  When I first started attempting to do MVC in Flash, my Controller, my version of it, ended up being a bunch of code to manage data and data calls(Model), and my components (Views) on frame1 in Flash; effectively, the only code on _root was my Controller.

Over time, as I managed to get my Model more to be it&#039;s own classes, included a few abstrations from the actual place it was coming from (.NET via Remoting, Java via OpenAMF, etc.), and started implementing a stricer event strucure, the only thing that didn&#039;t change was what I considered my controller; the code that managed to the 2; responding to my View events, shoving in Model data to my View(s), and performing other app specific commands.

The problems I ran into, however, is my Controller, while more organized, was unweidly.  It started to be come thousands of AS lines long, and was really really hard to manage.

So, when I started utilizing ARP, I found I liked Commands because a lot of the Controller logic was now easily seperated off, segrated into a more organized &#038; easily findable class, and I could re-use it (some of them anyway).

So, it doesn&#039;t feel tightly bound at all to me, although, I&#039;d appreciate it if you&#039;d suggest how I could further reduce it (and no, ViewStack&#039;s don&#039;t count... I know, beggers can&#039;t be choosers, but still).

The Commands that take parameters were created for a specific purpose; perhaps had I spent longer than 8 days of spare time, I might of made them more flexible via the params... but, I doubt it; again, to me, Commands feel like Controller organizers, and perhaps I am viewing them the wrong way, but it feels good currently.

As far as attributes, if I was too specific in data, it was probably for debugging purposes since AMFPHP + Flex isn&#039;t battle tested yet, but yeah, I agree; if you have a VO, use it as a class, not as a vanilla object AS1 style.

If you have any more suggestions, it&#039;d probably help me to hear them.  Thanks again for taking the time.


]]></description>
			<content:encoded><![CDATA[<p>Thanks for taking the time to give me feedback Steven!</p>
<p>Ok, tough questions&#8230;</p>
<p>The reason I utilize my AdminController the way I do is from where I came from.  When I first started attempting to do MVC in Flash, my Controller, my version of it, ended up being a bunch of code to manage data and data calls(Model), and my components (Views) on frame1 in Flash; effectively, the only code on _root was my Controller.</p>
<p>Over time, as I managed to get my Model more to be it&#8217;s own classes, included a few abstrations from the actual place it was coming from (.NET via Remoting, Java via OpenAMF, etc.), and started implementing a stricer event strucure, the only thing that didn&#8217;t change was what I considered my controller; the code that managed to the 2; responding to my View events, shoving in Model data to my View(s), and performing other app specific commands.</p>
<p>The problems I ran into, however, is my Controller, while more organized, was unweidly.  It started to be come thousands of AS lines long, and was really really hard to manage.</p>
<p>So, when I started utilizing ARP, I found I liked Commands because a lot of the Controller logic was now easily seperated off, segrated into a more organized &amp; easily findable class, and I could re-use it (some of them anyway).</p>
<p>So, it doesn&#8217;t feel tightly bound at all to me, although, I&#8217;d appreciate it if you&#8217;d suggest how I could further reduce it (and no, ViewStack&#8217;s don&#8217;t count&#8230; I know, beggers can&#8217;t be choosers, but still).</p>
<p>The Commands that take parameters were created for a specific purpose; perhaps had I spent longer than 8 days of spare time, I might of made them more flexible via the params&#8230; but, I doubt it; again, to me, Commands feel like Controller organizers, and perhaps I am viewing them the wrong way, but it feels good currently.</p>
<p>As far as attributes, if I was too specific in data, it was probably for debugging purposes since AMFPHP + Flex isn&#8217;t battle tested yet, but yeah, I agree; if you have a VO, use it as a class, not as a vanilla object AS1 style.</p>
<p>If you have any more suggestions, it&#8217;d probably help me to hear them.  Thanks again for taking the time.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Steven Webster		</title>
		<link>https://jessewarden.com/2005/09/miscellaneous-debris-flex-todo-lists.html/comment-page-1#comment-2876</link>

		<dc:creator><![CDATA[Steven Webster]]></dc:creator>
		<pubDate>Tue, 20 Sep 2005 00:25:52 +0000</pubDate>
		<guid isPermaLink="false">http://jessewarden.com/?p=863#comment-2876</guid>

					<description><![CDATA[Jesse,

I don&#039;t quite get your implementation of &#039;Controller&#039; here ... rather than the controller that Sho was disputing, you have an AdminController that contains your view (MXML) and a bunch of method calls on the view (such as doDeleteUser() ) that in turn invoke commands.

So - rather than gain the benefits of the controller as a means of separating the implementation of your view from the underlying implementation of your business logic, you have a pretty tight binding here between the view and the commands.  To be honest, I don&#039;t really see what benefits your gaining from the controller.  Shouldn&#039;t it be the case that your view code (MXML) simply dispatch events, safe in the knowledge that somewhere there&#039;s a controller listening to, and responding to those events ?  This makes reuse of commands a piece of cake, and completely independant of your view implementation.  Passing the current view (&#039;this&#039;) to your commands seems to require that your commands have some knowledge of the MXML view that called them as well ... I can&#039;t understand why it would be necessary that your commands have reference to the view, especially given you adopt the strategy of a global Model class (why don&#039;t your commands simply manipulate the model, and let your model bind to the view ?).

I also note that your runCommands take arbitrary lists of parameters; why not use your value objects as the data to pass to command calls, so that your commands are not so brittle to the params passed in ?

Similarly, I&#039;d suggest that your delegate methods accept value objects as curreny, rather than individual parameters; pass in a TodoItemVO to todolistsDelegate.createTodoList(), rather than list out all the attributes ?  Thoughts ?

Steven]]></description>
			<content:encoded><![CDATA[<p>Jesse,</p>
<p>I don&#8217;t quite get your implementation of &#8216;Controller&#8217; here &#8230; rather than the controller that Sho was disputing, you have an AdminController that contains your view (MXML) and a bunch of method calls on the view (such as doDeleteUser() ) that in turn invoke commands.</p>
<p>So &#8211; rather than gain the benefits of the controller as a means of separating the implementation of your view from the underlying implementation of your business logic, you have a pretty tight binding here between the view and the commands.  To be honest, I don&#8217;t really see what benefits your gaining from the controller.  Shouldn&#8217;t it be the case that your view code (MXML) simply dispatch events, safe in the knowledge that somewhere there&#8217;s a controller listening to, and responding to those events ?  This makes reuse of commands a piece of cake, and completely independant of your view implementation.  Passing the current view (&#8216;this&#8217;) to your commands seems to require that your commands have some knowledge of the MXML view that called them as well &#8230; I can&#8217;t understand why it would be necessary that your commands have reference to the view, especially given you adopt the strategy of a global Model class (why don&#8217;t your commands simply manipulate the model, and let your model bind to the view ?).</p>
<p>I also note that your runCommands take arbitrary lists of parameters; why not use your value objects as the data to pass to command calls, so that your commands are not so brittle to the params passed in ?</p>
<p>Similarly, I&#8217;d suggest that your delegate methods accept value objects as curreny, rather than individual parameters; pass in a TodoItemVO to todolistsDelegate.createTodoList(), rather than list out all the attributes ?  Thoughts ?</p>
<p>Steven</p>
]]></content:encoded>
		
			</item>
	</channel>
</rss>
