سلام ، ببینید از وقتی که Adobe شرکت Micromedia رو خرید تحول بزرگی در زمینه اکشن اسکریپت فلش به منظور تبدیل کردن اون به یک زبان برنامه نویسی شی گرا (OOP) ایجاد کرد . اکشن 2 از قوائد برنامه نویسی OOP بهره نمی برد و در واقع مثل آش هست
(به قول یکی از بزرگان این انجمن) یعنی هر چی بخوای می ریزی توش و منسجم و سازمان یافته نیست . ولی در اکشن 3 شما روی کدهاتون تسلط و مدیریت خوبی دارید و دسترسی به قسمت های مختلف شبکه کدتون خیلی راحته ، البته این یکی از ویژگی های اولیه اکشن 3 هست و جزء ویژگی های حیاتی اون نیست . در مورد زیاد شدن تعداد خطوط برنامه باید بگم در بعضی موارد ابتدایی و بیسیک حق با شماست مثل مثالی که خودتون زدید ، اما در بسیاری از موارد کار رو بسیار خلاصه و راحت می کنه (کدهای حرفه ای تر ) به مثال زیر توجه کنید :
PHP:
Object1.addEventListener(MouseEvent.CLICK,Reposition)
Object2.addEventListener(MouseEvent.CLICK,Reposition)
Object3.addEventListener(MouseEvent.CLICK ,Reposition)
function Reposition(evt:MouseEvent):void
{
evt.target.x +=10
}
در این مثال شما روی هر آبجکتی که به اون EventListener بدید و روش کلیک کنید 10 پیکسل به x اون اضافه می شه . البته این هم یک مثال ساده بود ، کاربردهای حرفه ای ترش توی کار با کلاس های مختلف و توسعه و گسترش اوناست (از مهم ترین اصول OOP ) .
اینم از کد جایگزین برای مثال شما در اکشن 3 :
PHP:
MyButton.addEventListener(MouseEvent.CLICK ,Stoper)
function Stoper(evt:MouseEvent)
{
stop()
}
موفق باشید .