raziee
سه شنبه 03 آذر 1388, 23:04 عصر
منبع (http://boplo.ir/web-design/jquery-or-mootools/)
برای استفاده از جاوااسکریپت توی سایت، معمولا jQuery و MooTools گزینه های قابل تأمل تری هستند و اغلب این سوال پیش میاد که کدوم رو باید انتخاب کرد؟ چند روز پیش به سایت jQuery vs MooTools .com برخوردم. یکی از توسعه دهندگان MooTools، یه مقاله بلند بالا، در همین باره در این سایت قرار داده. من هم از اونجاییکه چند وقت بود تو فکر نوشتن همچین مطلبی بودم، تصمیم گرفتم که این مقاله رو ترجمه کنم. این کار رو انجام دادم و صفحه فارسی رو برای نویسنده اش ارسال کردم و اون هم تو سایت قرار داد. به آدرس زیر:
« jQuery vs MooTools .com / index_fa.html »
خیلی سعی کردم که ترجمه حتی الامکان کامل و رسا باشه و هرکسی با هر سطح فنی، بتونه ازش استفاده کنه. در کل مقاله برای کسانی که چیزی از جاوااسکریپت نمی دونن هم تا حدی مفیده.
اگر حوصله خوندن اون مقاله رو نداری یا میخوای نظرات خیلی خیلی خیلی مفید من رو هم در این باره بدونی، ادامه مطلب رو بخون...
توضیح: اول یه توضیح کوتاه درباره مفهوم فریم ورک (Framework) بدم برای کساییکه احتمالا با این واژه آشنایی ندارند. فریم ورک مجموعه ای از توابع و کدهایی هست که برای سهولت انجام کاری خاص طراحی میشه. مثلا همین jQuery، یه تابع معرفی کرده برای نمایش مطالب بصورت اسلاید. تمام کاری که ما باید بکنیم، استفاده از این تابع است. در حالیکه نوشتن چنین تابعی، به اطلاعات تجربه زیادی نیاز داره ولی استفاده اش نه! خلاصه فریم ورک، کار رو آسونتر می کنه.
jQuery : اگر جاوااسکریپت بلد نیستی، یا کم بلدی، یا حوصله کد نویسی نداری ولی میخوایی افکتهای قشنگ جاوااسکریپت رو توی سایتت داشته باشی، این بهترین گزینه است. پیشنهاد می کنم معطل نکنی و بری تو بخش آموزش سایتش . تو کمتر از سه ساعت، زندگی تحت وبت تغییر می کنه. از اینکه توی مدت به این کمی، چیزایی یاد گرفتی که همیشه فکر می کردی مال از ما بهترونه، ذوق می کنی. باور کن. همین امروز و الان برو سراغ سایتش. ولی صبرکن! این مقاله رو تا آخر بخون بعد برو. بعدشم اون پایینو میبینی نوشته "تو چی فکر می کنی" ؟ اونو واسه خودم ننوشتم! نظرت رو بگو، قول میدم از اینکه دو خط کامنت تایپ میکنی نوک انگشتات خسته نشه....
jQuery امکانات خیلی خوب و سریعی برای کار با DOM ارائه میده ولی برای توسعه امکانات جالبی نداره. همینطور وقتی از محدوده DOM خارج میشیم، کار بیخ پیدا می کنه چون jQuery خارج از DOM، هیچ تابعی نداره و باید از کدهای جاوااسکریپت معمولی استفاده کرد. اگر با این فریم ورک کار کرده باشی می دونی که تقریبا همه متدهاش، به المان یا اجزای DOM متصل می شوند و این به نظر من بزرگترین اشکالشه یعنی کل توانایی هامون بر روی اجزای صفحه قابل اجراست!
MooTools : این فریم ورک گسترده تر از بالاییه. متدهای خیلی زیادی برای خود جاوااسکریپت داره و نه صرفا برای DOM. تقریبا همه قابلیتهایی که jQuery داره، اینم داره به اضافه امکانات خیلی بیشتری برای کدنویسی جاوااسکریپت. این فریم ورک امکان تعریف کردن شیء و متد رو به سادگی میده. یعنی می تونی برای شیء Array متد بسازی و استفاده کنی یا برای اشیاء دیگه جاوااسکریپت. خواص ارث بری جاوااسکریپت رو به نوعی اصلاح کرده که شما با کلاسهای MooTools کارهای خیلی بیشتری می تونی بکنی.
بزرگترین عیبش در مقابل بالایی، دشوارتر بودنشه. همونجوری که گفتم، توی سه ساعت، حتی بدون زمینه قبلی، میشه jQuery رو یاد گرفت (اصولش رو) ولی برای MooTools اینطور نیست.
من چند وقت پیش کار کردن با MooTools رو شروع کردم و اصلا به اون سختی که توی مقاله تاکید شده، نبود ولی سادگی jQuery یه ویژگی خاصه.
اگر بخوای برای یک سایت، مجموعه امکانات جاوااسکریپت ایجاد کنی که به کدنویسی زیاد نیاز داره، بهتره که از jQuery استفاده نکنی چون در این زمینه، MooTools خیلی قدرتمندتره! ولی برای کارهای جزئی و سریع، فقط و فقط و فقط jQuery.
این جمله کلیدی، خیلی از مفاهیم رو بیان می کنه:
بخش اعظمی از تفاوتها، به درک مفهوم فریم ورک و ابزار (Toolkit) مربوط میشه. به این صورت که، jQuery یک ابزاره و MooTools یک فریم ورک.
و دیگر هیچ!
برای استفاده از جاوااسکریپت توی سایت، معمولا jQuery و MooTools گزینه های قابل تأمل تری هستند و اغلب این سوال پیش میاد که کدوم رو باید انتخاب کرد؟ چند روز پیش به سایت jQuery vs MooTools .com برخوردم. یکی از توسعه دهندگان MooTools، یه مقاله بلند بالا، در همین باره در این سایت قرار داده. من هم از اونجاییکه چند وقت بود تو فکر نوشتن همچین مطلبی بودم، تصمیم گرفتم که این مقاله رو ترجمه کنم. این کار رو انجام دادم و صفحه فارسی رو برای نویسنده اش ارسال کردم و اون هم تو سایت قرار داد. به آدرس زیر:
« jQuery vs MooTools .com / index_fa.html »
خیلی سعی کردم که ترجمه حتی الامکان کامل و رسا باشه و هرکسی با هر سطح فنی، بتونه ازش استفاده کنه. در کل مقاله برای کسانی که چیزی از جاوااسکریپت نمی دونن هم تا حدی مفیده.
اگر حوصله خوندن اون مقاله رو نداری یا میخوای نظرات خیلی خیلی خیلی مفید من رو هم در این باره بدونی، ادامه مطلب رو بخون...
توضیح: اول یه توضیح کوتاه درباره مفهوم فریم ورک (Framework) بدم برای کساییکه احتمالا با این واژه آشنایی ندارند. فریم ورک مجموعه ای از توابع و کدهایی هست که برای سهولت انجام کاری خاص طراحی میشه. مثلا همین jQuery، یه تابع معرفی کرده برای نمایش مطالب بصورت اسلاید. تمام کاری که ما باید بکنیم، استفاده از این تابع است. در حالیکه نوشتن چنین تابعی، به اطلاعات تجربه زیادی نیاز داره ولی استفاده اش نه! خلاصه فریم ورک، کار رو آسونتر می کنه.
jQuery : اگر جاوااسکریپت بلد نیستی، یا کم بلدی، یا حوصله کد نویسی نداری ولی میخوایی افکتهای قشنگ جاوااسکریپت رو توی سایتت داشته باشی، این بهترین گزینه است. پیشنهاد می کنم معطل نکنی و بری تو بخش آموزش سایتش . تو کمتر از سه ساعت، زندگی تحت وبت تغییر می کنه. از اینکه توی مدت به این کمی، چیزایی یاد گرفتی که همیشه فکر می کردی مال از ما بهترونه، ذوق می کنی. باور کن. همین امروز و الان برو سراغ سایتش. ولی صبرکن! این مقاله رو تا آخر بخون بعد برو. بعدشم اون پایینو میبینی نوشته "تو چی فکر می کنی" ؟ اونو واسه خودم ننوشتم! نظرت رو بگو، قول میدم از اینکه دو خط کامنت تایپ میکنی نوک انگشتات خسته نشه....
jQuery امکانات خیلی خوب و سریعی برای کار با DOM ارائه میده ولی برای توسعه امکانات جالبی نداره. همینطور وقتی از محدوده DOM خارج میشیم، کار بیخ پیدا می کنه چون jQuery خارج از DOM، هیچ تابعی نداره و باید از کدهای جاوااسکریپت معمولی استفاده کرد. اگر با این فریم ورک کار کرده باشی می دونی که تقریبا همه متدهاش، به المان یا اجزای DOM متصل می شوند و این به نظر من بزرگترین اشکالشه یعنی کل توانایی هامون بر روی اجزای صفحه قابل اجراست!
MooTools : این فریم ورک گسترده تر از بالاییه. متدهای خیلی زیادی برای خود جاوااسکریپت داره و نه صرفا برای DOM. تقریبا همه قابلیتهایی که jQuery داره، اینم داره به اضافه امکانات خیلی بیشتری برای کدنویسی جاوااسکریپت. این فریم ورک امکان تعریف کردن شیء و متد رو به سادگی میده. یعنی می تونی برای شیء Array متد بسازی و استفاده کنی یا برای اشیاء دیگه جاوااسکریپت. خواص ارث بری جاوااسکریپت رو به نوعی اصلاح کرده که شما با کلاسهای MooTools کارهای خیلی بیشتری می تونی بکنی.
بزرگترین عیبش در مقابل بالایی، دشوارتر بودنشه. همونجوری که گفتم، توی سه ساعت، حتی بدون زمینه قبلی، میشه jQuery رو یاد گرفت (اصولش رو) ولی برای MooTools اینطور نیست.
من چند وقت پیش کار کردن با MooTools رو شروع کردم و اصلا به اون سختی که توی مقاله تاکید شده، نبود ولی سادگی jQuery یه ویژگی خاصه.
اگر بخوای برای یک سایت، مجموعه امکانات جاوااسکریپت ایجاد کنی که به کدنویسی زیاد نیاز داره، بهتره که از jQuery استفاده نکنی چون در این زمینه، MooTools خیلی قدرتمندتره! ولی برای کارهای جزئی و سریع، فقط و فقط و فقط jQuery.
این جمله کلیدی، خیلی از مفاهیم رو بیان می کنه:
بخش اعظمی از تفاوتها، به درک مفهوم فریم ورک و ابزار (Toolkit) مربوط میشه. به این صورت که، jQuery یک ابزاره و MooTools یک فریم ورک.
و دیگر هیچ!