سلام
به نظر من ASP.Net بیشتر به خاطر محیط یکپارچه و قدرتمند ویژوال استودیو که امکانات زیادی برای برنامه نویسی گروهی فراهم میکنه در پروژه های بزرگ که معمولاً گروهی هم طراحی میکنن پیشنهاد میشه وگرنه از لحاظ کارایی و Performance و امنیت و... PHP هیچ چیزی از ASP.Net کم نداره و اگه کدنویسی بهینه ای داشته باشید می تونید پر بازدید ترین سایت ها رو تازه با مصرف منابع Ram و CPU خیلی کمتر از ASP.Net اجرا کنید چون اصولاً لینوکس و سیستم عامل های بر پایه Unix هم مصرف منابع کمتری دارن و هم پایداری و امنیت بیشتری اما ASP.Net فقط باید در سروری که دارای سیستم عامل ویندوز و یکی از نسخه های Windows Server باشه به همراه وب سرور IIS اجرا بشه که خب این محدودیت خودش به تنهایی باعث میشه که هم وابسته به ویندوز بشید و هم تو کشور های خارجی که دیتاسنتر ها قرار دارن چون کپی رایت وجود داره باید لایسنس ویندوز خریداری بشه و همین قضیه باعث گرانتر بودن سرور ها و هاست های ویندوز هم میشه اما خب هستن کشور هایی مثل ما که به کپی رایت اهمیت نمیدن.
ببینید هر کی بهتون میگه ASP.Net خوبه چون امنیتش بیشتره یا چون کامپایلری هستش و PHP مفسری سرعتش بیشتره و از این حرفا بدونید که فقط داره تعصبی از محیط برنامه نویسی مورد علاقه اش دفاع میکنه.
این درسته که ASP.Net کامپایل میکنه و PHP تفسیر اما همونطور که ASP.Net یه بار کامپایل میکنه که در دفعات بعد فقط اجرا کنه PHP هم سیستم های Caching خیلی قدرتمندی داره که همین عمل مشابه کامپایل رو براش انجام میدن که خوشبختانه در اکثر هاست های لینوکس سی پنل و دایرکت ادمین هم نصب هستش.
ببینید سیستم Cache که برای PHP استفاده میشه با اون سیستم کش مرورگر که باید برای دیدن تغییرات Ctrl+F5 بزنید کاملاً متفاوته و در سیستم کش PHP تغییرات HTML لحظه ای نمایش داده میشن و نیازی به Ctrl+F5 نیست اما هر تغییری در فایل PHP نیازمند دوباره کش شدن اون فایل در سرور هست مثل ASP.Net که اگر در کد های سی شارپ یا ویژوال بیسیکش تغییری بدید دوباره کامپایل میکنه.
خب حالا PHP هم وقتی ببینه فایل از قبل تفسیر شده وجود داره دیگه نمیاد دوباره کد های یه فایل PHP که تغییری هم نکرده رو دوباره تفسیر و کش کنه بلکه همون نسخه کش شده رو براحتی اجرا میکنه.
پس می بینید این اعتقاد ASP.Net کار ها که فکر میکنن PHP انقدر هنوز عقبه که هر بار هزاران خط کد رو دوباره تفسیر میکنه کاملاً اشتباهه.
برای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنید
فکر نکنید سیستم Caching هم چیزیه که شما نیاز دارید نصب کنید یا به هاستینگ بگید نه PHP خیلی وقته به صورت پیش فرض همراه با نصب خودش در سرور سیستم کش پیش فرضی هم فعال میکنه و تازه مدیران سرور انقدر هوش و تخصص کانفیگ سرور دارن که یه کانفیگ غیر اصولی و نا پایدار رو باهاش به مردم هاست نفروشن.
شخصاً از هر هاستینگی حتی هاستینگ های نه چندان معروف هم هاست خریدم دارای سیستم Cache بودن و حتی در هاست هایی که با سیستم عامل CloudLinux اجرا میشن یکی از برتری های بزرگ PHP به ASP.Net پیدا میشه که می تونید در سطح یه User معمولی هاست تغییرات سطح سروری فقط برای PHP خودتون بدید مثلاً می تونید نسخه PHP دلخواه خودتون رو انتخاب کنید یا مقادیر دیگه تنظیمات PHP مثل محدودیت رم و حجم آپلود و... هم بدون حتی تیکت زدن به هاستینگ تغییر بدید.
درباره امنیت هم اصولاً امنیت سیستم عامل های Unix-Based و توزیع های لینوکس به صورت ذاتی بیشتر از سیستم عامل ویندوز هستش اما در هر دو نیازمند کانفیگ های امنیتی حرفه ای هستیم و نمیشه بگیم فقط یه سیستم عامل رو سرور نصب کنیم حله امنیت خودش بر قرار میشه بعد همونطور که می دونید امنیت هیچ وقت 100 درصد نیست و حتی امن ترین شبکه ها و سرور ها هم ممکنه روزی هک بشن.
اما درباره امنیت بین خود PHP و ASP.Net درسته که PHP به صورت پیش فرض نمی تونه کد هاش رو برای کسانی که به محتویات فایل های PHP سرور دسترسی دارن مخفی کنه و نیازمند نرم افزار های دیگه مثل iOnCube و Zend Guard و... هستش اما فکر میکنید ASP.Net هم یه کامپایل کنید و کامپایل شده رو بریزید رو سرور امن امن هستید نرم افزار هایی با عنوان Decompiler وجود دارن که همونطور که از اسمشون معلومه عمل برعکس کامپایلر رو انجام میدن و می تونن براحتی سورس کد نرم افزار ها و کلاً فایل هایی که با دات نت ساخته شدن رو براتون در بیارن مثل نرم افزار عالی NET Reflector. که قشنگ می تونید یه پروژه کامل هم از یه فایل EXE. دات نت در بیارید برای همین همونطور که PHP نیازمند نرم افزار های دیگه برای محافظت هستش دات نت و زبان هاش هم برای محافظت نیازمند نرم افزار های دیگه هستن تا بتونن یا کلاً جلوی Decompile شدن رو بگیرن یا اینکه حداقل کد ها رو بهم ریخته و ناخوانا کنن که اگر Decompile هم شد طرف نتونه براحتی برش گردونه به پروژه و نیازمند وقت خیلی زیادی باشه.
ببخشید طولانی شد نه که خودم هم با PHP و هم با ASP.Net تا حدی کار کردم و بهشون علاقه دارم خواستم کامل توضیح بدم.
اما فکر کنم متوجه شدید که من شخصاً به PHP علاقه بیشتری دارم برنامه نویسی تو ASP.Net هم لذت بخشه اما تو PHP و الخصوص محیط لینوکس (که هم رو Desktop و هم روی VPS داشته باشید) با اینکه در ظاهر سخته اما لذت بخشه حتی 4 تا دستور ساده هم در ترمینال لینوکس اجرا کنید یه لذت خاصی داره یا وقتی با SSH کار کنید و یه کنترل پنل به اون عظمت مثل سی پنل یا دایرکت ادمین رو خودتون رو سرور شخصی خودتون با چند تا دستور ساده نصب کنید دیگه خیلی خیلی لذت بخش تره برای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنید
بعد من چون آدم تنبلی هستم همیشه دوست دارم تا سیستم عامل نصب میکنم کارمو شروع کنم سر همین قضیه حال و حوصله هر بار نصب ویژوال استودیو که تازه الان نصبش هم نیمه آفلاین نیمه آنلاین شده رو ندارم و اغلب اوقات یادم میره نصب کنم اما PHP رو معمولاً فقط با ++Notepad در ویندوز یا Geany در لینوکس می نویسم.






پاسخ با نقل قول
Bookmarks