CafeTownsend seems complex
I have been lookign at the http://github.com/darscan/robotlegs-demos-Bundle/tree/master/CafeTo... example.
What do you guys think about the way this project is layed out. It seems way overly complex way to do things?
Comments are currently closed for this discussion. You can start a new one.
2 Posted by Stray on 12 Jul, 2010 10:28 AM
I think the demos are intended to show how you can use robotlegs in a particular way to achieve a certain result.
As in any programming language I've ever looked at, the illustrations often use a fairly simple use case (to make it easy to understand and save cognitive space on the problem) and thus the solution can seem overly complex because the objective isn't to solve the problem, the objective is to solve the problem using a particular functionality that you want to demo.
The reasons for using a framework go well beyond solving the problem in front of you. We might choose to use the robotlegs framework to allow for growth, to make it less painful when unanticipated complexity emerges, to create a greater uniformity across all our projects so that we can easily read our own (and other's) work in the future, to create greater discipline about employing tried and tested patterns ... etc.
With a very simple problem, the 'simplest' solution is often a short functional programme - forgetting callbacks, listeners, patterns... hell, object-oriented is often over the top for a really simple problem. We could go back to as1 and stick some functions in the timeline and be done with it!
3 Posted by Nikos on 16 Jul, 2010 09:27 AM
My head is still hurting trying to get though this example, with all this stuff. Is it worth while going through this example until I fully understand everything he is doing?
Or would you never doing something as verbose in a real app?
4 Posted by Nikos on 16 Jul, 2010 10:38 AM
one thing, why this line of code:
[Event(name="edit", type="org.robotlegs.demos.cafetownsend.detail.model.events.EmployeeDetailEvent")]
inside:
package org.robotlegs.demos.cafetownsend.list.view.components.interfaces
{ import mx.collections.IList;
import org.robotlegs.demos.cafetownsend.user.view.components.interfaces.IEmployeeLogout;
[Event(name="edit", type="org.robotlegs.demos.cafetownsend.detail.model.events.EmployeeDetailEvent")] /* @author Jonathan Toland / public interface IEmployeeList extends IEmployeeLogout
{
} }
Support Staff 5 Posted by Shaun Smith on 16 Jul, 2010 02:13 PM
The Cafe Townsend demo was contributed by a Robotlegs user, and I believe he was trying out various modular techniques - I haven't actually looked through all the code, so I can't comment as to it's complexity, or applicability to general app dev.
Have you looked through the other demos in the bundle?
Support Staff 6 Posted by Shaun Smith on 16 Jul, 2010 02:14 PM
Also, I believe the demo was a port, hence the
[Event(name="edit", type="org.robotlegs.demos.cafetownsend.detail.model.events.EmployeeDetailEvent")]which is not Robotlegs related at all.7 Posted by Nikos on 17 Jul, 2010 05:57 PM
am looking at other examples. gonna try get my team to rl next project
Joel Hooks closed this discussion on 09 Aug, 2010 03:08 PM.