نوشته های شخصی حمید طاهری !

گپ و گفتی دوستانه در رابطه با فناوری اطلاعات

گپ و گفتی دوستانه در رابطه با فناوری اطلاعات

منوی بلاگ
طبقه بندی موضوعی
کلمات کلیدی
آخرین مطالب

Php یا Asp.NET

دوشنبه, ۱۱ دی ۱۳۹۱، ۰۱:۴۷ ق.ظ

 مقایسه ای بین دو زبان پر سر و صدای برنامه نویسی وب انجام داده ام را گذاشم، نوشته من پر از ایراد خواهد بود امیدوارم با نظرات سازنده شما دوستان به بهبود این مطلب بیفزائیم.

مقایسه در مورد Php (منبع باز) و Asp.NET (تجاری) که مورد بررسی هزینه، امکانات، مقیاس پذیری عملکرد، پشتیبانی و پیچیدگی این زبان ها باشه بسیار زیاد در سایت های مختلف خوندیم که اکثرا مغرضانه و هرکسی یا هر برنامه نویسی سعی بر قبولوندن ترجیحات خود داشته اند، یا اینکه به تاریخ مقالات که نگاه کنیم میبینیم تاریخ آن ها بسیار قدیمی است که با سرعت حرکت تکنولوژی میبینیم که تغییرات زیادی بر روی این زبان ها رخ داده است.

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

یکم ) هزینه ( مقرون به صرفه بودن)

در این بررسی طبیعتا Php منبع باز با در نظر گرفتن پلت فورم LAMP که شامل (Linux, Apache, MySQL, PHP) میشود و تمامی آن ها نیز منبع باز هستند در مقایسه با رقیب تجاری خود Asp.NET جلو میزند و استفاده از اون برای ما مقرون به صرفه تر خواهد بود. اما یک نگرانی برای ما بوجود می آورد و آن چیزی نیست جز هزینه های اضافی برای پشتیبانی و مقیاس پذیری زبان هاست.

دوم ) مقیاس پذیری و سهولت تعمیر و نگهداری

خوب در این مقوله باید بگم که مستقیما بر میگرده به توانایی های خود برنامه نویس آن سایت که با استفاده از چه روش ها و تکنولوژی هایی سایت خود را مقیاس پذیر تر و یه تعمیر و نگهداری آن سهولت بخشد پس اگر بخواهم آن را دسته بند بکنم شامل میشود از :
- تجربه برنامه نویسان
- استفاده از بهترین شیوه های برنامه نویسی
- استفاده از یک چارچوب برنامه نویسی واحد (برنامه نویسی های چند لایه)
- استفاده از استاندارد ها و دستورالعمل های صحیح برنامه نویسی
اما سرعت این کار و راعایت این نکات در زبان Asp.NET با سادگی و سرعت بیشتری همراه خواهد بود

سوم) عملکرد و سرعت

برای هر کسی که قصد دارد تا سایتی راه اندازی کند سرعت سایت و عملکرد آن نسبت به کاربرانش بسیار قابل ملاحظه است و متاسفانه گاها سریع مقایسه با سایت های بزرگی چون گوگل، یاهو و … که عمدتا منبع باز (Php) هستند به این نتیجه برسیم که پس Php زبان سریع تر و عملکرد بهتری خواهد داشت دور از انصاف خواهد بود.
قصد من این است که حالات معمول و غیر معمول که برای یک سایت رخ میدهد را بررسی کنیم تا ببینیم کدام یک از زبان بهتراند
سناریو اول (پایگاه داده)
همانطور که تک تک شما ها میدونید یک سایت تعامل بسیاز زیادی از کامپیوتر کاربر با کامپیوتر سرویس دهنده برقرار میکنه که عمدتا این ارتباطات برای برقراری و رد و بدل کردن اطلاعات از پایگاه داده است، اما باید اعتراف کنیم که این اتفاق هیچ ارتباطی با زبان برنامه نویسی شما نخواهد داشت و سرعت عملکرد این کار بر میگردد به پایگاه داده سرویس دهنده ، وب سرویس شما و مرورگر، پهنای باند کاربر بازدیدکننده سایت.
حال باید بررسی را منعطف کنیم بر روی MySQL ( نوشته شده توسط اوراکل) و MSSQL که رقبای هم در این رقابت هستند اول خواستم با SQL Server 2008 R2 مقایسه کنم MySQL رو اما تفاوت ها بسیار زیاد با ۸ سال پیش مقایسه کنیم اگر یعنی SQL Server 2000 میبینیم آن موقع هم MSSQL جلوتر بوده است و MySQL ای که طی این سال ها تغییرات زیادی نداشته است. اما با در نظر گرفتن اینکه جواب گو سایت های خیلی بزرگی بوده است نباید MySQL را نیز دست کم گرفت اما در مجموع از این حیث Asp.NET را میتوان قوی تر دانست.
سناریو دوم ( دسترسی به ساختار فایلی)
خوب طبیعتا شما نیز برای سایتتان نیاز به رسیدن به فایل های نمایش آن ها و از این قبیل کارها دارید و بیاد اعتراف کرد که ext4 (فایل سیستم) لینوکس بسیار سریع تر است از NTFS (فایل سیستم) ویندوز برای انجام کارهای IO خواهد بود
سناریو سوم (سرعت کامپایل کدها)
همانطور بیشتر شایه شده برای نوشتن Asp.NET بیشتر از زبان Cشارپ استفاده میشود که خود زبانی بسیار قوی تر از Php بود این بخش را از پیش خود را برنده میداند. زیرا سی شارپ قدرت اجرای ۲ میلیون حلقه را دارد البته طبیعتا در نسخه ۲۰۱۲ آن بهبود هم یافته است که خیلی اتفاق نادری است بخواهیم گمان کنیم قدرت زبان Php به این زودی ها زا سی شارپ جلو بزند. البته پنهان نباشه که قدرت خود برنامه نویس نیز خیلی خیلی تاثیرگذار خواهد بود.

