اجاكس AJAX چيست؟




بررسی ابزارهای اوپن سورس در آجاکس
نگاهی به محصولاتی ازDojo , Zimbra ، یاهو ، گوگل و مایکرو سافت در زمینه آجاکس

اگر شما هم میخواهید که آژاکس (آجاکس) را به مجموعه جادویی وب بیافزایید و در سایت خود از آن استفاده کنید ، آنگاه دو گزینه کلی را پیش رو دارید:
نخست : خرید یک بسته آماده نرم افزاری
دوم: آزمودن یک کتابخانه کد باز یا Open source

سایت Info World تعدادی از بهترین و برجسته ترین مجموعه های نرم افزاری آجاکس را پوشش می‌داد و اکنون نیز توجه خود را به رقابت های کد باز (اوپن سورس) معطوف کرده است.
آیا این موضوع (جنبش اوپن سورس) برای سازمانها و توسعه دهندگان یک مزیت محسوب می شود ؟

در این مقاله به بررسی شش تا از مهمترین بسته های نرم افزاری مربوط به آجاکس می پردازیم...

مجموعه ای از کتابخانه های اوپن سورس را ،که من بررسی نمودم ، محدوده وسیعی از امکاناتی را که فن آوری آجاکس میتواند ارایه دهد را در بر می گیرد.

اما آجاکس چیست ؟

آژاکس (آجاکس AJAX) سرنام عبارت Asynchronous JavaScript and XML یا XML و جاوا اسکریپت (Java Script) غیر همزمان می‌باشد. که سرو کله آن در دنیای وب و اینترنت حدود یک سال است که پیدا شده. این اندیشه که جاوا اسکریپت را همراه یا بدون XML بکار برد تا قابلیت هایی همچون هوشمندی و تعاملی (Interactive) بودن با به صفحه وب افزود به روزهای نخست تولد وب (WEB) باز می‌گردد. اما اکنون آژاکس یا معادل مایکروسافتی آن Atlas ، بهترین شیوه برای آن است تا برنامه های تحت وب سمت کاربر(Client side) را با کمترین دردسر تولید کنیم.
اگر شما هم به این همه امکانات چه از نوع اوپن سورس آن و چه بسته های تجاری آماده ، علاقه مند هستید در پاسخ باید بگوییم که در بعضی موارد و نه همیشه این بسته های اوپن سورس پاسخگوی شما خواهند بود.
برخی از شناخته شده ترین و خوشنام ترین بسته های نرم افزاری آجاکس همچون : Backbase, JackBe, General Interface و Tibco's امکانات عالی برنامه نویسی را در کنار محیط توسعه پیشرفته در اختیار شما می نهند. ماژول های خبره برای رویدادها و دیباگر های (debug) حرفه ای نیز، بخشی از این امکانات هستند که با کمک آنها شما می‌توانید برنامه های کاملی را برای اجرا در محیط محدود و بسته مرور گر اینترنت خلق کنید.
برنامه هایی در حد و اندازه نرم افزارهای کامپایل شده تحت ویندوز (Native code) .

البته امکانات هیچ یک از مجموعه های اوپن سورس که من بررسی نمودم در قد و قواره بسته های تجاری نبودند اما این بدان معنا نیست که نکات ارزشمند و توانایی های برجسته ای در این مجموعه ها وجود نداشته باشد.

== انتخاب از میان شش گزینه اپن سورس ==

شاید گذر از نیم دو جین ابزار برتر معرفی شده در دنیای آجاکس با هزاران قابلیت برجسته و چشمگیر که توسط معتبر ترین شرکتهای دنیای فن آوری اطلاعات همچون یاهو ، گوگل و مایکروسافت صورت پذیرفته است کار ساده ای نباشد.
البته اطلس مایکروسافت یک پروژه با کدهای باز (اوپن سورس) نیست و در مجوز استفاده از آن محدویتهایی لحاظ شده است اما کدهایی که توسط آن تولید می‌کنید متعلق به خودتان است و می‌توانید مطابق با میل خودتان برای آن مجوز استفاده طراحی و صادر نمایید. لذا شما قادر خواهید بود تا نرم‌افزارهای اطلس مایکروسافت را نیز با وجود چند محدودیت کاربردی تولید و استفاده نمایید.
هر شش مجموعه ابزاری را که من مورد بررسی قرار دادم ، شماری از معمول ترین و پرکاربردترین اجزای مربوط به رابط کاربر (User interface) و سرویسهای پس زمینه ای آن را به خوبی ارایه می‌کنند تا شخص برنامه نویس وب ، بتواند به سادگی هر چه تمام ، نرم افزارهای مبتنی بر چارچوب (فریم ورک) آجاکس را ایجاد نماید.

این برای برنامه نویس ها بسیار جالب و خوشایند است که بتواند برنامه هایی را توسعه دهد که تنها نیاز به افزودن یک بخش کوچک یا بروزرسانی یک صفحه را دارند و نه کل پروژه.

اگر شما می خواهید که یک کنسول (پنجره) متحرک و یا یک جدول فعال (متصل به پایگاه داده) داشته باشید ؛ آجاکس گزینه مطلوب است. مثلا این قابلیت که شما جدول یا پانل نامبرده را کپی کنید و در جای دیگری بچسبانید. (Copy/Paste)
این مثالها نمونه هایی هستند از قابلیتهای اساسی آجاکس در یک صفحه وب.
خیلی اوقات نیاز است که شما برنامه هایی را توسعه دهید که با چارچوب تعریف شده اندکی متفاوت هستند. به نظر می رسد دلیل عمده توجه برنامه نویسان و توسعه دهندگان به مقوله اوپن سورس نیز همین مساله باشد. کدهای قابل ویرایش در مجموعه های اوپن سورس همواره توجه حرفه ای ها را برای ساده سازی - بهینه سازی و ارتقای کیفی آنها جلب می کنند.
برای نمونه با کمک برخی از این ابزارها من تنها در عرض چند دقیقه توانستم یک جدول دینامیک (پویا) از داده ها را با قابلیت مرتب سازی در سمت کاربر(کلاینت) ایجاد کنم !
اگر به امکانات موجود در نرم افزار بسنده کنیم مشکلی بوجود نمی آید اما هنگامی که می‌خواهیم کد ها را دستکاری کنیم و یا کاری را به گونه ای متفاوت انجام دهیم، امکان به هم ریختن و از کار افتادن برنامه وجود دارد و در این وضعیت راهنما و مستندات برنامه نیز دردی را دوا نخواهند کرد.
این چهره خشن اوپن سورس ها این هشدار را به توسعه دهندگان و برنامه سازان میدهد که پیش از بهره‌برداری از برنامه های اوپن سورس بایستی ملاحظات مربوط به محیط مورد استفاده کاربر را در نظر بگیرند.
به بیان دیگر اگر شما وقت و توان کافی دارید و یا برنامه نویس تفننی هستید استفاده از امکانات اوپن سورسها همچون انعطاف پذیری و آزادی عمل یک انتخاب فوق العاده خواهد بود.
اما اگر تازه کارید و یا توان رویارویی با پیچیدگی های کدهای آزاد را در مجموعه های اوپن سورس ندارید و یا از نظر زمان اجرای پروژه هایتان محدودیت دارید ، پیشنهاد می شود با ملاحظات مربوط به هزینه و کارآیی ، هم گزینه‌های رایگان (اوپن سورس) و همچنین محصولات تجاری و حرفه ای را همزمان مد نظر قرار دهید.