Asp.Net یا PHP
تفاوت Asp.Net با PHP
مقایسه زبان PHP و سکوی Asp.Net برای طراحی سایت بحث طولانی و تمام نشدنی است. اکثر شرکت ها و برنامه نویسانی که یک زبان برنامه نویسی را یاد میگیرند علاقه مند به دفاع کردن از آن زبان هستند و بعضا دلایل غیر منطقی و غیر عملی برای کار خودشان دارند. دلیل اینکه تصمیم گرفتیم این مقاله را بنویسیم و دامن زدن به بحث های طولانی و غیر منطقی که بین برنامه نویسان زبان های PHP و Asp.Net وجود دارد. نیست زیرا زبان های برنامه نویسی ابزار هستند و در صنعت نرم افزار نیروی انسانی و تخصص است که حرف اول را می زند نه یک زبان برنامه نویسی. یک برنامه نویس بد با هر زبانی میتواند یک برنامه ضعیف، کند، غیر ایمن و سرشار از باگ را تولید کند و یک برنامه نویس خوب با یک زبان قدیمی نیز می تواند یک برنامه خوب بنویسد.
سرعت PHP بیشتر است یا Asp.Net ؟
یکی از دلایلی که که برنامه نویسان PHP برای دفاع از آن مطرح می کنند سرعت آن است و میگویند که سرعت PHP از Asp.Net بیشتر است. در حالیکه آزمایشات انجام شده نتیجه کاملا متفاوت را نشان می دهند. از نظر منطقی نیز چنین چیزی امکان ندارد. به این دلیل که کدهای خروجی Asp.Net در سمت سرور تفسیر نمی شوند. و به صورت dll هستند و web server در زمان اجرای کدها هیچگونه زمانی برای تفسیر آنها نمی گذارد و با سریعترین زمان ممکن اجرا می شوند. لذا چنین حرفی هیچ پایه و اساس علمی ندارد.
امنیت PHP بالاتر است یا Asp.Net؟
ایمن بودن نرم افزارهای کدباز از مبحاثی است که برخی از برنامه نویسان مطرح می کنند. به طور کلی هر سیستمی که افراد زیادی بر روی آن کار کنند و استفاده کنندگان زیادی داشته باشد به مرور تکمیل می شود. اما کدباز بودن نه تنها دلیل بر ایمن بودن نیست بلکه در بسیاری از موارد ممکن است باعث شود که سیستم فوق مورد حمله قرار گرفته و هک شود. به عنوان مثال پلتفرم جوملا که بر پایه PHP است یکی از ضعیف ترین پلتفرم ها از نظر امنیتی است و هر از چندگاهی شاهد هک شدن نسخه های مختلف های آن در اینترنت هستیم.
برخی از مشکلات امنیتی که ممکن است به خاطر برنامه نویسی سایت پیش بیاید عبارتند از:
- Remote code execution
- SQL injection
- Cross Site Scripting (XSS)
- Session Hijacking
- XSRF
هیچکدام از موارد بالا ارتباطی به زبان برنامه نویسی ندارد و برنامه نویس باید با موارد فوق آشنا باشد تا مشکل امنیتی برای آن بوجود نیاید. ضمن اینکه سیستم های بسیار زیادی در دنیا وجود دارند که با پلتفرم دات نت کار میکنند و اگر این پلتفرم مشکل داشت قطعا هیچ کدام از این شرکت ها به سمت آن نمی رفتند.
شی گرای بودن زبان های برنامه نویسی Asp.Net و PHP
php از بدر تولد به صورت یک زبان اسکریپت نویسی ارائه شد در حالی Asp.Net به صورت شی گرا پا به عرصه گذاشت. ولی بعدا PHP نیز به صورت شی گرا ارائه شده
سایت های بزرگی مانند گوگل، فیسبوک، آمازون و ... با جه زبان برنامه نویسی نوشته شده اند؟
پاسخ قطعا منفی است! سایت های فوق عمدتا از زبان های C++ ، پایتون و جاوا برای برنامه نویسی سمت سرور خود استفاده می کنند. و به هیچ وجه از پلتفرم های متن باز مثل PHP در طراحی بخش های اصلی آنها استفاده نشده است. تنها گوگل برای برخی از سرویس های جانبی خود به طور محدود از زبان PHP استفاده می کند. تنها سایت پر بازدید دنیا که از PHP استفاده می کرده سایت یاهو بود. که آن هم در حال انتقال برنامه های خود به زبان جدید node.js است.
همچنین یک از سایت های پر بازدید در حوزه برنامه نویسی به نام stackoverflow به زبان Asp.Net نوشته شده است.
زبان برنامه نویسی PHP چیست؟
یک نرم افزار یا بستر برنامه نویسی متن باز و رایگان است که توسط شخصی به نام رزموس لردورف (Rasmus Lerdorf) در سال 1995 نوشته شد و در سال 1995 به طور رسمی ارائه شد.
ویزگی ها و مزایای اصلی PHP
- PHP یک زبان اسکریپتی (مفسری)، Open Source و رایگان است که در آن برنامه نویسی به دو شکل رویه ای و شی گرا امکان پذیر است.
- برنامه های PHP در سمت سرور اجرا شده و خروجی آن می تواند به قالب های مختلف (معمولا HTML) به مرورگر کاربر ارسال شود.
- PHP می تواند با انواع نرم افزارهای بانک اطلاعاتی مانند MySQL ، Oracle ، SQL Server ، SQLite و... ارتباط بر قرار کند.
- قابل نصب روی سیستم عامل های مختلف مانند ویندوز و لینوکس و وب سرورهای مختلف مانند Apache و IIS است.
- PHP نسبت به Asp.Net نیاز به منابع سخت افزاری کمتری دارد و هاست های لینوکس که PHP را اجرا می کنند. از هاست ویندوز ارزانترند.
- افزونه ها و فریم ورک های زیادی برای PHP وجود دارد که اکثر آنها رایگان هستند.
- سیستم های مدیریت محتوا مانند : WordPress ، Joomla ، Drupal ، vbulletin ، MyBB و... با استفاده از PHP نوشته شده اند.
- انجمن های آنلاین بسیاری در اینترنت از جهت پرسش و پاسخ و رفع اشکال در رابطه با PHP وجود دارند که تقریبا هر مشکلی را می توان در آنجا مطرح کرد و در کمترین زمان پاسخ را دریافت کرد.
چه زمانی بهتر است از PHP استفاده کنیم؟ (پیشنهاد)
- اگر پروژه ای که می خواهید انجام دهید یک پروژه کوچک است و در مقیاس های بزرگ عملیاتی اجرائی نمیشود PHP می تواند گزینه خوبی باشد.
- اگر اسکریپت های آماده و کدهای آماده برای پروژه فوق به زبان PHP وجود ندارد. گزینه مناسبی است.
- اگر سرور شما لینوکس است. از PHP استفاده کنید.
چه زمانی بهتر است از Asp.Net استفاده کنیم؟ (پیشنهاد)
- اگر پروژه شامل انواع نقش های سیستمی و سطوح دسترسی محتلف و یک پورتال است از دات نت استفاده کنید.
- اگر می خواهید از ساختارهای نوین برنامه نویسی مانند MVC استفاده کنید از دات نت استفاده کنید.
- اگر می خواهید نرم افزار وب شما به صورت شی گرا تولید شود از دانت استفاده کنید.
- اگر به دنبال توسعه ساختار و پشتیبانی سیستم در دراز مدت هستید و دید کوتاه مدت به پروژ ندارید از دات نت استفاده کنید.
بازار کار زبان های برنامه نویسی در ایران
در ایران اگر به آگهی ها و استخدامی ها نگاه کنید خواهید دید که Asp.Net و Asp.Net MVC بازار کار و همچنین طرف دار زیادی دارد، شاید این امر دلیل عدم حق کپی رایت نرم افزارها و یا استفاده عموم مردم از سیستم عامل ویندوز می باشد.
سهولت یاد گیری زبان های برنامه نویسی
به نظر ما یادی گیری Asp.Net آسان تر از PHP است. همچنین شما در Asp.Net می توانید با زبان های مختلفی از جمله سی سارپ ، اف شارپ ، وی بی و... کد بنویسید. در صورتی که در PHP فقط شما با زبان PHP می توانید کد بنویسید.
نکته مهم:
اگر از یک برنامه نویسی Asp.Net سوال کنید که کدام زبان بهتر است قطعا خواهد گفت Asp.Net و اگر از یک برنامه نویس PHP سوال کنید، یقینا خواهد گفت PHP بهتر از Asp.Net است.
هر زبانی را که انتخاب کردید سعی کنید آن را به صورت کامل فرا بگیرید تا در آینده به راحتی مسیر برنامه نویسی خود را مشخص کنید.
منبع: کارکو