حال با گفتن این سه سناریو شما خودتان انصاف قضاوت اول را بر عهده بگیرید آیا درست بود به سرعت بگوییم کدام بهتر است ؟!

چهارم) هزینه

هزینه خرید تکنولوژی های مختلف مثل VS و … که وقت تلف کردن است در ایران در مورد آن حرف بزنیم چون همگی قیمتی یکسان دارند. اما اگر خارج از ایران هستید حتما میدانید که قیمت Asp.NET سر به فلک میکشد در مقابل Php منبع باز ارزان قیمت!

پنجم ) پشتیبانی و منابع

ابتدا هم گفتم از آنجایی که LAMP منبع باز است هر کسی در هرجای دنیا میتواند توسعه دهنده این تکنولوژی باشد اما Asp.NET توسعه اش وابسته به توسعه دهندگان مایکروسافت است که به شماره و تاریخ این اتفاق برایش رخ خواهد داد از این رو میتوان طبق قانون تمامی تکنولوژی های منبع باز این اعتراف را داشت سرعت توسعه LAMP بسیار بیشتر خواهد بود.
جدا از آن Php قابل اجرا بر روی تمامی سیستم عامل هاست اما Asp.Net تنها بر روی ویندوز قابل اجرا خواهد بود.
شما برای نوشتن Php هر ویرایشگر دلخواهی میتوانید داشته باشید و آزادانه کدنویسی کنید اما Asp.Net حتما به محیط Visual Studio نیازمند است.
نکته مهمی که داریم اینه که شما در یک سایت باید از جاوا اسکریپت، آجاکس و jQuery که همه نیز منبع بازند استفاده کنید که طبیعتا Php به دلیل متن باز بودن راحت تر پذیرای آن است اما این که به راحتی درAsp.Net هر قابل استفاده اند را نباید زیر چشم گذاشت.

ششم) سایت های محبوب شما چه زبانی دارند

البته ابتدا عرض کنم که اینکه این سایت ها به چه زبانی نوشته شده اند ملاک بزرگی برای انتخاب نخواهد بود

سایت زمان شروع پلت فورم سرویس دهنده زبان برنامه نویسی
Google.com November 1998 Linux C, Java, C++, PHP & MySQL
Facebook.com February 2004 Linux PHP, MySQL and C++
YouTube.com February 2005 Linux C, Java and MySQL
Yahoo.com August
1995
Linux C++, C, Java, PHP & MySQL
MSN.com (owned by Microsoft) August
1995
Windows ASP.net
Live.com (owned by Microsoft) August
2008
Windows ASP.net
Wikipedia January
2001
Linux PHP & MySQL
Amazon.com October
1995
Linux & Solaris C++, Java, J2EE
WordPress.com November
2005
Linux PHP & MySQL

هفتم) محبوبیت

پلت فورم LAMP محبوب تر از ویندوز است در سال ۲۰۱۰ طبق آمار ۵۴٫۹۰% سایت های موجود ثبت شده بر روی این پلت فورم بنا شده بودند

هشتم) قابلیت و سهولت استقرار

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

۹۱/۱۰/۱۱ موافقین ۱ مخالفین ۰
حمید طاهری

نظرات  (۰)

هیچ نظری هنوز ثبت نشده است

ارسال نظر

ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی