جعبه‌ ابزار وب گوگل
Feed در روز چهارشنبه 14 مهر 89 ساعت 00:19
http://eskafi.com/

حامد کریم‌قاسمی
اگر می‌خواهید قابلیت‌های وب 2 را بهتر در طراحی‌هایتان به كار گیرید تا بینندگان صفحات وب بتوانند با سایت تعامل بیشتری داشته باشند، ناگزیرید از زبان‌های برنامه‌نویسی جاوااسكریپت و اِی جَكس استفاده كنید. اما یادگیری این دو برنامه دشوار به نظر می‌رسد، از طرفی این دو مشكلات خاص خودشان را دارند. برای مثال صفحات وبی را كه با آنها طراحی می‌كنید باید برای مرورگرهای مختلف بهینه كنید.

جعبه ابزار وب گوگل (Google Web Toolkit) یا به اختصار گوِت (GWT)، مجموعه‌ای از ابزارهای متن‌باز است كه به طراحان وب امكان می‌دهد نرم‌افزارهای جاوااسكریپت پیچیده را با زبان برنامه‌نویسی جاوا خلق و پشتیبانی كنند. گوگل اولین نسخه گوت را سال 2006 در كنفرانس جاوا وان معرفی كرد. این جعبه ابزار رایگان است اما دسترسی به آن از ایران به علت تحریم ممكن نیست. می‌توانید آن را از سایت‌های فارسی‌زبان یا به كمك نرم‌افزارهای تغییردهنده آی‌پی دانلود كنید. طراحان وب با استفاده از گوت می‌توانند به سرعت نرم‌افزارهای ای جكس را با زبان برنامه‌نویسی جاوا و با استفاده از ابزارهای جاوای دلخواهشان طراحی و اشكالات آن را برطرف كنند، چرا كه برنامه‌نویسی و عیب‌یابی برنامه‌ها در جاوا ساده‌تر است. پس از اینكه نرم‌افزار طراحی شد، كامپایلر گوت نرم‌افزارهای جاوا را به فایل‌های جاوااسكریپت مستقل ترجمه می‌كند. به عبارت دیگر گوت امكان برنامه‌نویسی جاوااسكریپت را در جاوا برای طراحان وب فراهم كرده است و كدهای جاوا را به جاوااسكریپت، اچ‌تی‌ام‌ال و سی‌اس‌اس ترجمه می‌كند تا به راحتی در مرورگرهای وب اجرا شوند.

پس گوت علاوه بر اینكه طراح را از یادگیری جاوااسكریپت بی‌نیاز می‌كند، خروجی آن با تمام مرورگرهای مطرح وب سازگار است. به همین دلیل برنامه‌نویس می‌تواند تمركز بیشتری روی كدنویسی داشته باشد و دیگر نگران سازگاری با مرورگرها نباشد.

بهتر است برای روشن شدن لزوم استفاده از قابلیت‌های ای جكس و جاوااسكریپت توضیح مختصری از هر یك ارائه شود. جاوا زبان برنامه‌نویسی شی‌ءگرایی است كه ضریب اطمینان عملكرد برنامه‌های نوشته‌شده به این زبان بالاست و این برنامه‌ها وابسته به سیستم عامل خاصی نیستند. به عبارت دیگر می‌توان آنها را روی هر رایانه با هر نوع سیستم عاملی اجرا كرد. جاوااسكریپت برخلاف شباهتش ارتباطی با جاوا ندارد. یك زبان برنامه‌نویسی تابعی است كه كاربرد اصلی آن در طراحی سایت‌های اینترنتی و اجزای HTML است.

