After spending a couple of hours, tracing my codes , pulling
my hair out, and smoking 2 packets of cigarettes, I felt that
rewriting it from the scracth was a better way. So, I did that
and the result was satisfying. However, I think working twice
on the same codes is not good at all. So here I am, asking for
your guidance about how to code/design Flash applications
(not only Flash sites) efficiently, as simple as possible, without
making things overcomplicated. Or maybe it is just a matter
of experience?
Planning, that's all. Work it out in your head, on paper, on a
whiteboard, whatever, before you write the first line of code. If you are
unsure about how something will work, prototype it. Don't get hung up in the
details, just test whatever it is you need to test, and figure out how to
make it work how you want, and then go back to planning. Once you know how
it all should work, writing the code is more like taking dictation than
experimenting. As with anything, the more complex the app, the more
necessary good planning becomes. If it's a quickie, one-off interactive ad,
maybe all you need is to scribble out a few diagrams on a whiteboard for 15
minutes. But if it's a large-scale application, you might need several
months of planning resulting in a substantial document that describes what
components are to be built, how they work, and how they integrate. Once you
have a good plan, though, writing clean, efficient code is easy.
Even with good planning, there will be times when things don't work out
as expected and you have to rewrite some code. But with good planning, you
usually don't have to rewrite the whole thing. That is another advantage of
that whole OOP thing that many people turn their noses at. One of the major
benedfits of using OOP techniques is that it often saves you from having to
rewrite the whole thing, and instead you may only have to rewrite a single
function, class, or component, while the rest of the app works just like it
is.
The bottom line, though, is that you answered your own question. After
you spent a few hours making sense of exactly what you wanted to accomplish,
you found a much better way to do it. The question you need to ask is if you
can put those couple hours at the beginning of the project, and skip over
the whole first draft completely. Two hours up front to save you 8 hours of
writing code that will end up in the trash anyway is a 63% increase in
efficiency (assuming it took 8 hours both times you wrote it). It *more*
than cuts your development time in half, because you spent those 2 hours
working out how to build the thing either way. And I'll bet it was much
faster to write the second time (when you really knew what you wanted to
accomplish and how to accomplish it), too, wasn't it?
ryanm
_______________________________________________
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders