شعیب سعید شوبی
محفلین
ایکشن اسکرپٹ کیا ہے؟
What is ActionScript
ایکشن اسکرپٹ میکرومیڈیا (جو اب ایڈوبی میں ضم ہوچکی ہے) کی تخلیق ہے۔ اسے 1999 ء میں میکرومیڈیا نے فلیش 4 کے لئے تخلیق کیا تھا۔ ایکشن اسکرپٹ کا اوّلین ورژن1999 ء سے 2004 ء تک جاری رہا۔ آخرکار فلیش 8 منظر عام پر آیا۔ فلیش کے ورژن 8 کے ساتھ ہی ایکشن اسکرپٹ 2 کو متعارف کرایا گیا۔اس وقت یہی ورژن سب سے زیادہ استعمال کیا جارہا ہے۔ 2007 ء میں ایڈوبی نے میکرومیڈیا کو خرید لیا۔ حال ہی میں ایڈوبی نے فلیش CS3 (ورژن 9 ) کو متعارف کرایا ہے۔ فلیش CS3 کے ساتھ ہی ایکشن اسکرپٹ 3 کو بھی متعارف کرایا گیا ہے۔یہ ایکشن اسکرپٹ کی اب تک کی سب سے پیچیدہ مگر انتہائی طاقتور پروگرامنگ لینگویج ہے۔ What is ActionScript
ایکشن اسکرپٹ کا تعارف
ایکشن اسکرپٹ کا نحو (Syntax):
ایکشن اسکرپٹ کا نحو بڑا نرالا ہے۔ نحو کی تین اہم علامات یہ ہیں:
{ } یہ کوڈ کے اختتام کو ظاہر کرتے ہیں۔ یہ فلیش کو بتاتے ہیں کہ آگے کچھ نہیں اس لئے رُک جاؤ!
; یہ کسی بیان (statement) کے اختتام کو ظاہر کرتا ہے۔مثال کے طور پر آپ یوں سمجھیں کہ اردو زبان میں کسی جملے کے اختتام پر (۔) ظاہر کرتا ہے کہ جملہ ختم ہوچکا ہے۔ بالکل یہی صورتحال ایکشن اسکرپٹ کی اس علامت کی ہے!
( ) یہ کسی خاص چیز کو ظاہر کرتے ہیں۔ مثلاً کسی خاص عمل یا عدد کو۔ ۔ ۔ مثال کے طور پرذیل میں ایک مکمل ایکشن اسکرپٹ کوڈ کو ظاہر کیا گیا ہے!
کوڈ:
[LEFT]on (press) {
gotoAndPlay(2);
}
[/LEFT]
ٓآئیے اس کوڈ کی تشریح کرتے ہیں:
اس کوڈ میں پہلی سطر سے مراد یہ ہے کہ جب آپ بٹن پر کلک کریں تو فلیش کوئی ’’کام‘‘ کرے (کام اگلی سطر کی تشریح میں آئے گا)۔ ۔ ۔ نوٹ کیجئے کہ لفظ ’’Press‘‘ بریکٹس کے اندر ہے ۔ اس لئے یہ ایک ایکشن یا عمل ہے۔ نوٹ کریں کہ اس کے فوراً بعد دائیں رُخ پر خمدار بریکٹ موجود ہے۔ یہ فلیش کو مطلع کررہا ہے کہ اگلی سطر میں موجود ’’کام‘‘ کے لئے تیار رہو!۔ ۔ ۔ فالحال کام کو نظرانداز کرتے ہوئے ہم آگے بڑھتے ہیں۔دوسری سطر میں موجود عدد کو ظاہر کرنے کے لئے بریکٹس کو استعمال کیا گیا ۔ ۔ ۔ اور سیمی کالن کو جملے کے اختتامیہ کے طور پر استعمال کیا گی ہےا۔ ۔ ۔ اسی طرح بائیں رُخ پر خمدار بریکٹ ظاہر کر رہا ہے کہ کوڈاختتام پزیر ہو گیا ہے۔
ڈاٹ سنٹیکس (Dot Syntax):ایکشن اسکرپٹ میں ہم نقطے یا dot کو کسی چیز کی خصوصیات (Properties) سے علیحدہ کرنے کے لئے استعمال کرتے ہیں۔ مثال کے طور پرذیل کی مثال دیکھئے:
کوڈ:
_root.car
بیانات (Statements):
یہاں بیانات سے مراد سیاسی بیانات نہیں ہیں جو عوام کی آنکھوں میں دھول جھونکنے کے لئے سیاستدان دیا کرتے ہیں!۔ ۔ ۔ بلکہ یہاں بیان سے مراد وہ ہدایت ہے جس پر عمل کرنے کو کہا جارہا ہے۔ ایکشن اسکرپٹ میں ایک بیان سے لے کر کئی بیانات ہوسکتے ہیں۔ ۔ ۔ فلیش پلیئر بیانات کو اوپر سے نیچے کی طرف پڑھتا ہے ۔ ۔ ۔ مگر آپ’’اگر بیانات‘‘ ( if statement) اور ’’چکر‘‘ (loop) کی مدد سے اس ترتیب کو اُلٹ بھی سکتے ہیں!
دلائل (Arguments):
دلیل سے مراد ویلیو ہے جو کسی عمل یا فعل سے متعلق ہو۔ ۔ ۔ مثال کے طور پراس کوڈ کو یاد کیجئے جس کا ذکر اوپر گزرا ہے۔
کوڈ:
[LEFT]on (press) {
gotoAndPlay(2);
}
[/LEFT]
کوڈ کی تشریح کرتے ہوئے ہم نے دوسری سطر میں موجود gotoAndPlay کو نظر انداز کردیا تھا۔ اب ہم انکشاف کرتے ہیں کہ یہ ایکشن اسکرپٹ میں ’’دلیل‘‘ کہلاتا ہے ۔ دلیل کی ویلیو بصورت حروف بھی ہوسکتی ہے اور بصورت ا عداد (expressions) بھی۔ ۔ ۔ حرفی ویلیوکوInverted Commas(" ") کے اندر رکھا جائیگا اور عددی ویلیو کو ان کے بغیر!۔ ۔ ۔ مثال ملاحظہ کریں:
کوڈ:
[LEFT]on (press) {
gotoAndStop("Scene 2", 1);
}
[/LEFT]
اس مثال میں Scene 2" " ایک حرفی ویلیو ہے اور ۔" " کے اندر رکھی گئی ہے۔ ۔ ۔ 1 ایک عددی ویلیو ہے اس لئے ان کے بغیر ہے۔ ۔ ۔ !
آراء (Comments):
اگر آپ اپنے کوڈ کی تشریح کرنا چاہتے ہیں تاکہ مستقبل میں اس کوڈ کا مصرف یاد رکھ سکیں تو اپنے کوڈ میں آراء کا استعمال ضرور کیجئے!۔ ۔ ۔ فلیش پلیئر فلیش مووی کو چلاتے وقت آراء کو نظر انداز کر دیتا ہے چنانچہ آراء کا کوڈ پر کوئی برا اثر نہیں پڑتا!۔ ۔ ۔ ایک اسکرپٹ میں آراء کو اس طرح لکھا جاتا ہے:
//
کوڈ:
This is a single line comment.
/* This is a multi line comment */
چنانچہ اگر آپ ایک سطر پر مشتمل رائے لکھنا چاہتے ہیں تو اوپر والی مثال کے مطابق رائے لکھیں اور اگر آپ ایک سے زائد سطور پر مشتمل رائے لکھنا چاہتے ہیں تو نیچے والی مثال کے مطابق رائے لکھیں۔
اختتام:
اس طرح ایکشن اسکرپٹ پر یہ مختصر سا مضمون اپنے اختتام کو پہنچا۔ اُمید ہے اس چھوٹے سے ایکشن اسکرپٹ کے تعارف سے کم از کم آپ یہ ضرور جان گئے ہوں گے کہ فلیش میں ایکشن اسکرپٹ کا کردار کیا ہے؟۔ ۔ ۔ اور ایکشن اسکرپٹ آخر کیا بلا ہے؟ ۔ ۔ ۔ انشاء اللہ کسی روز فلیش کے مزیدکسی نئے مضمون کے ساتھ حاضر ہونگا۔ ۔ ۔ فی امان اللہ!
*******************