ای جكس یك فناوری مجزا نیست بلكه مجموعه‌ای است از استانداردها و فناوری‌های وب همچون XHTML، XML، CSS، جاوااسكریپت و... كه به كمك آنها می‌توان برنامه‌هایی مبتنی بر وب تولید كرد كه به آسانی با كاربران تعامل داشته باشند. مهم‌ترین مزیت معماری ای جكس این است كه دیگر برای انجام هر كاری لازم نیست صفحه وب دوباره بارگذاری شود. ای جكس با استفاده از جاوااسكریپت بدون نیاز به بارگذاری مجدد صفحه با سرور ارتباط برقرار می‌كند. جی‌میل، گوگل‌مپ و نرم‌افزارهای گفت‌وگوی اینترنتی از این قابلیت بهره می‌برند. با توجه به این، منطقی است كه از محیط كم‌خطا و مطمئن جاوا برای دسترسی به قابلیت‌های ای جكس كه در واقع شامل جاوااسكریپت هم می‌شود استفاده كرد و این كاری است كه گوت انجام می‌دهد. البته باید توجه كنید موتورهای جست‌وجو توانایی فهرست كردن برنامه‌های ای جكس و به عبارتی گوت را ندارند. از طرفی اگر كاربر قابلیت جاوااسكریپت مرورگرش را غیرفعال كند، برنامه نوشته‌شده با گوت را نخواهد دید. گوت از سه بخش اصلی تشكیل شده است. مترجم جاوا به جاوااسكریپت كه پیشتر به آن اشاره كردیم مهم‌ترین بخش این جعبه ابزار است كه از گوت ابزاری قدرتمند برای طراحی برنامه‌های وب می‌سازد. بخش دوم مجموعه برنامه‌های شبیه‌ساز محیط جاواست كه مترجم گوت به آن نیاز دارد. گوت به هر آنچه جز این نیاز دارد در بخش سوم به نام مجموعه برنامه‌های رابط كاربری دسترسی پیدا می‌كند. پیش از شروع كار با گوت بهتر است مفهوم چند كلمه را كه در آن تكرار خواهد شد بدانید. ماژول: پیكربندی هر برنامه مجزا را در گوت كه بر اساس XML است ماژول می‌نامند. صفحه میزبان: برنامه‌های گوت برای بارگذاری و راه‌اندازی به صفحات اچ‌تی‌ام‌ال معمولی نیاز دارند. به این صفحات میزبان می‌گوییم. پشتیبانی میان‌مرورگری: همان طور كه گفتیم یكی از دغدغه‌های اصلی طراح وب سازگار كردن برنامه‌ها با مرورگرهای مختلف است كه این قابلیت گوت به طور خودكار برنامه‌ها را برای مرورگرهای رایج بهینه می‌كند. برنامه‌های نوشته شده با نسخه‌های فعلی گوت در مرورگرهای اینترنت اكسپلورر، فایرفاكس، سافاری و اپرا نتیجه یكسانی خواهند داشت. برنامه‌های جعبه ابزار گوگل به تنهایی قابل نصب و استفاده نیستند و باید آنها را در یكی از این دو حالت راه‌اندازی كنید؛ با میزبانی ماشین مجازی جاوا كه به شما امكان استفاده از تسهیلات عیب‌یابی جاوا را می‌دهد یا حالت وب كه در آن برنامه شما به طور مستقل و با استفاده از مترجم جاوا به جاوااسكریپت گوت به شكل جاوااسكریپت و اچ‌تی‌ام‌ال اجرا می‌شود. پیش از راه‌اندازی گوت باید ابزارهای برنامه‌نویسی جاوا (Java SDK) و آپاچی انت (Apache Ant) را روی سیستم عامل رایانه خود نصب كنید. مراحل نصب و راه‌اندازی گوت و چگونگی نوشتن برنامه‌ها با آن در آدرس http://code.google.com/webtoolkit/gettingstarted.html توضیح داده شده‌اند. هنگامی كه برنامه‌ای طولانی و پیچیده می‌نویسید عیب‌یابی آن دشوار خواهد شد. اگر جعبه ابزار گوگل را در ماشین مجازی جاوا راه‌اندازی كرده باشید كدها به جای كامپایل شدن به جاوااسكریپت درون ماشین مجازی جاوا ترجمه می‌شوند و شما می‌توانید به راحتی با عیب‌یاب جاوا مشكلات برنامه را برطرف كنید. در طراحی رابط كاربری برنامه‌ها و سایت‌ها سه عامل قابل ملاحظه وجود دارد؛ عناصر رابط كاربری، قالب و رفتار. عناصر یك محیط كاربری همان اجزای بصری هستند كه كاربر با آنها روبه‌رو می‌شود. قالب تعیین می‌كند كه این اجزا چطور در صفحه نمایش قرار گیرند و رفتار مشخص می‌كند كه این اجزا هنگام تعامل با كاربر چه واكنشی از خود نشان دهند. راه‌های گوناگونی برای اعمال كردن این سه عامل در یك برنامه وجود دارد؛ از استفاده از برنامه‌های شیءگرا چون جاوا گرفته تا استفاده از جاوااسكریپت و اچ‌تی‌ام‌ال. گوت از الگوی شیءگرای خودش برای ساختن رابط‌های كاربری استفاده می‌كند و اینجاست كه گوت قدرت خود را در پل زدن بین دنیای جاوا، اچ‌تی‌ام‌ال و جاوااسكریپت نشان می‌دهد. شما تنها كافی است دانش جاوایتان را گسترش دهید، بقیه ماجرا را به گوت بسپارید. گوت برای ارتباط صفحات وب و برنامه‌ها با سرور از دو حالت استفاده می‌كند: بیسیك ای جكس و آرپی‌سی. بیسیك ای جكس برای انتقال پیام‌ها بین سرور و مرورگر كاربر از جاوااسكریپت و دی‌ا‌چ‌تی‌ام‌ال استفاده می‌كند كه كاربر گوت نیازی به دانستن آنها ندارد. آرپی‌سی از قابلیت‌های جاوا بهره می‌برد و هر چند طراح مجبور است تمام پیام‌هایی را كه باید رد و بدل شوند، برنامه‌ریزی كند اما دستش در انتخاب زبان سرور باز است. البته به این شرط كه آن زبان از ارتباطات ای جكس پشتیبانی كند. در گوت كافی است طراح رابطی برای ارتباط با سرور تعریف كند. گوت منتقل‌كننده پیام‌ها را برای وی طراحی می‌كند و برنامه‌نویس كافی است آدرس سرور را به آن بدهد. گوت برای بخش سرور كه به پیام‌ها پاسخ می‌دهد از سرولت‌های جاوا بهره می‌برد. این سرولت‌ها ابزاری برای در دسترس قرار دادن محتوای پویا روی وب هستند. سرولت‌ها می‌توانند تقاضاهای مطرح‌شده در پیام‌ها را دریافت و پاسخی درخور به آنها ارائه كنند.

