
نرم افزار تحت وب یا Web Based چیست
و چه مزیت هایی نسبت به نرم افزار تحت ویندوز دارد؟
محدودیت های جغرافیایی و تکرار نصب نرم افزار روی هر رایانه ایده ای بوده که موجب شکل گیری تکنلولوژی نرم افزارهای تحت وب شد. مفهوم برنامه های کاربردی وب برای اولین بار در سال 1999 در زبان جاوا ظاهر شد از آن زمان با گسترش اینترنت و ارتقا زبان های برنامه نویسی امروزه بسیاری از سازمان ها ترجیح میدهند که به جای نصب نسخه های محلی یا on premise از روش تحت وب استفاده نمایند.
نرم افزار تحت وب نوع خاصی از نرم افزارهای کلاینت و سرور هستند که استفاده آنها نسبت به نرم افزارهای ویندوزی مدرن تر و توانا تر بوده و سرعت رشد بسیار بالاتری را در سالهای اخیر در حوزه متعددی از جمله سیستم های مالی، بازرگانی و فروش و... داشته است، نرم افزار تحت وب روی کامپیوتر کاربر نصب نمی شود و کاربر با استفاده از Browser های مرسوم مانند Google Chrome ، Firefox به صورت صفحات وب به سیستم دسترسی پیدا می کند. ویژگی در دسترس بودن و توزیع بودن نرم افزار میان همه کاربران در سطح سازمان یا در کل دنیا از مهم ترین مزیت های نرم افزار تحت وب است که محدودیت جغرافیایی را از بین خواهد برد.
در ادامه با تاریخچه پیدایش و از جایگاه فنی بیشتر با نرم افزارهای تحت وب آشنا خواهید شد، پس در ادامه این مقاله با ما همراه باشید.
تاریخچه نرم افزارهای تحت وب
از همان ابتدای پیدایش اینترنت مهندسان کامپیوتر در تلاش بودند که نرم افزاری را جهت مدیریت صفحات وب ایجاد کنند که بعدها به CMS مشهور شد البته مشخص نیست اولین CMS چه نام داشت . سپس سرویس های ایمیل نوعی از نرم افزارهای تحت وب بودند و بعدها به انواع سیستم های فروش آنلاین کالا و سرویس های انتشار ویدیو و حتی سیستم های چت و بازیهای آنلاین نیز ارتقا یافت. امروزه نرم افزارهای مالی و بازاریابی متعددی ساخته شده اند که بدون نیاز به نصب و پیکربندی هیچ نرم افزار مدیریت پایگاه داده و پیش نیازهای سخت افزاری و نرم افزاری تنها با استفاده از مرورگرهای مشهور گوگل کروم و فایرفاکس قابل استفاده می باشند.
کارایی به نسبت بالاتر از نوع ویندوزی یا on premises دارد
سرعت دسترسی به
نرم افزار
تحت وب یا web based از سرعت و عملکرد بسیار بهتر و مطلوب تری برخوردار بوده و می تواند با استفاده از موبایل، تبلت و لپ تاپ و هر دستگاهی که اجازه باز کردن صفحات اینترنتی را می دهند همچنین وابستگی به منابع سخت افزاری دستگاه کاربر ندارد . مثلا مهم نیست که برای اجرای یک
نرم افزار حسابداری تحت وب چه میزان حافظه RAM در موبایل و یا رایانه شخصی لازم است یا اینکه چه میزان سرعت CPU یا تعداد هسته ها مورد نیاز است! چرا که همه نرم افزارهای تحت وب به طور کامل از منابع سرور استفاده میکنند و کاربر صرفا آن را مانند یک وب سایت باز میکند و همینکه کاربرها تجربه رضایت بخشی از سرعت سرویس تحت وب در هنگام استفاده دارند میتواند کارایی کافی را به همراه داشته و نیازی به تهیه سخت افزار کاربر نیست، بلکه با همان سخت افزارهای قدیمی یا معمولی که دارند قدرتمند ترین سرویس های دنیا را مانند سرویس ایمیل یا حسابداری تحت وب را استفاده کنند. در روش تحت وب سازمان مسول تهیه و ارتقا و بهبود سخت افزارهای مورد نیاز سرور سرویس است و کاربر دغدغه ای از این بابت ندارد اما در روش های نصب روی کامپیوتر کاربر یا اصطلاحا on premises کاربر باید همه نیازمندی های لازم و اجباری را از جمله منابع سخت افزاری را خریداری کند. از طرفی نرم افزارهای تحت وب تنها روی سرور مرکزی توسط یک تیم IT واحد مدیریت و نگهداری میشود اما در روش های نصب روی رایانه شخصی به ازای نصب و نگهداری و به روزرسانی باید به طور جداگانه باید روی هر سیستم انجام شود که به نسبت اگر در مقیاس بزرگ اینها را با هم مقایسه کنیم هزینه های نگهداری سیستم های تحت وب بسیار مقرون به صرفه است.
تکنولوژی های پیش رو
طراحی و تنوع در روش های طراحی در اینگونه نرم افزارهای بسیار متنوع و مدرن شده تا جایی که شرکت های بزرگ نرم افزاری مانند گوگل راه حل هایی برای بهبود بخش UI وب اپلیکیشن ها یا نرم افزارهای تحت وب ارائه کرده اند که در نسخه های Windows Form دیده نمی شود و آن تکنولوژی PWA است که به صورت یک نرم افزار قابل نصب روی گوشی و رایانه شخصی نصب میشود و هچنین منابع گوشی یا رایانه را اشغال نمی کند بلکه میتواند به صورت اپلیکیشن APK روی گوشی های اندرویدی یا IOS نصب شوند و از حجم دانلود بسیار بسیار پایینی دارند اکثر اوقات زیر یک مگابایت هستند.
پایگاه داده اشتراکی
یک پایگاه داده برای همه کاربران از دیگر ویژگی های تحت وب بودن است همه عملیات از قبیل عضویت، تراکنش های مالی، سفارشات، رزرو ها در یک جا قرار می گیرند و این مهم موجب حذف پراکندگی و تکرار اطلاعات خواهد شد . از سویی پشتیبان گیری از این پایگاه داده به سادگی قابل انجام خواهد بود بلکه به صورت خودکار هم توسط سرور قابل برنامه ریزی روزانه است . یکپارچه بودن و دسترسی در هر زمان و هر مکان از دیگر مزیت ها و دلایل استفاده از این نوع تکنولوژی است. به طور مثال سرویس هایی اینترنتی که گوگل یا فیسبوک دارد به عنوان یک وب اپلیکیشن هستند ، ارتباط با پایگاه داده های قدرتمند مانند Oracle , mysql , sql server و انجام گزارشات حرفه ای است که این تکنولوژی برای ما فراهم کرده است.
امنیت و قابلیت اطمینان پذیری
سایت هایی که در پروتکل HTTPS اجرا می شود می توانند حامل تصاویر و مطالب باشد در حالی که نرم افزارهای تحت وب از پیچیدگی و الگوریتم های ریاضیاتی و محاسباتی متنوعی برخوردار است و کلیه تبادلات از کاربر تا سرور به صورت رمزنگاری شده بوده و امکان شنود توسط هکر مقدور نیست . از طرفی فریم ورک هایی که توسعه دهنده ها برای تولید نرم افزارها استفاده میکنند روزانه در حال توسعه هستند و به صورت مرتب انواع آپدیت های به روز را برای استفاده توسط تولید کنندگان نرم افزار منتشر میکنند یکی از این فریم ورک ها Laravel نام دارد که با زبان PHP میتوان با کمک این فریم ورک نرم افزارهای امن تحت وب را طراحی و تولید کرد .
راهکارهای پیشرو در صنعت وب
یکی شرکت های رندر 3D که سخت افزارهای قدرتمندی دارد با ایجاد بستری از طریق اینترنت ، با ارتباط با نرم افزار نصب شده روی کامپیوتر مشتریان دستورالعمل های پیچیده را روی سرور های خود اجرا میکند و بابت این خدمت مبلغی را دریافت میکنند ، مثلا خرید یک ابررایانه میلیارد های تومان هزینه دارد اما با استفاده از خدمات الکترونیکی و ارتباطات ابری یا Cloud محاسبات را روی ابرها انجام میدهد.
پیام رسان های جهانی نوع بارز تکنولوژی تحت وب
پیام رسان ها با حجم عظیمی از اطلاعات نوعی نرم افزار تحت وب محسوب می شوند و تنها راه حل برای اجرای پروژه های Big data استفاده از این فناوری است . اما به راستی وسعت نرم افزارهای تحت وب به چه اندازه است ؟ و اگر کسی یک نمونه ساده از یک Application راه اندازی کرد نرم افزار او قدرت رفتاری مانند پیام رسان های مانند تلگرام یا اینستاگرام را دارند ! خیر معماری پایگاه داده بخش بسیار پیچیده و پیشرفته ای است که تنها شرکت های دارای تجربه زیاد میتوانند معماری Big Data را به خوبی پیاده سازی کنند مثلا اگر قرار باشد میلیون ها نفر از یک نرم افزار پیام رسان ابری استفاده کنند ساختاری پایگاه داده ای آن باید به چه صورتی باشد که در صورت جواب ندادن منابع سخت افزاری بتوان با افزودن سرورهای جدید مشکل سرعت و پاسخ گویی حل شود ! این ها چالش های بزرگی هستند که اکثر سازمان های بزرگ که حجم کاربران زیادی دارند درگیر آن شده اند .
لذا به نسبت میتوان معماری را به دو شکل کلی Vertical عمودی یا افقی Horizontal تقسیم کرد این دو نوع معماری در انواع پروژه ها مورد استفاده قرار میگیرد که نوع افقی با بزرگ شدن پردازش ها و منابع سخت افزاری مشکلی در توسعه پذیری و محاسبه ابری نخواهد داشت .
تفاوت تحت وب ابری چیست ؟
سوالی که در ذهن بسیاری از کاربران ایجاد میشود که واقعا چه تفاوتی بین تحت وب ابری وجود دارد ؟ در واقع تحت وب به معنای واقعی یعنی نرم افزاری که با تکنولوژی WEB و روی سرور با استفاده از مرورگر قابل استفاده باشد. این نوع نرم افزار بدون وابستگی به سخت افزار و نرم افزار کلاینت یا کاربر نهایی قابل اجرا شدن در گوشی یا تبلت یا انواع رایانه ها را دارد و با توجه به این ویژگی رشد خوبی در توسعه آنها به وجود آمده است . اما نرم افزارهای ابری هم مانند تحت وب می باشند آن طور که رایج شده است نرم افزارهای ابری با روش متفاوت تری ارائه میشود ، اولا هیچ تفاوتی از نظر ساختاری با تحت وب ندارد و ثانیا روش استفاده آنها متفاوت است یعنی کاربر با عضویت در یک سایت که مثلا حسابداری آنلاین را ارائه می کند در کمتر از 2 دقیقه میتواند نرم افزار خود را تهیه و استقرار کند ، این روش کلیه فرایند خرید هاست و دامنه نگهداری و توسعه را توسط شرکت ارائه دهنده خدمات دریافت میکند و مشتری به صورت اجاره ای و در مدت محدودی با توجه به تعرفه ای که به صورت ماهانه یا سالانه پرداخت میشود از سرویس ابری استفاده میکند. پس درواقع تفاوتی در تکنولوژی و نحوه پیاده سازی این دو وجود ندارد.

