tag:robotlegs.tenderapp.com,2009-10-18:/discussions/questions/307-repetitive-tasks-code-generation-for-rlsRobotlegs: Discussion 2018-10-18T16:35:18Ztag:robotlegs.tenderapp.com,2009-10-18:Comment/32458492010-10-06T13:41:15Z2010-10-06T13:41:15ZRepetitive tasks code generation for RL's<div><p>Hi Nikos,</p>
<p>For the code generation part, do you mean something like this?<br />
<a href="http://github.com/EladElrom/robotlegs-utilities-AntGenerator">http://github.com/EladElrom/robotlegs-utilities-AntGenerator</a></p>
<p>I've never tried it out though..</p>
<p>Ondina</p></div>Ondina D.F.tag:robotlegs.tenderapp.com,2009-10-18:Comment/32458492010-10-06T15:03:13Z2010-10-23T09:55:03ZRepetitive tasks code generation for RL's<div><p>FlashDevelop is a dream when it comes to templates and scaffolding. You can create your own structures very easily and use them to create new projects.</p>
<p><a href="http://www.flashdevelop.org">http://www.flashdevelop.org</a></p></div>creynderstag:robotlegs.tenderapp.com,2009-10-18:Comment/32458492010-10-06T16:54:48Z2010-10-06T16:54:48ZRepetitive tasks code generation for RL's<div><p>I tried it but it wasn't doing much, just creates directories, I tried Johns one that creates commands but couldn't get it working</p>
<p><a href="http://johnlindquist.com/2010/06/03/robotlegs-and-signals-code-generation/">http://johnlindquist.com/2010/06/03/robotlegs-and-signals-code-gene...</a></p></div>Nikos tag:robotlegs.tenderapp.com,2009-10-18:Comment/32458492010-10-07T07:30:25Z2010-10-23T09:55:04ZRepetitive tasks code generation for RL's<div><p>Really you should give FD a bit more attention. You can set up a vanilla project with all libraries, et cetera just as you want it. Combining them with custom templates makes it very easy, powerful and fast to create mediators, commands, ...<br />
Just take a look at the standard scaffolding project files in [FD install directory]/Projects<br />
to have an idea how to start out and you'll see you'll get the hang of it pretty soon.
Once you get it working, you can't imagine how you could manage before without.</p>
<p>P.S.: the standard project scaffolding files are in [FD install directory]/Projects but you should place your own custom scaffolding files in [FD application files]/Projects</p></div>creynderstag:robotlegs.tenderapp.com,2009-10-18:Comment/32458492010-10-07T07:55:28Z2010-10-23T09:55:04ZRepetitive tasks code generation for RL's<div><p>I created an example project, which took me approximately 5 minutes.<br />
What it does is it sets up a FD project, and adds a robotlegs.swc and greensock.swc<br />
Also it creates the typical mvs directory structure, with the context and 4 commands already: ConfigureViewsCommand, ConfigureModelsCommand, ...<br />
As you'll see you can easily extend it to include a full bootstrap mechanism et cetera if you want to.</p>
<p>To use it just goto 'Tools' > 'Application Files' in FD. Explorer will open, go inside the 'Projects' directory and copy the contents from the attached zip to the 'Projects' directory.</p>
<p>Now you'll see that if you choose 'New Project' in FD it'll have added</p>
<blockquote><p>Robotlegs ---------</p>
<p>AS3 [preloader]</p></blockquote>
<p>to the 'installed templates' panel (at the bottom of the list)</p></div>creynderstag:robotlegs.tenderapp.com,2009-10-18:Comment/32458492010-10-07T08:00:42Z2010-10-07T08:00:42ZRepetitive tasks code generation for RL's<div><p>I've thought about FD but f builder 5 should have similar features I think so may wait before buying FD.</p>
<p>thanks</p></div>Nikos tag:robotlegs.tenderapp.com,2009-10-18:Comment/32458492010-10-07T08:08:17Z2010-10-23T09:55:05ZRepetitive tasks code generation for RL's<div><p>FD is freeware. No need to wait ;)</p></div>creynderstag:robotlegs.tenderapp.com,2009-10-18:Comment/32458492010-10-07T08:09:07Z2010-10-07T08:09:07ZRepetitive tasks code generation for RL's<div><p>You will wait a long time before buying Flash Develop:</p>
<blockquote><p>FlashDevelop is a free and open source (MIT license) source code editor.</p></blockquote></div>Joel Hookstag:robotlegs.tenderapp.com,2009-10-18:Comment/32458492010-10-07T08:12:28Z2010-10-07T08:12:28ZRepetitive tasks code generation for RL's<div><p>woops, got confused with FDT :)</p></div>Nikos tag:robotlegs.tenderapp.com,2009-10-18:Comment/32458492010-10-07T08:12:56Z2010-10-07T08:12:56ZRepetitive tasks code generation for RL's<div><p>can you use FD on the same project as beign used in FB4?</p></div>Nikos tag:robotlegs.tenderapp.com,2009-10-18:Comment/32458492010-10-07T08:13:51Z2010-10-07T08:13:51ZRepetitive tasks code generation for RL's<div><p>Unless you code for a hobby I'd say that having the right tools is always worth it.</p>
<p>It's your own choice but it seems a little strange to want code gen tools (and others to build them!) but not be prepared to switch to an IDE that makes code gen easy.</p></div>Straytag:robotlegs.tenderapp.com,2009-10-18:Comment/32458492010-10-07T08:21:29Z2010-10-07T08:21:29ZRepetitive tasks code generation for RL's<div><p>true</p></div>Nikos tag:robotlegs.tenderapp.com,2009-10-18:Comment/32458492010-10-07T08:52:04Z2010-10-07T08:52:04ZRepetitive tasks code generation for RL's<div><p>I think im gonna use FDT over my FB4 project for kicks after seeing this:</p>
<p><a href="http://johnlindquist.com/2010/01/21/as3-signals-tutorial/">http://johnlindquist.com/2010/01/21/as3-signals-tutorial/</a><br />
<a href="http://johnlindquist.com/2009/11/18/robotlegs-hello-world-video-tutorial/">http://johnlindquist.com/2009/11/18/robotlegs-hello-world-video-tut...</a></p></div>Nikos tag:robotlegs.tenderapp.com,2009-10-18:Comment/32458492010-10-07T08:57:07Z2010-10-07T08:57:07ZRepetitive tasks code generation for RL's<div><p>aaaaaahhhhhhhh help</p>
<p>FB4 , FDT ,FD, intelliJ</p>
<p>too much choice grrr</p></div>Nikos tag:robotlegs.tenderapp.com,2009-10-18:Comment/32458492010-10-07T09:03:22Z2010-10-07T09:03:22ZRepetitive tasks code generation for RL's<div><p>You forgot TextMate and projectSprouts</p>
<p>oh - and Thor (ruby generators, similar to projectSprouts).</p>
<p>plus Emacs and VI</p>
<p>and there's always the Flash CSx IDE ;)</p>
<p>My advice would be - just pick something that looks good enough and get practiced at using it. Any familiar IDE beats and IDE you don't know the shortcuts for.</p></div>Straytag:robotlegs.tenderapp.com,2009-10-18:Comment/32458492010-10-07T09:09:19Z2010-10-07T09:09:19ZRepetitive tasks code generation for RL's<div><p>more pain</p></div>Nikos tag:robotlegs.tenderapp.com,2009-10-18:Comment/32458492010-10-07T09:13:01Z2010-10-07T09:13:01ZRepetitive tasks code generation for RL's<div><p>can you use all the IDE's at the same time?</p>
<p>ie the IDE specific files do not clash?</p>
<p>I'm thinking of doing the main coding using FB4 and the excellent perforce plugin and use other IDE's when I want to speed code in that project, ie when writing lots of classes.</p>
<p>penny for your thoughts?</p></div>Nikos tag:robotlegs.tenderapp.com,2009-10-18:Comment/32458492010-10-07T09:26:00Z2010-10-07T09:26:00ZRepetitive tasks code generation for RL's<div><p>Hi Nikos - did you read what I wrote in my previous message?</p>
<p>The fastest way to code is to use an IDE that you really, really know how to use.</p>
<p>That means picking one IDE and just using it well.</p>
<p>Using all the IDEs at the same time would be ridiculous. Whether or not the IDE specific files clash, your BRAIN - which is the throttle for any programmer - would not cope.</p>
<p>My fingers can type at 80+ wpm. Nobody can code at 80 wpm. QED typing itself is not the bottleneck. The purpose of code gen tools is not to avoid typing - it's to avoid having to <em>think</em> about what you should type, by scaffolding the required structure in each class. This frees up brain power for the higher level task of architecture.</p>
<p>If you mix and match your IDEs then you will have to think about how to use the IDE. That defeats the purpose of code gen - you would have even less brain power available than if you had no code gen tools at all.</p>
<p>Personally I use TextMate. I try to add a custom command and learn another of the bzillion keyboard shortcuts each week. Just one of each per week - because unless using shortcuts and commands is totally unconscious you become slower and less focussed on your code.</p>
<p>So - just choose and IDE and stick with it, and slowly learn to use the full power of that IDE. Learning ONE IDE takes several months, I think, so if you try to learn all of them you will be there for years before you have any fluency.</p>
<p>Stray</p>
<p>(Yes, I know that a small number of people use a couple of different IDEs, but generally this is because they have become fluent at one before adding the next, and they would still not try to use them all at the same time.)</p></div>Straytag:robotlegs.tenderapp.com,2009-10-18:Comment/32458492010-10-07T10:44:59Z2010-10-07T10:44:59ZRepetitive tasks code generation for RL's<div><p>In addition to what creynders and Joel said and to Stray’s wise advise:</p>
<p>I think, we all share the desire to type less code, especially while using an MVC framework in a complex and/or big application.<br />
I don’t know if you’ve already tried out other frameworks, but if robotlegs is your First-Framework-Ever, you probably can’t appreciate the fact that robotlegs considerably reduces the amount of boilerplate code you have to write compared to what its counterparts in the world of frameworks make you produce.</p>
<p>So, by choosing robotlegs, you already skipped the 1st step in the process of Reducing-Typing-Of-Code-To-An-Acceptable-Minimum.</p>
<p>On the one hand, I would say that even if it’s really boring and time consuming to write your Mediators and Models and VOs and Services and Commands over and over again, it might be a good practice in the beginning.<br />
<strong>The benefit</strong>: you learn the proper syntax (you know, [Inject] instead of [inject]) or the relationship between the different Classes (say, if you don’t map your Command to an event, none will listen for that event dispatched by a Mediator, that wants to access a Service)</p>
<p>So, don’t be lazy:)</p>
<p>On the other hand, you are right, there are too many options out there, and it’s hard to find the tool that will fulfil all your expectations and will be worth the money. Automating the repetitive tasks is just one of the many things we (generally) expect from the previously mentioned IDE’s.<br />
And there are too many frameworks out there, too many utilities, tools and so on. When you get used to one, another very promising framework, tool, utility appears out of nowhere. I think many developers spend more time deciding what to use than using it. We are a bunch of perpetually frustrated people, aren’t we? :)</p>
<p>Ondina</p></div>Ondina D.F.tag:robotlegs.tenderapp.com,2009-10-18:Comment/32458492010-10-07T10:55:28Z2010-10-07T10:55:28ZRepetitive tasks code generation for RL's<div><p>Stray + Ondina = very helpful :)</p>
<p>thx</p></div>Nikos tag:robotlegs.tenderapp.com,2009-10-18:Comment/32458492010-10-07T10:59:37Z2010-10-07T10:59:37ZRepetitive tasks code generation for RL's<div><blockquote><p><strong>The benefit</strong>: you learn the proper syntax (you know, [Inject] instead of [inject]) or the relationship between the different Classes (say, if you don’t map your Command to an event, none will listen for that event dispatched by a Mediator, that wants to access a Service)</p></blockquote>
<p>That is a fantastic insight.</p>
<p>You shouldn't use a code gen tool for a class that you can't write by hand - you are cheating yourself out of the understanding of the framework / approach you're using.</p>
<p>Ondina is correct - without putting in the time to get familiar with the code you will be (far more) frustrated and side tracked by small bugs that you don't have the knowledge to find the root of.</p>
<p>You don't need to dig into the workings of Actor, the CommandMap and so on - or worry about how the framework carries out its own injections. But you do need to get hands on practice at wiring up your applications - if only because one day there might be a deadline, and a bug, and nobody else around to diagnose your problem!</p>
<p>Stray</p>
<p>ps - I'm actually super happy with my TextMate / projectSprouts / robotlegs combo, so I think I'm one of the developers who isn't unhappy with my lot! But then I used to be an engineer, so I'm kind of pragmatic in most things :)</p></div>Straytag:robotlegs.tenderapp.com,2009-10-18:Comment/32458492010-10-07T11:20:06Z2010-10-07T11:20:06ZRepetitive tasks code generation for RL's<div><p>although it does help:</p>
<p>You don't need to dig into the workings of Actor, the CommandMap and so on - or worry about how the framework carries out its own injections.</p></div>Nikos tag:robotlegs.tenderapp.com,2009-10-18:Comment/32458492010-10-07T11:27:24Z2010-10-07T11:27:24ZRepetitive tasks code generation for RL's<div><p>FDT + FB4 would be great but I think they will conflict due to project files where I know</p>
<p>IntelliJ works fine at the same time as at FB4 project as its settings are in a seperate folder.</p></div>Nikos tag:robotlegs.tenderapp.com,2009-10-18:Comment/32458492010-10-07T11:46:14Z2010-10-23T09:55:06ZRepetitive tasks code generation for RL's<div><p>My 2 cents:<br />
If I have to work in Flex ('<em>have to</em>' is correct, because I actually detest Flex) I use FB & FD at the same time. They can manage the same project perfectly. I only use FB because of it's superior handling of mxml. To me the separation is clear: all view code & mediator mapping is done in FB and everything else I write in FD.<br />
In other words: dirty presentation code -> FB, clean, beautiful & crisp code in FD ;)</p>
<p>I worked with FDT for a few months, but I never got the hang of it. I thought it was cumbersome and didn't 'help' me like FD does, but I'm certain that's only because I had been using FD for years already then.</p>
<p>Finding the right IDE (for the right language) is a bit like buying a guitar: you have to try a few out, and the one that 'feels' right probably is the one you should invest time in.<br />
Until something better comes along of course :)</p></div>creynderstag:robotlegs.tenderapp.com,2009-10-18:Comment/32458492010-10-07T11:54:19Z2010-10-07T11:54:19ZRepetitive tasks code generation for RL's<div><p>yeah nice post creynders</p></div>Nikos tag:robotlegs.tenderapp.com,2009-10-18:Comment/32458492010-10-07T16:17:13Z2010-10-07T16:17:13ZRepetitive tasks code generation for RL's<div><p>this is the best I've found</p>
<p>makes signals,commands and adds to context when you want a new signal</p>
<p><a href="http://johnlindquist.com/2010/06/03/robotlegs-and-signals-code-generation/">http://johnlindquist.com/2010/06/03/robotlegs-and-signals-code-gene...</a></p>
<p>has anyone had any success with this?</p></div>Nikos tag:robotlegs.tenderapp.com,2009-10-18:Comment/32458492010-10-08T15:56:49Z2010-10-08T15:56:49ZRepetitive tasks code generation for RL's<div><p>I assumne the eclipse keyboard shortcuts are similar in FDT to FB4?</p></div>Nikos