‫‫جاوا اسکریپتی قوی‌تر با Microsoft Ajax Library

اگر می‌خواهید امکانات C#‎ را در کدهای کلاینتی JavaScript داشته باشید آن هم به همان شکلی که در C#‎ وجود دارد، یک راه ساده وجود دارد: استفاده از Microsoft Ajax Library. این کتابخانه بخش client موتور آژاکس مایکروسافت یعنی ASP.NET AJAX را تشکیل می‌دهد و با استفاده از ScriptManager به طور خودکار به صفحات ASP.NET اضافه می‌شود. Mirosoft Ajax Library به جاوا اسکریپت امکاناتی را اضافه می‌کند تا برنامه‌نویسان C# عمده امکانات Object Oriented ‫را به همان سبک و سیاق C#‎ در دسترس داشته باشند. این امکانات عبارتند از:

۱- تعریف Object و Class (هم Property و هم Method)
‫۲- interface
‫۳- enum
‫۴- inheritance
‫۵- event
‫۶- namespace
‫۷- reflection

دقت کنید که این امکانات به Client Side و جاوا اسکریپت اضافه می‌شود، آن هم به جاوا اسکریپتی که بیش از یک function و object بدون متود چیزی ندارد! به عبارت دیگر این یعنی این که شما با کمک این امکانات می‌توانید بخش زیادی از منطق و ساختار برنامه را با کمک هزاران خط کد جاوا اسکریپت به صورت منظم، ساختارمند و کاملا مشابه کدهای شی گرای C#‎ در سمت Client پیاده سازی کنید.

منبع:
فصل سوم کتاب ASP.NET Ajax in Action
مطالعه بیشتر:
الف- ‫آشنایی با کتابخانه Microsoft Ajax Library
ب- راهنمای خیلی فشرده جاوا اسکریپت

‫آشنایی با کتابخانه Microsoft Ajax Library

کتابخانه Microsoft Ajax Library  بخش کلاینت ASP.NET AJAX را تشکیل می‌دهد. ASP.NET AJAX شامل دو بخش دیگر به نام‌های ASP.NET AJAX Extensions و AJAX Control Toolkit نیز می‌باشد. این کتابخانه نه تنها امکانات Ajax را در کلاینت مهیا می‌کند بلکه یک کتابخانه خیلی خوب برای JavaScript نیز محسوب می‌گردد. با کمک این کتابخانه می‌توان کدهای جاوا اسکریپت را خیلی راحت‌تر، بهینه‌تر و خلاصه‌تر نوشت. مثلا این کتابخانه همچون jQuery به جای استفاده از دستورات طویلی مثل document.getElementById(‘someid’).value; از دستورات خلاصه‌تری مثل $get(‘someid’) استفاده می‌کند.  در ادامه فهرستی از امکانات اولیه این کتابخانه برای کار با جاوا اسکریپت و DOM می‌آید. دقت شود که کتابخانه Microsoft Ajax Library غیر از این فهرست شامل امکانات زیادی برای دیگر کارها از جمله خود Ajax هم هست.
۱- رعایت سازگاری با مرورگرهای مختلف بدون آن که لازم باشد برنامه‌نویس در آن دخالت کند.
۲- ارائه کلیه امکانات به نحوی که برای برنامه‌نویسان دات‌نت آشناتر است. مثل ساختار Array، Exception، فرمت استرینگ کاملاً مشابه دات‌نت.
۳- امکانات Event Handling و Delegates کاملاً مشابه دات‌نت.
۴- Error Handling مشابه ساختار Exception Handling در دات‌نت.
۵- امکان خیلی به دردبخور Debug. دیگر نیاز نیست از alert استفاده شود.
۶- ارائه ساختار client page life cycle مشابه آنچه که در Page در صفحات ASP.NET قرار دارد.
۷- Globalization

نمی‌دانم Microsoft Ajax Library رقیب jQuery یا هر کتابخانه دیگری باشد یا نه، اما ظاهراً استفاده از این کتابخانه حتی برای مقاصد صرفا کلاینتی و غیر آژاکسی هم می‌تواند کیفیت و کارایی کد را بسیار بالا ببرد.

منبع: فصل ۲ کتاب ASP.NET Ajax in Action