I think both sides of this debate have some valid points, although I'd lean a lot more strongly toward the "teach OOP later" approach. But it's still possible to create OOP code from the start in AS2 or AS3.
The fundamentals of programming are variables, expressions, control structures, and methods/functions/subroutines. In theory, you could start teaching about variables with a pretty simple class like so: package { class MyProgram { function MyProgram() { var text:String = "Hello, world!"; trace(text); } } } At this stage there'd be no point in explaining what the package, class, or function lines actually do--just say, "Don't worry about it; we'll get to that later." I think it would be pretty easy to just focus on the lines within the constructor. Once they have variables, expressions, and control structures down, you can introduce the idea of adding other functions. Once that's ingrained (maybe by the beginning of an intermediate class) you can start to show how code can be divided into classes and packages, how functions can have different scopes, etc., and they won't be totally weirded out by the new structure. Just my thoughts. In the end it probably doesn't make much difference whether you introduce the concepts via timeline code or simple, single classes, as above. The core concepts being presented would be the same, it's just a matter of whether you want to introduce them to the environment of OOP earlier or later. In either case, the concepts of OOP should come later. -- T. Michael Keesey Director of Technology Exopolis, Inc. 2894 Rowena Avenue Ste. B Los Angeles, California 90039 _______________________________________________ Flashcoders@chattyfig.figleaf.com To change your subscription options or search the archive: http://chattyfig.figleaf.com/mailman/listinfo/flashcoders Brought to you by Fig Leaf Software Premier Authorized Adobe Consulting and Training http://www.figleaf.com http://training.figleaf.com