بهتره این پست رو اینجوری شروع کنیم. ببینید در دنیای امروزی هر چیزی مخصوصاً در زمینه کامپیوتری هم مزایا داره و هم معایبی داره حالا باید ببینیم مشکلات این تکنولوژی چیه؟ اگرچه این روش مزایای بسیاری دارد و شکاف بین برنامههای رومیزی و برنامههای وب را بسیار کمتر کردهاست، اما مشکلاتی نیز دارد که هنگام کار به این روش، باید به آنها توجه کرد. یکی از مشکلاتی که در مورد آژاکس عنوان میشود، این مسئلهاست که این روش کاربرد کلید Back مرورگرها را مختل کرده و این بر خلاف عادت کابران در محیط وب است.
البته برای حل این مسئله راهحلهایی پیشنهاد شده که این مقاله جای بحث در مورد آنها نیست. مشکل دیگر آژاکس مسئله تاخیر شبکه ونگرانی در مورد زمان پاسخگویی سیستم است. مسئله تاخیر شبکه در یک برنامه بر اساس Ajax باید با دقت در نظر گرفته شود. تاخیر در بارگذاری اولیه رابط کاربر برنامه، چیزیست که معمولاً برای کاربر قابل درک نیست و باید با دادن پیغامی مناسب، کاربر را از اینکه سیستم درحال بارگذاری، یا انجام فعالیتی و برقراری ارتباطی با سرور است، آگاه کرد. مسئله دیگری که در مورد سیستمهای بر اساس Ajax وجود دارد، استفاده آژاکس از جاوااسکریپت است و این مسئله که کاربر میتواند اجازه اجرای جاوااسکریپت در مرورگر خود را ندهد.
پس باید پیش از شروع بارگذاری موتور آژاکس از اجازه داشتن اجرای جاوااسکریپت روی مرورگر کلاینت اطمینان پیدا کرد. البته در مورد IE نسخه ۶، به این مسئله نیز باید توجه کرد که شی XMLHttpRequest به صورت ActivX پیاده سازی شده و در نتیجه کاربر باید امکان استفاده از ActivXها را نیز به مرورگر بدهد.
مسئله دیگری که باید به آن توجه داشت، این است که کدهای جاوااسکریپت برنامه را هر کسی به راحتی میتواند ببیند. در نتیجه بهتر است قسمتهایی از برنامه را که مربوط به امنیت، یا منطق پردازشی برنامه میشود، سمت سرور نگه داریم. به نظر میرسد ساخت سیستمی که ترکیب متوازنی از پردازشهای سمت سرور و یک موتور آژاکس قوی در طرف کلاینت باشد، می تواند را حا مناسبی باشد.