<p>I've done several flash projects working as the ActionScripter with a designer doing all the pretty things and animation. When starting out I found quite a lot of information about ActionScript coding and flash design. Most of the information available seems to focus on one or the other.</p>

<p>I didn't find any information about building flash projects in a way that lets the coder do their thing AND gives the designer freedom as well.</p>

<p>Hopefully more experienced people can share, these are some of the things i discovered after a few projects</p>

<ul>
<li>Version control is a must (as always) but can be difficult to explain to designers</li>
<li>No ActionScript in the flash <code>.fla</code> files, they are binary and as a coder you want to try to keep away as much as possible</li>
<li>Model View Controller is the best way I've found to isolate visual design changes</li>
<li>Try to build the views so that they use frame labels, this allows the designer to decide what actually happens </li>
</ul>

<p>What are your experiences?
­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­</p>

[{'answer_id': 25533, 'author': 'Julio César', 'author_id': 2148, 'author_profile': 'https://Stackoverflow.com/users/2148', 'pm_score': 0, 'selected': False, 'text': '<p>On our team everyone uses TortoiseSVN and a Trac instance per project. Designers are using the standard Flash designer to edit .FLAs and developers are using <a href="http://www.flashdevelop.org/community/" rel="nofollow noreferrer">FlashDevelop</a> to manage ActionScript files and debug the project.</p>\n\n<p>The tool-chain works like this:</p>\n\n<ol>\n<li>Developers program the behavior of each window by hand-editing MXML files (it\'s not as hard as it sounds) and developing the corresponding .AS files at the same time.</li>\n<li>Designers make graphics for skins and other UI elements that get (link) exported and store them in .FLAs alongside the code.</li>\n<li>Developers [Import()] the resources in the .AS files.</li>\n</ol>\n\n<p>This way everything gets into source control and designers don\'t even look at a line of ActionScript. Off course I\'m oversimplifying the process but I hope you\'ll get the idea.</p>\n'}, {'answer_id': 30323, 'author': 'Jeff Winkworth', 'author_id': 1306, 'author_profile': 'https://Stackoverflow.com/users/1306', 'pm_score': 1, 'selected': False, 'text': '<p>The way I currently work is that I (the developer) build the functionality using a dummy FLA file, using only external class files. When the designer(s) finish up the layout, they send me a FLA with all the imported assets, and linked buttons and MovieClips. I then  attach my document class to the new FLA, and make sure all the Objects match my code. Overall, its a pretty simple transition.</p>\n\n<p>If an asset needs to be updated for whatever reason, the designers just send me the asset, and I update the FLA manually.</p>\n'}, {'answer_id': 87558, 'author': 'Iain', 'author_id': 11911, 'author_profile': 'https://Stackoverflow.com/users/11911', 'pm_score': 3, 'selected': True, 'text': '<p>I\'ve been doing Flash for 9 years and I still find this a difficult thing to get right. </p>\n\n<p>There is a balance of power between designers and developers, which will inevitably tip one way or the other. </p>\n\n<p>If you work for a developer led studio, then you are lucky, as the designers will be instructed to make a design that fits your functionality. In Flex / MXML this is the only way to work.</p>\n\n<p>If, on the other hand, you work in a graphic design/creative/advertising studio, you will be instructed to build whatever the designer puts together in PhotoShop, whether or not it is feasible to build within the time.</p>\n\n<p>The key to getting around this is communication and education. Designers and design-focussed managers may not know what is involved in creating a particular piece of functionality, and if you explain to them why a particular thing is hard to do they <strong>might</strong> be persuaded to go and rethink their design. On the other hand, they may well think you\'re just a whiner! It never feels good when you have to tell someone "sorry, I can\'t really do that" when you know that you could make it work, given a few late nights!</p>\n\n<p>As well as the things you and others have already noted, like using FlashDevelop and external AS classes, here\'s some other things I recommend:</p>\n\n<ul>\n<li>Start with a site map / wireframe that both the developers and designers agree to.</li>\n<li>Load all your text from XML into dynamic text fields, and make sure your buttons etc are designed to expand to fit content</li>\n<li>Make sure your designers have some idea how to correctly cut-up graphics and lay them out in Flash. A developer shouldn\'t be messing about in PhotoShop when you\'re up against a deadline.</li>\n<li>Make sure you get all you graphics assets well before the deadline - inevitably there\'ll be things they\'ve missed and things that need changing.</li>\n<li>Be firm and don\'t let your design team try to sneak in extra features at the last minute.</li>\n<li>Let the designers use the timeline for character animation etc, but for simple tweens use an ActionScript tweening engine.</li>\n</ul>\n\n<p>Hope these tips are some use!</p>\n'}, {'answer_id': 87756, 'author': 'matt lohkamp', 'author_id': 14026, 'author_profile': 'https://Stackoverflow.com/users/14026', 'pm_score': 1, 'selected': False, 'text': "<p>separating the design from the code is the important thing to do - since I try to do projects as a series of modular components (stitched together a little, of course, since nothing ever fits exactly) I first make a sort of interactive wireframe. It's got placeholders for all UI elements, appropriately named and nested.</p>\n\n<p>That .fla can be passed off to a designer, who can add whatever they want, as long as they keep the names and nesting order - essentially like skinning an app.</p>\n"}]
['https://Stackoverflow.com/questions/25356', 'https://Stackoverflow.com', 'https://Stackoverflow.com/users/2178/']