List,

This is great that ActionScript is growing over time and with new AS
version 3 many OOP concepts are now much easier to implement. 
Creating real encapsulation with new 'final', 'const', 'private' and
'protected' keywords or true polymorphism with 'override' are great
features, it was however inconceivable that a modern programming language
like ActionScript would not use modern OO model, design and technique.

I would like to share with you concepts that I think need to be
resolved/added in a language like AS3 for real OO model:

-Ugly and high risk use of _global is still part of AS3, I don't
understand why creators of ActionScript made access to language elements
like global Functions and Constants by placing them all in _global object
(and I don’t know what kind of object it is). Even worse, placing AS2/AS3
packages and classes as sub-objects of _global when compiled can ruin the
whole programming model!

-Ain't inner classes play important role in modern languages like Java or
C#? In fact they are part of AS language and *are* possible in AS1. I
wonder why they have omitted inner classes as part of AS2/AS3? (it is only
compile-time issue)

-I've always said that 'method signatures' and what is referred to as
'overloading resolution' should be part of the language so that we can get
rid of ugly use of 'arguments' object or type checking within methods and
I've bombarded macromedia wish-list with it, still no success;)

-Maybe generic programming (that were introduced in JDK 5.0 of Java
Specification) should be added in the language as they play an important
role in OO and are desirable because they let you write code that is safer
and easier to read than code that is littered with Object variables and casts.

Any thoughts that we can share? Anybody from macromedia/adobe listening?


Kamyar Nazeri
[EMAIL PROTECTED]

www.exirsoft.com
www.exirstudio.com


_______________________________________________
Flashcoders mailing list
[email protected]
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

Reply via email to