TwelvestoneFlash

OOP Geniuses - project architecture questions


Sign in

  • Waiting for Godot ( 720 k posts )
    Just conversation.
  • Thunder Dome ( 23 k posts )
    Photoshop Tennis and Collabs.
  • Photography ( 4.8 k posts )
    For all you shutterbugs, sh...
  • Flash ( 18 k posts )
    ActionScripting to tweens, ...
  • Front End ( 5.8 k posts )
    general front end design an...
  • Back End ( 9.6 k posts )
    serverside scripting, progr...
  • Projects and Theory ( 12 k posts )
    This forum is for discussio...
  • FAQ ( 269 posts )
    All those nagging questions...
  • Design ( 17 k posts )
    graphics & all aspects of g...
  • Purgatory ( 3.6 k posts )
    12stone Jail, feel free to ...
Storm
 
2009-04-22

Hello programming geniuses (lith, jlm, others)

I've gotten myself a little too "all over the place" with this project I was ranting about earlier because my AS2 and AS3 project streams have begun to be sooo different that I now require 2 documents to explain the project to outside agencies who may be using my component. And right now, I'm sending one AS2 package and a separate AS3 package because they're so different).

Here's my set up and I'd like recommendations and corrections where necessary.

Agency builds training module. Agency reads my documentation. Agency includes my component (SWC) in their module.

SWC pulls SWF from server with all the latest functions. (In AS2 it uses loadMovie and it replaces the SWC, but in AS3 it becomes a loader.content child...which is where my problems begin).

SWF pulled from server does all the translation to the WSDL for the SOAP messaging. SWF throws SOAP back over the fence with it's own internal events but it's up to the agency to build their own data handlers and event broadcasters.

The goal: Hide the path to the server where the WSDL is (hence a server-based SWF). Hide the the path to the functions (hence the locked SWC). Hide the functions and the path to the functions and be updateable (hence the server-based SWF).

Is there a better way to do all this? We are trying to minimize the amount of questions and problems that our .NET has to handle from Flash devs talking to .NET. I'm trying to make it easy for them, but it brings up more and more questions because they're now asking for me to build a seam-less bullet-proof component that does all their work for them. The more functionality I add the more different my documentation gets because AS2 is different that AS3.

Help? Recommendations on approach? Gems of wisdom for handling data translation?

Storm
 
2009-04-23

;crickets:

ok, here's a smaller question....

My component uses: return xml; so the base movie would go var dataXML:XML = component.getXML();

Since it returns a value, AS handles the return and my component checks for the data coming across the server and it gets returned.

The devs I'm passing this component on to want a trigger such as dataXML.onData = doSomething;

but since there's no load() call on dataXML, I can't seem to use onLoad or onData which is what I assumed would work for them as a trigger. but onData and onLoad only work with a specific XML.load() call.

What is the specific event the base movie could use to ensure dataXML gets what it needs from the component before they use it. how can they verify dataXML has a value returned?

JLM
 
2009-04-23

Storm

Sorry I have not used a component for a long while.. so I am completely lost on what your doing, but if you want to fire across some stuff with explanations, I can have a look see, prob be good to gem up, as I am finding it is tricky delivering to expected timescales without components, guess I need to start flexin.

;j

Storm
 
2009-04-24

no prob....

incidentally though in your "anti-component flasher UNITE!!" cause you'll have to take this out. This is me building a component from scratch to provide to agencies using our web services.

JLM
 
2009-04-24

Storm see if I was trying to maintain as2/as3 project then I would look at haXe because there are libraries that wrap some differences and allow you to compile both with some compiler switches. So it would make it much simplier to maintain a single documented interface, I think they can be wrapped as a swc.

Components can always be hacked can you not provide a powerful library that you may even provide as opensource, to work with your loaded swf. I freelance so I have to be willing to use components but if I was full time I would only consider flex for component rich structures, this is from having worked with XAML, I can see the use of a full XML layout but the odd component... my experiance is they just mess up the rest of my flash and are tricky to work with and difficult to control and complex beyond needs.

I see a move from components to opensource libraries with special limited licences ie.http://blog.greensock.com/tweenliteas3/

Storm
 
2009-04-24

agreed with everything you said and I have only briefly looked at Haxe (because of FlashDevelop) but have never used it. It is a good suggestion for sure. Thanks.

I am building this for our .NET team because they used have a set of documented methods they would provide and they found that the agency and internal Flash devs were all running in different directions with it and when things broke, it was the .NET guys called to fix it. I have been called in to find a "semi-locked" method where we don't expose the Web Service path nor any of the .NET functions (granted they can always find it) but our team doesn't want to support something it has no control over. Parameters get missed....function names typed wrongly...etc. So, my 'component' is meant to ensure the WSDL gets called properly, produces errors when they get something wrong, etc.. It works and it's not fool-proof but it should help aid some of the ridiculous calls that my team gets such as "I didn't get credit for a test." The dev obviously called the wrong function or whatever so now our team has to chase down who might have even built the darn thing.

Storm
 
2009-04-24

so in haxe, what sort of approach am I looking at to call functions on an external WSDL?

I went though the classes and there is nothing in haxe for quick WebService calls.

Storm
 
2009-05-06

Learned something.

I made my AS2 component. No problem. That all works.

I made my AS3 component. Installed it in Flash CS3. Opened the Component Library and the component shows up but also brings in Button, TextArea, TextField, and UIScroller. So, they all get imported along with the compiled MovieClip.

Copy and paste the MC into a blank file, recompile the SWC file from a blank AS document, reinstall it in CS3 and no more other components come with it.

Why did the SWC compiler grab any other classes from the main movie even though the component MC never references any? Weird....

Fixed but I learned something today.

Sorry, you must be a member to post to a conversation. Either log in or sign up to get involved.
TwelvestoneFlash

OOP Geniuses - project architecture questions