اگه این روزا به بررسی استارت آپای تازه در TechCrunch بپردازید،انگار بیشتر استارتاپا براساس لینوکس هستن،نه ASP.Net! اگرکسی در حال راه اندازی کار و کاسبی خود هست،می خواد که بهترین گزینه رو انتخاب کنه و اون تنها یه بار حق انتخاب داره و انگار افراد چیزای مختلفی رو به جز ASP.Net واسه کار و کاسبی خود انتخاب می کنن. به چه دلیل بیشتر استارتاپای جذاب سایت خود رو براساس ASP.Net نمی کنن؟ و به راستی به چه دلیل به کار گیری ASP در طراحی سایت پیشنهاد نمی شه؟

شرکت مایکروسافت انرژی و زمان بسیاری واسه ساخت فریم ورک Net. هزینه کرد و میشه گفت که بیشتر نرم افزارهای تحت ویندوز که در دهه گذشته نوشته شده ازش استفاده می کنن. هر روزه کدهای Net. بسیاری نوشته می شه که این به معنی مرده نبودن اون هستش. هم اینکه فریم ورک وب ASP.Net هم واسه رقابت و مقابله با پلتفرم جاوا در ساخت وب اپلیکیشنا هم به وسیله مایکروسافت ایجاد شده ، اما با وجود اینا سایتای جدید زیادی براساس اون ساخته نمی شن. مشکل از کجاس؟ مسئله هزینه س؟ هزینه سرور هاست؟ دست و پاگیر بودن لایسنس ؟جذاب نبودن؟ یا عاملای دیگه؟ همه این عوامل هم اینکه چند دلیل دیگه می تونه دلایل اصلی نبود استقبال از ASP.Net باشه.

۱٫هزینه

یه برنامه پیشرفت به کمک Net. علاوه بر هزینه های هاستینگ سرورا، تعداد افراد و نفر ساعت اعمال شده واسه پروژه هم بیشتر و در نتیجه هزینه های در رابطه به این بخش هم زیاد می شه. به دلیل بالا بودن هزینه های ASP.Net خیلی از کسب و کارا و استارتاپا بهتر می دونن که ازش استفاده نکنن. با به کار گیری وسایل متن باز و رایگان میشه هزینه ها رو به مقدار زیادی کم کرد.

PHP، MySQL server، PostgreSQL server و آپاچی و هم اینکه سیستم عامل لینوکس همه رایگان ان و آپدیتای اونا هم مجانیه. هیچ مبلغی هم واسه خرید امکانات اضافه، انجام بک آپ و… از شما دریافت نمی شه و هم اینکه به به کار گیری چندین سرور واسه متعادل سازی بار احتیاجی نیس.

۲٫پشتیبانی

ASP.NET بر تعداد محدودی از پیشرفت دهنده های مایکروسافت تکیه داره تا آپدیتا و ارتقاءای لازم اونو تامین کنن. این مسئله باعث شده تعداد کمتر آپدیتا و پشتیبانی ضعیف تر واسه حل مشکلات بوجود اومده در ASP.NET رو در مقابل پلتفرمای متن باز مانند php تماشاگر باشیم و این موضوع باعث پیشرفت کندتر و انتظار بیشتر واسه ارتقای ASP.Net شده.

مشکلات

۳٫زمان

واسه تکمیل کدهای پیچیده و توابع ASP.NET در مقایسه با PHP مدت زمان بیشتری صرف می شه تا کدهای نوشته شده به مرحله تکمیل و استفاده برسن، زمان پیشرفت رو هم باید به این زمان اضافه کرد. هم اینکه PHP سمت سرور تفسیر می شه پس وقتی تغییری ایجاد شه احتیاجی به مراحل اضافه تری واسه دیدن تغییرات وجود نداره، در سمت دیگه ASP.NET باید هر بار بعد از هر تغییر کامپایل شه. زمانبر بودن پروژه هایی که از ASP.Net  استفاده می کنن هم باعث شده خیلی از کسب و کارا و استارتاپا از اون استقبال نکنن. چون که زمان بر بودن پروژه باعث از دست رفتن فرصتای اونا می شه.

۴٫کارکرد

در برنامه های تحت وب و سایت  ها، کارایی و کارکرد سایت روی سروره. این کارکرد میان اسکریپت، پایگاه داده و سرور بررسی می شه.

اکثراً پایگاه داده ای که در سایت  های طراحی شده با ASP.Net استفاده می شه، پایگاه داده Microsoft SQL Serverه. (البته در سایتای ASP.Net از پایگاه داده MySQL هم میشه استفاده کرد). از نظر کارکرد و کارایی، کارکرد PHP به همراه پایگاه داده MySQL به مراتب بالاتر از ASP.Net با پایگاه داده SQL Serverه. این به دلیل کتابخانه های لازم SQL Serverه که این اختلاف رو ایجاد کرده.

بیشتر سایتایی که با زبون php ساخته شدن از LAMP استفاده می کنن.(LAMP کوتاه شده ۴ کلمه PHP ,MySQL-Server ,Apache ,Linuxه.این ۴ برنامه از معروف ترین برنامه های Open-Source در دنیای وب و اینترنت هستن که به Web Stack معروف ان)  LAMP به دلیل کارکرد مناسب و کارایی بالا، محبوبترین محیط پیشرفت وبه و واسه کارکرد مناسب، بهینه شده.

عامل دیگری که در کارکرد و کارایی یه سایت  تاثیر داره، سیستم عامل مورد استفاده و فایل سیستم مورد استفاده در سروره. در بررسیای انجام شده، سیستم عامل لینوکس به همراه فایل سیستم EXT4  مدیریت و نظارت بهتری روی جریانای ورودی و خروجی داره و سیستم عامل ویندوز با فایل سیستم NTFS، کارکرد ضعیف تری رو نسبت به لینوکس داره. پس عملکردی که یه سایت PHP روی سرور راه اندازی شده با لینوکس داره به مراتب بهتر از سایت  مشابه نوشته شده با ASP.Net روی سیستم عامل ویندوز میشه.

به هر حال انتخاب با شماس شما می تونین طراحی سایت خود رو بر مبنی ASP یا PHP  یا زبانای برنامه نویسی دیگه انجام بدین. نظر شما چیه هنوزم روی یه زبون برنامه نویسی خاص اصرار می کنین؟