|
معرفی کتاب
انتظار طولاني مخاطبين براي دانلود صفحات وب، يكي
از مهمترين دلايل پايين آمدن تعداد مراجعه كنندگان به يك سايت است. در شرایط
کنونی، که رقابت شدیدی در خصوص جلب بازدیدکننده بیشتر بهسوی وبسایتها بهراه
افتاده است، رسیدن به این هدف ازطریق تکنیک های فنی که نسبت به دیگر روش ها
بسیار کمهزینهتر و در دسترستر است، بسیار لذتبخش می باشد.
تكنولوژي Ajax فناوري جديدي است كه به كمك آن ميتوان خروجي يك برنامه تحت وب
را طوري ساخت كه وقتي كاربر روي دكمه يا لينكي كليك ميكند، كليه عمليات ارسال
اطلاعات و دريافت نتايج در پشت صحنه انجام شود و فقط آن قسمت از صفحه كه قرار
است اطلاعات جديد را به نمايش درآورد تغيير كند بدون اينكه تمام صفحه از نو
بارگذاري شود.
در واقع در Ajax به جاي آن چندين درخواست كوچك و متناوب به سرويسدهنده فرستاده
شده و پاسخهايي شامل اجزاي كوچكي از داده به سرويس گيرنده برگشت داده ميشود.
با ارائه ايده Ajax اميد دستيابي به رفتار كاربر پسند براي برنامههاي تحت وب
افزايش يافت.
رضا ولي نژاد برنامهنويس و طراح وبسايت با ترجمهايي روان كتاب Ajax تاليف
جرمي كيت، را كه توسط انتشارت جهاد دانشگاهي مشهد به چاپ رسيده است در اختيار
علاقمندان به اين تكنيك جديد و پركاربرد طراحي صفحات وب قرار داده است. آژاکس
تلفیقی از تکنیکهای مورد استفاده در JavaScript و هر زبان سمت سرور (PHP، ASP،
ASP.NET، JSP، Perl، …) است که با استفاده از آن صفحات وب تعاملپذیرتر
میگردند. در وبسایتهای سنتی با هر کلیک، کل صفحه وب از نو بارگذاری می شود
اما با آژاکس، کل صفحه باقی ميماند و فقط بخشی از آن تغییر میکند. از نگاه
کاربران، آنها زمان کمتری برای گرفتن اطلاعات لازم منتظر میمانند. بههمین
خاطر است که Gmail محبوبیتی بیشاز دیگر ارائهدهندگان ایمیل رایگان کسب نموده
است. از نگاه برنامهنویسان و صاحبان وبسایتها، آژاکس باعث ورود تعداد زیادی
بازدیدکننده به وبسایتهایشان می گردد. با اینهمه، پیادهسازی آژاکس برای
توسعهدهندگان کمتجربهتر کار چندان سادهای نیست. کتاب حاضر، راهنمای
قدمبهقدم و تشریحی برای ساخت وبسایتهای مجهز به قابلیتهای آزاکس می باشد:
فصل1 به تاریخچه آژاکس و تعریفهای مقدماتی میپردازد؛ فصل2، زبان JavaScript و
شیء DOM را بهطور فشرده آموزش میدهد؛ فصلهای 3 و4 به آموزش تکنیکهای خاص
آژاکس میپردازد؛ فصلهای 5، 6 و 7، مشکلات و مسائل پیش روی آژاکس و نحوهي رفع
آنها را شرح میدهد؛ فصل8، پروژه کاملي را تحتعنوان یک کتابفروشی آنلاین توسط
آژاکس پیادهسازی میکند و فصل9، درخصوص ابزارهای آژاکس و آینده آن توضیح
میدهد.
مقدمه كتاب
این کتاب برای همه کسانی نوشته شده است که
میخواهند آژاکس را بهگونهای بیاموزند که دربرابر مشکلات و ناسازگاریها
مستحکم باشد. در این کتاب شما راهحلهایی برای رفع مشکلات ناشیاز بهکارگیری
آژاکس خواهید یافت. این راهحلها با تعدادی مثالهای عملی نشان داده میشوند.
مهمتر از این، با توضیحاتی درخصوص مفاهیم مربوط به آژاکس روبهرو خواهید شد و
پاسخ سؤالاتی که پیرامون آژاکس مطرح است را خواهید گرفت. بنابراین به این کتاب
– هرچقدر هم که مقدار زیادی کد برنامهنویسی در داخل آن وجود داشته باشد –
بهچشم یک کتاب برنامهنویسی نگاه نکنید. درعوض، به این کتاب بهچشم کتاب
راهنمایی نگاه کنید که بهشما در ترسیم نقشه قلمروی ناشناخته آژاکس یاری
میرساند.
پیداکردن تسلط کامل برروی آژاکس بهسادگی امکانپذیر نیست. بسیاری از
ابزارهایی که برای ساختن سایتهای وب بهکار میبریم در یکی از این دو دسته
قرارمیگیرند: دسته اول تکنولوژیهای مربوط به مرورگر همچون HTML،
شیوهنامههای آبشاری CSS و جاوااسکریپت و دسته دوم تکنولوژیهای سمت سرور
همچون PHP، Apache و MySQL میباشند. جایگاه آژاکس جایی در میان مرورگر و سرور
است. آژاکس نیاز به جاوااسکریپت دارد که یک زبان سمت مشتری است، اما با ارتباط
به سرور نیز سروکار دارد. سؤال ایناستکه اگر آژاکس در هیچیک از این
تقسیمبندیها نمیگنجد، پس چه وظیفهای بر عهده آن است؟
با موج گرایش بهسمت آژاکس، برنامهنویسان سمت سرور دسته دسته بهطرف
برنامهنویسی برای مرورگر مهاجرت نمودند. با اینکار آنها نتیجه سالها تجربه
در طراحی نرمافزار و برنامهنویسی شیءگرا را با خود منتقل ساختند، اما لزوماً
آماده رویارویی با چالشهای خاص توسعه برنامهها در محیط مرورگر نبودند. در هر
صورت، برنامهنویسان سمت مشتری پاهایشان را در دریای آژاکس فرو بردند. دریایی
که با تسونامی تکنولوژیهای جدید روبهرو بود و باید بر آن تسلط مییافتند.
کتابهای زیادی مخصوص برنامهنویسان سمت سروری نوشته شده است که میخواهند
درخصوص آژاکس نیز بدانند. کتاب حاضر یکی از آن کتابها نیست. اگر شما یک
برنامهنویس جاوا هستید که بهساختن اشیای پیچیده عادت کردهاید، این کتاب را
کنار گذاشته و بهسراغ کتاب بعدی در قفسه بروید.
اگر شما توسعهدهنده رابط کاربری برنامه هستید، این کتاب مخصوص شما است. شما
احتمالاً دارای مهارت خوبی در استانداردهای وب هستید. من مطمئنم که شما از کد
نشانهگذاری معنانگر و CSS استفاده میکنید، حتی شاید برخی اسکریپتنویسی DOM
ابتدایی را هم انجام میدهید.
دورنمای آموختن آژاکس ممکناست شما را بترساند. نگران نباشید: مفاهیم آژاکس
بهاندازه تحلیلهای پیشبینیکننده بازار سهام پیچیده نیستند. همانطورکه در
آینده خواهید دید، نوشتن کد جاوااسکریپت مربوط به آژاکس خیلی پیچیده نیست. بخش
سخت آنجاست که بتوانید از مستحکمبودن برنامه کاربردی آژاکس خود در مقابل خطرات
و مشکلات موجود اطمینان حاصل نمایید.
در اوت 2005 انتشارات New Riders یک کتاب عالی با نام طراحی وب مستحکم
(Bulletproof Web Design) نوشته دن سدرهولم (Dan Cederholm) منتشر ساخت. فلسفه
دن در این کتاب برروی انعطافپذیری متمرکز شده بود. با بهکاربردن عناصر طراحی
انعطافپذیر که با نیازهای کاربر وفق داده میشوند، سایتهای وب بهکار خود در
ردهای بالاتر از محیط مرور معمول وب ادامه میدهند. من عقیده دارم که همین
فلسفه را درمورد آژاکس میتوان بهکار بست.
بیشتر برنامههای کاربردی آژاکس موجود برروی پایههای متزلزلی بنا شدهاند. این
برنامهها برای اجراشدن بهوجود برخی تکنولوژیها در مرورگر وابسته هستند.
مرورگرهایی که از تکنولوژیهای موردنیاز پشتیبانی ننمایند به در بسته خورده و
کاربرانشان را از مشاهده سایت محروم میسازند. برای اجتناب از بروز چنین
وضعیتی، شما باید با استفاده از تکنیکهای مستحکمسازی آژاکس که در این کتاب
شرح داده خواهند شد، برنامههای خود را انعطافپذیر سازید.
من یک وبسایت اختصاصی برای این کتاب ساختهام (http://bulletproofajax.com/).
شما میتوانید با مراجعه به این سایت تمام مثالهای موجود در کتاب را دریافت و
اجرا نمایید (http://bulletproofajax.com/code/). اگر مایل هستید که همواره از
آخرین پیشرفتهای جاوااسکریپت و آژاکس مطلع باشید، از وبلاگ من که درخصوص
اسکریپتنویسی DOM میباشد، بازدید نمایید (http://domscripting.com/blog/).
|