جمع بندی به طور کلی از مزیت های تحت وب میتوان به موارد زیر اشاره کرد :
- نرم افزار تحت وب در هر زمان و مکان قابل اجرا و استفاده است
- امن تر از نرم افزارهای ویندوزی هستند به دلیل عدم وجود نرم افزارهای مخرب ( مخصوصا در لینوکس )
- عدم نیاز به بکاپ گیری دستی و ذخیره در USB Flash و عدم نگهداری اطلاعات در موبایل یا رایانه قابل حمل به دلیل زیرساخت های خودکار به شرط پیاده سازی
- شرکت تولید کننده سرویس قدم به قدم شما در حال استفاده در اطلاعات حساس و مهم است پس همه تلاش خود را برای بهتر ساختار و امن تر کردن آن خواهد کرد(راهکار ابری)
- همه چیز در یکجا قرار دارد تنها باید در حفظ رمز عبور خود کوشا باشید
- روزانه از دیتا شما بکاپ گرفته میشود
- تضمین امنیت و نگهداری دیتا توسط شرکت سرویس دهنده تحت وب تضمین میشود
- همیشه از آخرین نسخه بدون نیاز به نصب و آپگرید توسط شما به روز میشود
- نیاز به نصب و دانلود ندارد با یک مرورگر معمولی مانند فایرفاکس یا گوگل کروم از آن استفاده کنید
- هیچگاه نخواهید پرسید که آیا با دستگاه من سازگاری دارد چرا که در هر دستگاهی که به اینترنت وصل باشد کار میکند
- در خانه یا در جاده با سرویس به صورت آنلاین کار کنید کاملا منطبق با راهکارهای دور کاری
- قابلیت به روزرسانی خودکار را دارند مخصوصا در روش ابری
- در انواع زبان های برنامه نویسی مانند PHP , ASP , Python , Node.js ,... قابل ساخت است همه آنها طرفداران میلیونی دارند و امن هستند
- در سمت کاربر با فریم ورک های به روزی قابل ساخت است مانند Livewire , Vue , React و پویایی خوبی در هنگام استفاده دارند
- هزینه های نگهداری بسیار پایینی دارد یعنی اگر شما در یک سازمان با 1000 رایانه بخواهید یک نرم افزار تحت وب را استفاده کنید فقط کافی است به شبکه داخلی یا اینترنت دسترسی داشته باشند
- در انواع شبکه ها مانند اینترنت - شبکه Lan - شبکه اینترانت قابل اجراست و صرفا برای اینترنت ساخته نشده است
زیرساخت های لازم نرم افزار یا پلتفرم های تحت وب
نرم افزارهای تحت وب با هر زیرساختی سازگار هستند در واقع آنها میتوانند از ساده ترین و ارزش ترین سرویس های اشتراکی هاستینگ یا نصب نرم افزار های ISS یا XAMPP در لوکال در ویندوز یا وبسرورهای معروف Apache و Ngnix و حتی در ماشین مجازی ها مثل Docker یا vmware نیز اشاره کرد .
یکی از مهم ترین موضوعاتی که در خصوص اهمیت زیر ساخت نرم افزار تحت وب باید اشاره داشت بحث به روزرسانی است در روش حرفه ای ایجاد زیرساخت بر اساس ماشین مجازی یا سرور اختصاصی با کمک docker نیز بسیار کاربردی است که در این خصوص نیاز به حضور افراد متخصص در این زمینه را دارد اما این راهکار میتواند همه شرایط لازم برای اجرای پلتفرم را به خوبی فراهم کند .
ما در وبینه از سال 95 فعالیت تخصصی خود را با محوریت طراحی نرم افزار تحت وب آغاز کرده ایم و در حال حاضر انواع پلتفرم های کاربردی برای کسب و کارها را به صورت اختصاصی و عمومی را طراحی کرده ایم از جمله نرم افزار تحت وب تیکتینگ سپهر گستر.