پس از طراحی هر برنامه بهتر است طراح آن را بیازماید. آزمودن برنامه‌ها معمولاً در سه مرحله انجام می‌شود، مرحله اول آزمودن واحدهای برنامه است. در این مرحله طراح تك‌تك ماژول‌ها را در محیطی شیءگرا آزمایش می‌كند. در مرحله دوم طراح درستی عملكرد كل برنامه و واكنش آن را در تعامل با كاربر می‌سنجد. مرحله سوم هم اغلب برای انتشار برنامه‌های تجاری از طرف شركت‌های خاص انجام می‌شود. گوگل قابلیتی به نام محك زدن (بنچمارك) در جعبه ابزارش گنجانده است كه برنامه‌ها را با داده‌های مختلف در مرورگرهای گوناگون اجرا می‌كند و نتیجه عملكرد برنامه را در هر مرورگر به طراح ارائه می‌كند. طراح می‌تواند كارایی برنامه را در هر مرورگر بسنجد و در صورت لزوم برنامه‌اش را برای كار در مرورگر خاصی بهینه كند. مدت‌هاست طراحان و برنامه‌نویسان وب تلاش می‌كنند نرم‌افزارهایی تحت وب تولید كنند كه با سرعت نرم‌افزارهای دسكتاپ اجرا شوند، اما كاستی‌های هر یك از زبان‌های برنامه‌نویسی همواره مشكلاتی را پیش روی طراحان گذاشته ‌است. امید است برنامه‌هایی همچون جعبه ابزار وب گوگل بتوانند با تركیب قابلیت‌های زبان‌های مختلف برنامه‌نویسی مشكلات را از سر راه برنامه‌نویسان و طراحان وب بردارند.