آيا Amethyst (کوارتز بنفش) در ويژوال استوديو توان رقابت با Silverlight را دارد؟
آيا Amethyst (کوارتز بنفش) در ويژوال استوديو توان رقابت با Silverlight را دارد؟
Amethyst چيست؟
نرم افزار sapphireSteel در حال حاضر يک IDE جهت برنامه نويسي Ruby توليد مي نمايد پس چه لزومي دارد که يک IDE ديگر بسازيم؟ اين يک تغيير بزرگ است، اينطور نيست؟
مي خواهم توضيح بدهم که وقتي صحبت از ويژوال استوديو به عنوان يک platform مي باشد. منظور چيست. بيشتر کاربران ويژوال استوديو را به عنوان يک IDE با توان پشتيباني تعداد مشخصي از زبانهاي برنامه نويسي مي شناسد. در حقيقت اين همه توانمندي آن نيست. ويژوال استوديو SDkهاي بسيار و پيچيده اي دارد که باعث شده است که در سطح گسترده اي براي پشتيباني ديگر زبانهاي برنامه نويسي نيز به کار گرفته شود. گستردگي آن به حدي است که گويا شما با يک سيستم عامل کار مي کنيد نه به يک IDE، در شروع با نگاهي اجمالي به Flash به عنوان سيستم طراحي خيلي ساده مورد استفاده براي Roby آغاز و سپس با نگرش آن به عنوان سيستمي پيشرفته قابل استفاده در زبانهاي برنامه نويسي C و ويژوال بيسيک ادامه مي دهيم. اين سير راه گشايي است به چگونگي ايجاد mrthyst.
Amethyst شامل يک طراح ويژوال براي Flex است. شما چگونه کاربري آنرا جهت استفاده در ويژوال استوديو مديريت مي کنيد؟
ما امکان استفاده از يک طراح فرم (Form Generator) از ميکروسافت را براي کدنويسي ActionScript در نظر گرفتيم. اين راه ساده اي به نظر مي رسيد. اما چندان رضايت بخش نيست. طراح هاي ميکروسافت براي يک چيز، لزوماً تمام مؤلفه هاي مشابه و لازمه مانند Flex را در اختيار ندارند. در نهايت به اين نتيجه رسيديم که رضايت بخش ترين حالت براي اجراي يک طراح Flex نوشتن برنامه آن در Flex است که البته بخودي خود يک مشکل ايجاد مي کند و آن اينکه چگونه يکه طراح flex را در محيط ويژوال استوديو به کار بگيريم؟ اين گاهي اوقات ما را کاملاً بدون اينکه کاري انجام پذيرد با خط پايان شکست مواجه مي ساخت.
آغاز به کارگيري designer در ويژوال استوديو شروع مسائل بود. يک بار به اين نتيجه رسيديم که هنوز بايستي راه هاي ساخت يک designer منطبق با تمامي پنجره ها و نوار ابزار ويژوال استوديو را جستجو کنيم (شکل1).
ما قصد داشتيم اين امکان را به کاربر بدهيم که مؤلفه هاي Flex را از جعبه ابزار ويژوال استوديو Drag نموده و آنها را مستقيماً درdesigner خود Drap نمايد. يک بار کنترل ها به يک طرح اضافه شدند، امکان جابجايي و تغيير اندازه با ماوس، صفحه کليد يا ابزار layout ويژوال استوديو بوجود آمد. وقتي يک مؤلفه انتخاب مي شد، امکان تغيير خصوصيات آن مؤلفه از پنجره خصوصيات ويژوال استوديو امکان داشت. اينها چالش هايي بود که در برابر ما وجود داشت.
ما تلاش هاي زيادي براي ساخت طرح Amethyst کرده ايم. به عنوان مثال در Amethyst کاربر مي تواند با دو کليک ماوس يا بر روي رويداد نامگذاري شده در پنجره رويدادها يا بر روي يک مؤلفه مربوط در محيط طراحي يک عملگر رويدادگر در ActionScript ايجاد کند. اين مسير دقيقاً همانند آن چيزي است که در C يا VB بکار گرفته شده است لذا کاربران بلافاصله پس از بارگذاري Amethyst مي توانند شروع به ساخت Flex application نمايند.
تلفيق Amethyst Designer يکي از مهمترين چالش هاي فني اين پروژه بود. صراحتاً بايد گفت که اگر ما Desihner را حذف مي کرديم، Amethyst يکسال زودتر ايجاد مي شد، ليکن همانطور که گفته شد، اين آن چيزي که ما مي خواستيم نبود.
چرا يک DEVELOPER ويژوال استوديو يا دات نت به Flash يا Flex علاقمند است؟ آيا sliverlight جايگزين مناسبي نيست؟
تاکنون، جهت ساخت RIA Applications فقط WPF مايکروسافت Sliverlight, (windows Persentation Foundation) تنها انتخاب هاي قابل دسترس کاربران ويژوال استوديو بود. ليکن اکنون Amethyst انتخاب ديگري در اختيارشان قرار مي دهد.
برنامه flash Builder متعلق به Adobe هنوز مسلم ترين IDE است، چرا کسي Amethyst را انتخاب نمي کند؟
هيچ اشکالي Eclipse وجود ندارد. اما کاربران حرفه اي ويژوال استوديو هنوز تمايل دارند در اين محيط کار کنند. بسياري از کاربران بجاي جايگزيني يک IDE متفاوت تمايل دارند زبان برنامه نويسي خود را تغيير دهند تا در VS پشتيباني شود. علاوه بر اين تکنيک هاي خاصي وجود دارد که ويژوال استوديو راحتي در دسترس کاربران قرار مي دهد به عنوان مثال، کنترل Source از طريق زير:
TeamServer
MSBuild
IIS web Server
Visual Studio Development Server و غيره.
علاوه بر اين، ويژوال استوديو قدرت ساخت پروژه هاي ترکيبي را که زبانهاي مختلف مانند C و ويژوال بيسيک و قالبهاي مختلف مانند Window Forms, Silverlight, ASP.NET و غيره بطور همزمان در آنها استفاده مي شود، به کاربر مي دهد.
اين امکان در ساتفاده از Flash Builder موجود نيست. اين در حالي است که در Amethyst امکان پذير مي باشد. پروژه هاي IDE Flash , Flex, AIR مشتمل بر تحليلگرهاي ويژوال استوديو مانند C , VB و پروژه هاي ASP مي باشند.
در هنگام کار با Amethyst Developer آيا پروژه ها قفل مي شوند؟ آيا اين يک خطر محسوب نمي شود؟
اين به اين معناست که يک تيم Flex developers مي توانند با استفاده از Amethyst و Flash Builder بر روي يک پروژه واحد با يک فهرست يکسان کار کنند.
Amethyst همچنين يک وارد کننده FLA جهت اشتراک با يک پروژه Flash IDEدارد. بنابراين ويرايش debugging مي تواند هم از Flash IDE و هم از Amethyst انجام شود.
Amethyst و debugger منحصر به خود دارد. اين چه تفاوتي با Adobe debugger دارد؟
با استفاده از Amethyst Cylon شما مي توانيد نقاط انفصال ساده ايجاد کنيد. قرار داشتن يک call-stack قابل مکان يابي، پنجره هاي مشاهده اي، يک پنجره local و يک پنجره سريع در Amethyst Cylon کمک زيادي به کاربر مي کند. متغيرها مي توانند با Drag & Dropاز ويرايشگر به پنجره مشاهده اي منتقل کردند. پنجره مشاهده اي شامل intellsi Sence مي باشد، بنابراين کاربر مي تواند عبارت را ارزيابي نمايد. موجوديت هاي پيچيده مي توانند در پنجره هاي Debug و يا در Code Editor باز شده و بررسي گردند.
Amethyst Cylon حتي مي تواند عمل debugging را بر روي SWFهاي چندگانه اعمال نمايد و امکاني شنيداري براي بيان اينکه زماني که يک SWF مثل يک Web browser در حال بارگذاري است، Debugging چگونه در حال انجام است در اختيار گذاشته است. اين امکان براي کسي که در حال Debugging يک application مشتمل بر SWFهاي چندگانه مي باشد بسيار مفيد باشد(شکل2). همچنين امکان Debugging گام به گام بر روي رشته کدهاي مختلف در نقاط انفصال مجزا حاصل آمده است.
آيا Amethyst توانمندي خاصي در ويرايش يک ActionScript دارد؟
Amethyst يک سري فوق العاده از آپشن هاي ساخت و طراحي C را شامل مي شود. علاوه بر امکانات پيش فرض مايکروسافت ( از قبيل rename, extract method, encapsulate field using getters/setters, extract interface, promote local veriale to parameter, remove paremeters, reorder parameters)، آمتيست همچنين جابجايي به pachage را پشتيباني مي نمايد. کليه مشخصات از قبيل نام کلاس، نام فايل و مراجع به همراه جابه جايي از يک pachage به package ديگر انتقال داده مي شوند. يک پنجره پيش نمايش (preview) جهت نمايش و بررسي تغييرات و قبل از اعمال در اختيار کاربر قرار داده شده است.
آيا Amethyst براي پروژه هاي بزرگ تيمي مناسب است؟
قيمت Amethyst چقدر است؟ آيا ويرايش رايگان آن نسخه آزمايشي از آن در اختيار مي باشد؟
بازسازي و ويژوال designer در ندارد. همينطور اين نسخه تقليل يافته از Adobeُ s FDB debugger به جاي Cylon استفاده کرده و فقط بخش کوچکي ازdebugger Cylon را در اختيار دارد. براي مثال کاربر نمي تواند شرايط مختلف در گروه بندي هاي زير در Source را اعمال نمايد.
حالا شما Amethyst را ارائه کرده ايد؛ در آينده چه اقدامي در دست داريد؟
همچنين ما در برنامه آتي خود، علاوه بر Amethyst ساخت تعدا ابزار Flash development جديد را مدنظر قرار داده ايم. شايد شروع اين برنامه تا سال آينده انجام نپذيرد اما بهر جهت در حال حاضر ما به طور کامل بر روي Amethyst تمرکز داريم.
منبع: نشريه بزرگراه رايانه، شماره 141.
{{Fullname}} {{Creationdate}}
{{Body}}