دسته بندی
-
زبان برنامه نویسی PHP بهتر است یا ASP net؟
-
قبل از اينکه اصلاً به اين سؤال جواب بديم يه مقايسه تاريخی بين php و asp لازم هستش. هدف اصلی زبان PHP رو ميشه در به وجود آوردن امکان دايناميک کردن وب سايت ها (مثلاً گرفتن پشتيبان از ديتا بانک و ...) عنوان کرد در حالی که شرکت ميکروسافت ASP.net رو به عنوان پل ارتباطی بين برنامه های کلاسيک و برنامه های تحت وب معرفی ميکنه.
-
00
-
بازدید این صفحه : ۳۴۵۰تاريخ : 16 اسفند 1393
قبل از اينکه اصلاً به اين سؤال جواب بديم يه مقايسه تاريخی بين php و asp لازم هستش.
هدف اصلی زبان PHP رو ميشه در به وجود آوردن امکان دايناميک کردن وب سايت ها (مثلاً گرفتن پشتيبان از ديتا بانک و ...) عنوان کرد در حالی که شرکت ميکروسافت ASP.net رو به عنوان پل ارتباطی بين برنامه های کلاسيک و برنامه های تحت وب معرفی ميکنه.
گذشته از اينکه هر برنامه نويس و طراح سایت به شکل ديگه اي زبانی رو که باهاش کار ميکنه ميبينه, ميشه گفت که تقريباً هر کاری رو ميشه با هر دو زبان انجام داد (حالا کمتر يا بيشتر، ساده تر يا پيچيده تر, بماند )
خوب ميريم سراغ ASP:
سالها بعد از تسلط PHP به دنيای وب بالاخره ميکروسافت هم با ASP يک زبان مدرن رو وارد بازی کرد تا از اين کيک پر در آمد بی نصيب نمونه. همين مسئله باعث شده که اکثريت زبان ASP رو عنوان وسيله ی ديگه اي از ميکروسافت ببينند که برای مونوپول کردن دنيای اينترنت ازش استفاده ميشه (مثل همون کاری که windows کرد)
نقاط ضعف ورژن های اوليه ASP زياد بودن که من فقط چند نمونه ازشون رو عنوان ميکنم
اول از همه پيچيدگی سينتکس ASP در ورژن های اول که خودش سوژه بحث چند ساله بين برنامه نويسا بود.
دوم همخونی کامل فقط با اينترنت اکسپلرر خود شرکت ميکروسافت (جمله معروف: ASP فقط با اينترنت اکسپلرر درست کار ميکنه)
دليل اين مشکل هم اين بود که ASP فقط server side نبود و از اسکريت های client side هم استفاده زيادی ميکرد که فقط کد های html سازگر با اينترنت اکسپلرر بيرون ميدادند، البته اين مشکل تا قسمتی بسته به کار برنامه نويس ها هم بوده ولی خود ASP برنامه نويس رو بيشتر به اين مسير هدايت ميکرد.
علاوه با اين مشکلات کسانی که با ورژن های اول ASP کار کردن اين تجربه رو داشتن که برنامه نويس فقط با يک زبان کار نميکرد بلکه از هر گوشه بايد سری به جاهای ديگه هم ميزد تا کارش تموم بشه.
و يکی ديگه از مشکلات ASP شباهت بيش از حد سينتکس ها به زبان وی بی بود که باعث سر درد بيشتر برنامه نويسا ی سابقه دار تر شد که به زبان های سی و سی ++ عادت داشتن.
(البته اين هم گفته باشم که خيلی از برنامه نويس ها تا مدت ها وی بی رو به عنوان زبان برنامه نويسی نگاه نميکردن، دلايلش باشه واسه بعد)
و بالاخره ميکروسافت در ASP.net بخش بزرگی از اين مشکلات رو از سر راه برنامه نويس برداشت.
ASP.NET مثل بيشتر محصولات شرکت ميکروسافت (اصلاً جای تعجب نيست) فقط روی سيستم های windows و IIS کار ميکنه البته اين حرف هم به مرور زمان ديگه درست نيست چون ميکروسافت کم کم به سمت پروژه های open source کشيده ميشه.
در اين پروژه کد های قابل اجرا در يک قدم به زبان ماشينی بی طرف ترجمه ميشه و فقط موقع اجرا به زبان خاص پلاتفرم کامپايل ميشه. علاوه بر اين .net از يک framework (کلاس & فانکشنس) نسبتاً قوی برای هر کاری برخورداره که خيلی جاها باعث راحتی کار برنامه نويس ميشه.
جالبی ديگه ی .NET اينه که وابسته به زبان برنامه نويسی خاصی نيست ، در حال حاضر هم ميشه از وی بی.net و هم از C# به عنوان زبان برنامه نويسی استفاده کرد ولی در کل ميشه از زبانی تحت تکنولوژی .NET استفاده کرد.
اين مسئله اولين برتری رو نشون ميده. وارد کردن ASP به تکنولوژی .NET کار برنامه نويس رو به مراتب ساده تر کرده. مثلاً دسترسی به ديتا بيس و .... علاوه بر اين ابزار های مختلفی از شرکت ميکروسافت به بازار ارائه شده (مثلاً Visual Studio) که با استفاده ازشون ميشه پروژه های حرفه اي هم اداره کرد.
از اين مسئله ميشه نتيجه گرفت که ASP.NET به دليل پيچيدگی و اينکه توانايی در تکنولوژی .NET برای هر برنامه نويسی لازمه برای هر کسی خوشايند نيست
ASP.NET به همراه IIS نسبتاً از سرعت بالاتری برخورداره که البته دليلش هم اينه که ASP.Net کامپايل ميشه در صورتی که PHP فقط زمان اجرا Interpret ميشه.
و امّا PHP
تاريخچه به وجود اومدن PHP هم که تقريباً همه ميدونن واسه همين زياد در موردش چيزی نميگم.
برتری اصلی PHP آپن سورس بودنشه و لازم نيست هزينه اي بابت ليسنس های مختلف پرداخت بشه. به خصوص در ترکيب با Linux ، Apache و MySQL در مدت زمان خيلی کمی PHP به عنوان اولين انتخاب برای تکنولژی تحت وب جای خودش رو ثبت کرد. (LAMP = linux, apache, mysql, php)
البته PHP فقط تحت لينوکس و با Apache قابل استفاده نيست، بلکه به سادگی تحت windows به همراه IIS هم قابل استفادست.
از جمله برتری های ديگه ی PHP ميشه شباهت سينتکس رو به زبان C و سخاوتمند بودن PHP نسبت به کد نويسی رو عنوان کرد. در کل ميشه گفت که PHP برای تازه کار های عزيز راحت تره و هر کسی خيلی راحت ميتونه شروع کنه به نوشتن کد های کوچيک بدون اينکه به اينيسيال کردن توابع و تايپ ها توجه زيادی بکنه.
البته همين برتری به شکلی يکی از مشکلات اصلی PHP هم هست، چون باعث ميشه که برنامه نويس های تازه کار اشتباهت بزرگی بکنند بدون اينکه خودشون متوجه بشن. حتماً همه 1000 تا سايت ميشناسند که مثلاً به خاطر دقت نکردن برنامه نويس و يا ناواردی از طريق اينجکشن هک شدن.
البته در ورژن پنجم PHP و فعلاً آخرين ورژن قسمت های اصلی يک زبان OOP وارد شدن و در کل زبان حرفه اي تری نسبت به قبل شده.
بر عکس ASP.NET زبان PHP عضوی از يک تکنولژی مادر نيست (منظورم تکنولژی .NET در کل هستش) به همين دليل PHP مثل ASP از کتابخانه کاملی برخوردار نيست اگرچه از نظر Function چيزی کم نداره ( اين هم باز يکی از خوبی های Open Source بودن برنامه هستش)
البته اينجا هم باز PHP کم نمياره و با معرفی PEAR (=PHP Extention Application Repository) خودش رو کمی به Framework ميکروسافت نزديکتر ميکنه.
اين Framework کامپننت های اصلی برای کار مثل تمپليت و ديتا بيس و .. رو همراه داره و اگه همينجور ادامه بده تا چند سال ديگه چيزی در اين موارد از .NET کم نخواهد داشت.
مشکل بعدی PHP کمبود برنامه ها ی کمکی و برنامه نويسی هستش، يکی از دوستان گفته بود که به نظر من .Net بهتره چون PHP حتی IDE نداره. البته اين حرف درست نيست چون برای PHP هم IDE خوب هست. که فعلاً ميشه گفت بهترينشون IDE شرکت Zend هستش. (ولی با اينکه امکانات زيادی مثل ديباگر و کامل کردن اتماتيک کد رو داره باز هم مثل Visual Studio نيست)
متأسفانه پروژه های Open Source بيشتر وقت ها با همون سرعتی که به وجود ميان از بين هم ميرن واسه همين تا دلتون بخواد پروژه های بتا واسه دانلود وجود داره که چند ساله هنوز بتا موندن.
يکی ديگه از مواردی که طرفداران .Net هميشه عنوان ميکنن مسئله سرعت ASP هستش، که تنها دليلش در حقيقت کامپايل شدن .Net هستش و اينکه PHP کامپايل نميشه و فقط زمان اجرا Interpret ميشه. البته اين مشکل هم ميشه به راحتی با استفاده از Caching-System حل کرد.
با وجود تمام اين مشکلات طراحان و برنامه نویس های وب می تونن با PHP در مدت زمان کمی برنامه های کامل و پيشرفته اي بنویسن، مخصوصاً وقتی که مسئله مالی پروژه مهم باشه و بودجه کمی واسه کار داشته باشيد. حتی وب ديزاينر های نه چندان حرفه اي ميتونن با کمک PHP خيلی راحت مشکلات کوچيک خودشون رو حل کنن
و اما انتخاب:
از اين مقايسه ميشه چند تا نتيجه گرفت ولی مهمترينش حرف وکيل منه که هميشه ميگه "بستگی داره" يعنی اينکه نميشه جواب کلی داد به اين سؤال.
اگه بودجه کار زياد نيست و نتيجه هم بايد سريع عرضه بشه ميشه گفت که اولين انتخاب PHP هستش
ولی اگه فکر ميکنيد که پروژه بعد ها گسترده تر ميشه و قابليت بزرگتر شدن رو بايد داشته باشه و يا اگه اين پروژه وابستگی به برنامه های ديگه اي داره که ميکروسافت ارائه کرده بهتره بريد سراغ ASP.net مثلاً اگه شرکت توی برنامه انبار داری از Access استفاده ميکنه و يه زمانی بخواد پيوند بزنه بهتره از همون اولش با .NET شروع کنيد.
Alternates:
برای اينکه حق هم از بين نبريم اينم بگم که نه PHP و نه ASP.Net هيچ کدوم آخرين انتخاب نيستن.
Perl و ديگر زبان های برنامه نويسی وب هم هنوز جای خودشون رو حفظ کردن و توی خيلی از موارد مثلاً سرعت، 100 برابر ASP.Net و PHP کارايی دارن.
پس در نتيجه هر زبانی اگر در جای درست ازش استفاده بشه ميتونه بهترين باشه و در کار هميشه فاکتور های زيادی هستن که برای انتخاب زبان برنامه نويسی بايد در نظر گرفته بشن.
منبع:aboutwebdesign
نظر شما
-
خدمات طراحی سایت
-
ویترین اخبار
- راه اندازی سایت نشریه الکترونیک فرهنگ انقلاب اسلامی
- ملاک شناخت یک شرکت طراحی سایت قوی و توانا برای راه اندازی سایت اینترنتی شما چیست؟
- فرا رسیدن نوروز باستانی، یادآور شکوه ایران و یگانه یادگار جمشید جم بر همه ایرانیان پاک پندار، راست گفتار و نیک کردار خجسته باد
- راه اندازی وب سایت اینترنتی ماشین سازی درستگاههای تولید آرد
- راه اندازی وب سایت اینترنتی ملک آریا
- 7 مورد از قابلیتهای غیرمنتظره در iOS 7
- Apex در برابر Nova: مقایسه دو لانچر اندروید
- پاداش 15,000 دلاری برای شکستن قفل TouchID
- نیکون از AW1، اولین دوربین ضد آب با قابلیت تعویض لنز، پرده برداشت
- لومیا 1520 نوکیا و این بار مشخصات فنی، قیمت و زمان عرضه
- رکورد فروش موبایل در دست 8 مدل
- اپل در حال تست نسخه های 701 و702 و 71 سیستم عامل iOS؟
- علت دقیق سرعت پایین اینترنت را نمیدانیم
- بررسی اکسپریا Z1 سونی
- آموزش ساخت ایمیل یاهو پس از حذف ایران!
- سهام توییتر روانه بازار بورس میشود
- تبلیغات تازه مایکروسافت علیه آیفون شکست خورد
- مدیرعامل اینتل: تبلتهای زیر 100 دلاری در تعطیلات سال نوی میلادی از راه میرسند
- 27 شهریور iOS 7 برای آیفونها و آیپدها منتشر میشود
- کنسول بازی جدید سونی با قابلیت های جذاب و قیمت مناسب معرفی شد: Vita TV
- کمپانی دل برای چینی ها لب تاب لوحی می سازد!!!
- ایسوس فون پد 7 اینچی جدید را معرفی کرد: تبلت/تلفن هیبریدی با اسپیکر دو کاناله
- یاهو لوگوی جدید خود را رونمایی کرد
- ایسوس از لپتاپ لمسی و ارزان قیمت X102BA با پردازنده AMD پرده برداشت
- دوباره Moto X و این بار تصویر رندر شده تبلیغاتی آن [بروز شد]
- ولخرجیهای گوگل در حوزه دیتاسنتر ادامه دارد: 6-1 میلیارد دلار در سه ماهه دوم 2013
- تشکیل گروه جهانی« طراحی فناوریهای پوشیدنی» در موتورولا، با استناد به آگهی استخدام این شرکت
- آشنایی با سیستمفایلها و نحوه فرمتکردن درایوهای خارجی در مک
- سرفیس RT هنوز نمرده است
- دانلود کنید: اپلیکیشن VLC برای کاربران iOS منتشر شد
- بررسی همهجانبۀ شایعات پیرامون ساعتهای هوشمند
- تصاویر واضح از آیفون ارزان قیمت در کنار آیفون 5 فاش شد
- تبدیل تصاویر به فرمت ICO و استخراج آیکونها از فایلهای با فرمت EXE و DLL
- نسخه جدید اندروید در 2 مردادماه معرفی میشود
- ال جی از نام G2 برای پرچمدار بعدی خود استفاده میکند
- مشخصات فنی و بنچمارک گلکسی نوت 3 فاش شد
- تصویر و مشخصات جدید آیفون 5S به بیرون درز کرد: صفحه نمایش IGZO، دوربین 12 مگاپیکسل، پردازنده سریعتر و پردازنده گرافیکی چهار هستهای
- آیا میتوان پس از مرگ اطلاعات با ارزش را در اختیار خانواده، دوستان و آشنایان قرار داد؟
- تصاحب Omek توسط اینتل ممکن است باعث شود هرگز نیاز به لمس کامپیوتر خود نباشید
- نسخه جدید تحت وب نقشه گوگل در دسترس همگان قرار گرفت
- تلفن G2 ال جی مجهز به باتری 2540 میلی آمپر ساعتی است
- جزئیات بیشتر از دوربین 20 مگاپیکسلی هونامی: سنسوری بزرگ ولی نه به اندازهی لومیا 1020
- مرور تاریخچه دوربین در گوشیهای برجسته نوکیا
- دریافت استاندارد و رتبه 6 از 10 گوگل توسط سایت شرکت راوک نگار پارس
- بروزرسانی تعدادی از جدیدترین نمونه آثار طراحی سایت های هوشمند راوک نگار پارس
-
نماد اعتماد الکترونیکی
-
آمار بازدید
- کل (online):۳۸۱۵
- اعضاء (online):۱
- میهمان (online):۳۸۱۴
- بازدید امروز::۴۴۰۳
- بازدید دیروز::۱۴۷۹
- بازدید کل::۲۸۸۶۸۸۸۳
-
تبلیغات