تحت وب یا تحت ویندوز!


این پست رادمان، توجه من را به مسئله ای مئطوف کرد که چند وقتی است موضوع بحث داغ بین افراد مختلف در زمینه برنامه نویسی سیستم های نرم افزاری است. این که برنامه هایی که تولید می کنیم تحت وب کار کند یا تحت ویندوز، مسئله ای است که جواب آن در نیازهای یک محصول نهفته می باشد. در اینجا این مسئله را در مورد کشور خودمان یعنی ایران مورد بحث قرار می دهیم. همان طور که می دانید در کشورهای پیشرفته دسترسی به اینترنت پر سرعت برای همه افراد جامعه آسان است و آن ها برای استفاده از نرم افزارهای تحت وب معمولاً مشکلی ندارنت�ت ویندوز یا ت�ت وب؟!!د و هر روز شاهد گسترش نرم افزارهای تحت وب در میان این قشر هستیم. همچنین به علت استفاده ی تقریباً صد در صد شرکت های دولتی و خصوصی کشور ایران از سیستم عامل ویندوز، در اینجا بحث ما بر سر نرم افزارهای تحت وب و تحت ویندوز خواهد بود. در این مطلب نگاهی به تفاوت های نرم افزارهای تحت وب و تحت ویندوز خواهیم داشت.

مهمترین تفاوت نرم افزارهای تحت ویندوز و تحت وب در رابط کاربری (UI) و نحوه ی توزیع آن هاست. نرم افزارهای تحت ویندوز از رابط کاربری غنی تر و کنترل های گسترده تری بهره می برند. منو ها، کلید های میانبر، دکمه ها و کنترل های متنوع دیگر با سرعت پاسخگویی سریع به کاربر در پنجره های ویندوز قابلیتی است که نرم افزارهای تحت وب کمتر از آن بهره می برند. استفاده از برخی تکنیک های برنامه نویسی ویندوز در نرم افزارهای تحت وب امکان پذیر نیست و این مسئله می تواند به کارایی نرم افزار شما لطمه وارد کند. مسئله ی مهم دیگر سرعت در پردازش اطلاعات و پاسخگویی به کاربر یا کاربران سیستم است. در نرم افزارهای تحت وب به علت ماهیت شبکه ای و چند کاربره بودن آن ها، معمولاً به علت ترافیک و عوامل دیگر، سرعت پردازش و پاسخگوئی به کاربر بسیار کند تر از نرم افزارهای تحت ویندوز است. در برخی مواقع که نرم افزار تحت وب روی شبکه جهانی اینترنت قرار دارند، امکان دسترسی همیشگی به آن مخصوصاً در کشور ما ممکن است امکان پذیر نباشد. سرعت پائین خطوط اینترنت در ایران و بعضاً غیر قابل دسترس بودن سرویس های اینترنتی در برخی مواقع، واقعیت هایی است که روی کارایی نرم افزار تحت وب شما اثر خواهد کرد.

تفاوت مهم دیگر در این نرم افزارها، مسئله ی توزیع یا Deployment است. معمولاً تولید کنندگان نرم افزارهای تحت ویندوز، محصولات خود را به صورت بسته های آماده ی قابل نصب (Setup) توزیع می کنند. این بسته ها به صورت یک برنامه ی کاربردی جداگانه و معمولاً به صورت قدم به قدم کاربر را در نصب و آماده کردن نرم افزار یاری می کنند. این روش هر چند ساده به نظر می آید ولی در برخی مواقع کاربران بسیار مبتدی با همین بخش نیز مشکل خواهند داشت. اما در نرم افزارهای تحت وب، یک بار برای همیشه برنامه را روی سرویس دهنده نصب می کنیم و کاربران بدون هیچ دردسری با استفاده از یک مرورگر از آن استفاده می کنند.

یکی دیگر از مسائلی که باید به آن توجه کرد، کنترل نسخه های نرم افزار است. در نرم افزارهای تحت ویندوز ممکن است کاربران از نسخه های مختلف محصول ما استفاده کنند و این می تواند مشکلاتی همچون عدم سازگاری و به روز نبودن نرم افزار را به همراه داشته باشد. اگر پس از استفاده گسترده ی مشتری ها از محصول ما، باگ ها و مشکلات بسیاری رخ بدهد، پس از رفع آن مسئله ی به روز رسانی نرم افزار بسیار مشکل خواهد بود. اما وقتی نرم افزار ما به صورت تحت وب عرضه شود، همیشه مطمئنیم که مشتری ها از آخرین نسخه ی محصول مان استفاده می کنند و به محض بروز مشکلی در سیستم، به روز رسانی آن بسیار آسان و بدون دردسرهای اضافی خواهد بود.

تتیجه؟

جواب مشخصی به این سئوال که کدام یک از روش های فوق برای تولید یک نرم افزار مناسب است، وجود ندارد. چیزی که مشخص است، در دنیای امروز نرم افزارهای اجتماعی و عمومی در حال حرکت به سمت وب هستند و نرم افزارهای کاربردی و سیستمی فعلاً جایگزینی در فضای وب ندارند. چیزی که مهم است، انتخاب درست شما بر اساس نیازهایتان خواهد بود.

Advertisements