میهمان گرامی ، خوش آمدید . عضــویت



رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5

ASP یا PHP شما کدام را ترجیح می دهید؟

#1
Lightbulb 
دلایل برتری PHP نسبت ASP

7 دلیل برتری PHP نسبت ASP را در این مقاله بررسی میکنیم . امیدوارم کمکی در جهت بالا بردن سطح علمی دوستان و آشنا شدن آنها با PHP باشه.


1_سرعت

سرعت اولین باری که یک کد به زبان PHP نوشتم بسیار برایم جالب بود که چقدر کد های من سریع اجرا می شوند . یعنی در آن موقع بااگر شما یک Windows NT بر روی آن می توانستید سوار کنید و به فرض که IIS هم بر روی آن بالا می آمد فکر کنماصلا وقت Serve کردن صفحات عادی html را نداشت چه برسد به اینکه بخواهد ASP را هم اجرا کند . علتش این استکه Microsoft از یک Technology در اجرا کردن کدهای زبان ASP استفاده می کند که در آن هر موقع شما تصمیم بهاستفاده از یک عنصر خارجی مانند VBScript, MSSQL, ODBC و خیلی چیزهای دیگر که در حقیقت از Engine هایخارجی استفاده می کنند دستور به آن Engine خارجی می دهد و جواب بدست آمده را بررسی و برای استفاده در اختیارادامه برنامه می گذارد . همین رفت و برگشت و اجرا کردن Engine های خارجی باعث کند شدن سرویس دهی می شود کهاین را شما به خوبی می توانید در استفاده از MSSQL به طرق مختلف احساس کنید . مثلا اگر شما خود MSSQL Extentions
برای استفاده از MSSQL استفاده کنید برای یک Query مشترک ۱.۸۸ ثانیه زمان تلف می شود و اگر همان را با استفادهاز ODBC اجرا نماﺋید زمانی در حدود ۹.۵۴ثانیه تلف می شود که این خود نشان می دهد که ASP اینها را به تنهاﺋی اجراءنمی کند و از Engine های ویندوز استفاده می کند .


2_استفاده بهینه از Memory

در IIS4 اگر شما در یک صفحه مثلا ۲۰ بار یک صفحه را Include کنید این صفحه ۲۰بار در حافظه بارگذاری می شود و درحقیقت حافظه شما ۲۰ برابر زیادتر اشغال می شود . البته شنیدم که این مشکل در ویندوز ۲۰۰۰ و IIS5 حل شده استاما بازهم برای کسانی که ASP را مینویسند و می خواهند آنرا بر روی سرور های Hosting که دارای سیستم عامل NT
هستند اجرا کنند مشکل زا است و باعث کند شدن سیستم می شود و در Load بالا مسلما مشکل زا خواهد شد .
این مشکل به طور کلی در PHP وجود نداشته و ندارد و استفاده درست از Memory در هنگام اجرای یک کد باعث شده استکه صفحات در Load بالا نیز به خوبی قابل رٶیت باشند .


3 _خرج اضافی ندارید !

مثلا در ASP اگر بخواهید از امکاناتی نظیر Encryption یا File Uploading یا ارسال نامه توسط کد برنامه استفاده کنیدباید امکانات اضافی برای این کار خریداری کنید و نصب کنید تا این امکانات به IIS شما اضافه گردد . این در حالیست کهدر PHP همه اینها در هنگام Compile در نظر گرفته می شوند و همگی از امکانات Standard این زبان هستند و هیچ نصبیا خرج اضافی در کار نیست .

MySQL _4

بهترین انتخاب، بیشترین سرعت در اینجا قصد ندارد به مقایسه MySQL و MSSQL بپردازم . اما به خاطر قدرت خارق العاده MySQL و سازگار بودن این
DBMS با زبان PHP به صورتیکه PHP اتصال به MySQL را به صورت دستورات Internally پشتیبانی می کند و حتی نیازبه نصب Module اضافی برای این کار نمی باشد ، از سرعت بسیار بالاﺋی در کار با SQL برخوردار است که شاید بعدا درمورد MySQL مقاله ای نوشتم .


5 _نزدیک بودن Syntax به ++C/C و Java


از آنجاﺋیکه اکثر برنامه نویسان از ++C/C استفاده کرده اند و بخاطر محبوب بودن بی حد Java معمولا با Syntax هایاین دو زبان اکثرا آشنا هستند . PHP هم اکثر Syntax های خود را شبیه به این زبانها انتخاب کرده است که برای یادگیریدوباره Syntax دستورات دچار مشکل نشوید که مسلما Microsoft اصلا برایش این مساﺋل مشکل حساب نمی شود .


6 _رفع ایرادات

تا حالا از Microsoft خواسته اید که ایرادی را در سیستمهای خود رفع کند ؟ مسلما اگر شرکت بزرگی مانند Boeingنباشید حرف شما خیلی خریدار ندارد یا لااقل به این زودی ها به نتیجه نمی رسید .
OpenSource بودن PHP این امکان را به شما می دهد که شخصا اقدام به رفع مشکل کنید و آنرا برای دست اندرکاران PHPارسال کنید و یا اینکه در Mailing List های عمومی PHP موضوع را مطرح کنید و خواهید دید که از سراسر دنیا برایرفع ایراد شما Patch ارسال می گردد .


7 _اجرا بر روی Platform های مختلف

درست است که خیلی از این ایرادات را Microsoft رفع خواهد کرد و Technology های جدیدتر اراﺋه خواهد کرد ( چهبسا این Net. که الان آمده همه را درست کرده باشد ) اما یک مشکل اساسی برای ASP وجود دارد و آن این است که
ASP بدون Windows یعنی هیچ ! بدلیل اینکه ASP نصفی از کدها را توسط Engine های ویندوز اجرا می کند که درسیستم عامل های دیگر خبری از آنها نیست . لذا ASP در سیستم عاملهای دیگر همیشه دارای ضعفهای بزرگی است .
اما PHP به دلیل آنکه توسط GNU C Compiler در همه Platform ها قابل Compile شدن است و از Engine های خاصهیچ سیستم عاملی برای اجرای کدها استفاده نمی کند قابلیت اجرا بر روی تعدا زیادی از OS ها را داراست که این یکمزیت برای برنامه نویس ها محسوب می شود.


منبع:طراحی سایت نونگار پردازش
خدایا ، امروز زندگیم را در دستان توانمندت قرار می دهم و به تو، توکل می کنم که چراغ و هدایتگر راهم باشی .
خدایا اگر به یاد آورم که در گذشته چگونه از من مراقبت کردی
در زمان حال به تو توکل می کنم و می دانم، سپردن آینده به دستان توانای تو، بسیار اسان است.
Rose
اگر می خواهی خوشبخت ، باشی سعادت دیگران را هم در نظر بگیر
اگر شادی و تمام چیزهای مطلوب را با دیگران قسمت کنید ،
شادی و چیزهای مطلوب بیشتری را به سمت خودتان جذب می کنید.
امتحان کنیدRose
شهر از بالا زیباست ؛ و آدم ها از دور جذاب .لطفاً فاصله مناسب رو حفظ کنید تا قشنگ بمونیدRose

 سپاس شده توسط hadi ، آرام ، Vahid_Farahmandian ، hamidi
#2
مقاله جالبی بود ولی من بعنوان کسی که 4-5 ساله asp.net کار میکنم، به نظرم هر دوتاشون خوبن و نمیشه مقایسه کرد و یکی رو بهتر از دیگری به حساب آورد. هرچند که اگر منظورتون هم مقایسه PHP با ASP Classic باشه هم بهتر بود مقایسه نکنید چرا که ASP Classic الان تقریبا و تحقیقا دیگه از رده خارج شده. در مورد syntax هم که Razor و ... تو ASP.Net هستن که رقیب جدی هست برای PHP.
در حالت کلی فکر کنم بهتره اینارو باهم مقایسه نکنیم چرا که هر دو غول هستند و این سلیقه افراد هست که مشخص میکنه کدوم باشه.
هرچند که سایت هایی مثل فیسبوک و گوگل از MySql یا PHP استفاده می کنند ولی در طرف مقابل سایت هایی مثل سایت اینترپل و مایکروسافت و stackoverflow,codeproject
///////
در حالت کلی هر دوتاشون هم خوبن و این هم یه مقایسه در مورد هردوشون:
/////

ASP
.
net
یک محصول مایکروسافتی است که در مجموعه دات نت ارائه شده است. اما php یک زبان تحت وب اوپن سورس است. - برنامه های نوشته شده توسط
asp
.
net
روی سرور های ویندوز قابل اجرا هستند ، اما برنامه هایی که با php تولید میشوند تحت لینوکس اجرا میشوند. (البته تحت ویندوز هم میشه php نصب کرد، اما تحت لینوکس به صرفه تره . چون اجاره سرور لینوکس ارزان تره)- نگهداری سرور های لینوکس هم به مراتب راحتره- سرور ویندوز به خاطر لایسنیهای سیستم عامل و دیتا بیس گرونه و مشکلات خودش رو داره. -
ASP
.
net
قابلیت encode کردن کدهای نوشته شده سمت سرور را با تبدیل آنها به یک فایل DLL فراهم ساخته است (code-Behind) تا حتی کسی که به سرور شما دسترسی دارد هم سورس های شما رو نبیند. اما php گزینه کامپایل ندارد . البته یک رمزنگار بنام zend برای php نوشته شده که کاری مشابه encode کردن را بر روی کدهای php انجام میدهد. - قابلیت های شی گرایی در
asp
.
net
به دلیل قابلیت کامپایلی بودن آن و مجتمع شدن با سایر زبان های دات نت خیلی بهتر پیاده سازی شده است. -
Asp
.
net
برای برنامه نویسی های سریع بسیار مناسب است. زیرا تعداد بسیار زیادی کتابخانه دارد که کامپوننت های مخصوص هر کاری را بصورت آماده در اختیارتان قرار می دهد . اما در برنامه نویسی با php شما مجبورید اکثر بخش های برنامه نویسی را خودتان بنویسید و این وقت زیادی از شما می گیرد. البته در پروژه های بزرگ ، بخش کدینگ چون یکبار نوشته شده و چندین بار استفاده میشود، در میزان وقتی که در مقایسه با
asp
.
net
می گذارید چندان فرقی نمی کند. در ضمن در php گاهی دستان شما بازتر است. -
Asp
.
net
برای برنامه نویسی های سریع بسیار مناسب است. زیرا تعداد بسیار زیادی کتابخانه دارد که کامپوننت های مخصوص هر کاری را بصورت آماده در اختیارتان قرار می دهد . اما در برنامه نویسی با php شما مجبورید اکثر بخش های برنامه نویسی را خودتان بنویسید و این وقت زیادی از شما می گیرد. البته در پروژه های بزرگ ، بخش کدینگ چون یکبار نوشته شده و چندین بار استفاده میشود، در میزان وقتی که در مقایسه با
asp
.
net
می گذارید چندان فرقی نمی کند. در ضمن در php گاهی دستان شما بازتر است. - بانک اطلاعاتی مورد استفاده برای زبان های دات نت معمولا SQL Server است و بانک اطلاعاتی مرتبط با PHP معمولا MySQL است. تا این اواخر MySQL امکان نوشتن stored Procedure را نداشت که گویا در نسخه جدیدش اضافه شده. قیمت لایسنس SQL server معمولا از my sql بالاتره. - کدهای رایگان برای هر دو زبان در اینترنت به وفور یافت میشود و در این مورد نگرانی ندارید. - امکانات URL-Rewriting در زبان PHP ساده تر از زبان های دات نتی قابل پیاده سازی است. برای اینکار در ریشه سایتی که نوشته اید یک فایل htaccess میگذارید و تنظیمات مربوط به URL Rewriting را داخل آن تنظیم میکنید. اما برای زبان های دات نتی شما باید این تنظیمات را روی سرور انجام دهید. به همین دلیل اگر پروژه ای نوشته باشید که بخواهید در آن از امکانات URL Rewriting استفاده کنید در حالت برنامه نویسی دات نتی، نیازمند اجاره کردن یک سرور هستید که اینکار برای پروژه های کوچک که با 20 مگابایت هاست کارشون راه میفته توجیه اقتصادی نداره. (( URL-Rewriting به ایجاد آدرس های مجازی روی سرور میگن. مثلا آدرس وبلاگ هایی که شما در یک سرویس مانند پرشین بلاگ میسازید مجازی هستند. چون هیچ دامنه ای امکان داشتن یک میلیون ساب دامین واقعی رو نداره. پس اینکار توسط شبیه سازی انجام میشه که بهش URL Rewriting میگن.)) - PHP با زبان خاص خودش نوشته میشود و چندان هم مشکل نیست. اما
ASP
.
net
با استفاده از زبان های دات نتی قابل نوشتن است. که معروف ترین آنها vb.
net
و سی شارپ است. کدنویسی با استفاده از VB.
net
برای تازه کارهای برنامه نویسی خیلی ساده تر است و کد نویسی C# برای دانشجویان رشته نرم افزار که با زبان C آشنایی دارند توصیه میشه. معمولا هر برنامه نویسی با یکی از این زبان ها کار میکند و روی آن زبان متمرکز میشود. قدرت هر 2 زبان سی شارپ و VB.
net
در برنامه نویسی یکسان است و فقط سینتکس آنها متفاوت است. - خلاصه اینکه این دو زبان قدرت یکسانی دارند و فقط گاهی برای رسیدن به یک نتیجه خاص در پروژه تان ، با یکی ممکن است بیش از دیگری کد بنویسید و گاهی برعکس . اما در کل چیزی از هم کم ندارند و این پارامترهای تجاری است که تعیین میکند که در پروژه های بزرگ از کدام زبان استفاده شود .

در مورد مقایسه MySql, Sql Server هم باز باید به کار خودتون نگاه کنید، چرا که هردو قدرتمند هستند ولی باز من SQL SERVR رو ترجیح میدم.
اینم یه لینک بسیار خوب از مقایسه انواع دیتابیس ها:
*شما قادر به دیدن لینک ها نیستید ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید*
تولد چیزی غیر از آغاز مرگ نیست . ادوارد یانک
 سپاس شده توسط MaN!a ، hadi
#3
درود بر جناب دادائیسم اعظم Rose
ممنون از توجه و صرف وقت با ارزش و مطالب مفید و بجاتون RoseRose
شاید به جرأت بگم منی که اطلاعاتی کمی در این زمینه داشتم با خوندن مطالبی که شما قرار دادید کلی نکات آموزنده یاد گرفتم
RoseRose
و شاید بهتر باش عنوان تاپیک به ASP یا PHP شما کدام را ترجیح می دهید؟ تغییر بدیم و از دوستانی هم که پی اچ پی رو ترجیح میدن بخوایم تا برامون مطالب بذارن البته اگر دوستان بخودشون زحمت بدن و به این تاپیک تشریف فرما بشن Undecidedشم
تا جایی که می دونم بحث پی اچ پی و ای اس پی یچیزی تو مایه های استقلال پیروزی خودمون و طرفداران پی اچ پی از پی اچ پی دفاع می کنن و ای اس پی نویسان از ای اس پی ....درسته ؟؟!!Undecided

تصمیم گرفتم نکات بیشتری در این زمینه بذارم و اگر لطف بفرمایید با هر کدوم مخالف هستید با دلیل
مبتنه بفرمایید ممنون میشم
RoseRoseو در ضمن مطالبی که میذارم نتیجه گیری و خلاصه برداری هم میکنیم

UndecidedRose

دات نت ASP.NET
1- دات نت را می توان با C#.NET , VB.NET و … نوشت و در یک پروژه یا سایت می توان از چند زبان استفاده کرد.
۲- برنامه نویسانی که با دات نت وب سایت درست می کنند می توانند برنامه هایی برای ویندوز و یا موبایل و .. بنویسند.
۳- برای شروع برنامه نویسی دات نت برای وب، باید کمی برنامه نویسی در محیط ویندوز یا داس نیز یاد بگیرید.
۴- دات نت یک برنامه تجاری است. البته در ایران برای برنامه (VSS) هزینه ای پرداخت نمی کنید.
۵- معمولا از کنترل های آماده دات نت یا امثال تلریک در وب سایت ها استفاده می شود که باعث افزایش سرعت انجام پروژه می شود ولی سایت کند تر می شود.
۶- دات نت اپن سورس نیست و پروژه اپن سورس بسیار کمی در اینترنت موجود است.
۷- معمولا برنامه نویسان دات نت در اصل ویندوز کار هستند و شاید تخصصی برنامه نویس وب نباشند.
۸- دات نت توسط شرکت عظیم مایکروسافت ایجاد شده است و پشتیبانی و منابع آموزشی زیادی مانند MSDN دارد.
۹- هاست های دات نت که ویندوز هستند کمی گرانتر هستند.
۱۰- بیشتر وب سایت و پورتال ها با asp.net نوشته می شود پس درآمد ان بیشتر است
۱۱ -به دلیل اینکه بیشتر کاربران از ویندز استفاده می کنند وب سایت های asp.net امکانات بیشتری دارند.
۱۲ - امنیت آن بیشتر است


پی اچ پی PHP
1- پی اچ پی فقط برای تولید وب سایت درست شده است، پس شما احتیاج به یادگیری هیچ نکته اضافی ندارد.
۲- با پی اچ پی نمی توانید برنامه هایی برای ویندوز و … بنویسید.
۳- یادگیری و شروع پی اچ پی بسیار راحت است.
۴- پی اچ پی رایگان است.
۵- معمولا کنترل ها توسط خود برنامه نویسان نوشته می شود.
اینکار سرعت برنامه نویسی را کاهش می دهد ولی کد ها تمیز تر، سریع تر خواهند بود.
۶- PHP اپن سورس است و پروژه های و سایت های اپن سورس و رایگان زیادی می توانید در اینترنت موجود است.
۷- برنامه نویسان PHP به دلیل اینکه مختص وب برنامه می نویسند، در وب متخصص تر هستند.
۸- پی اچ پی رایگان است و آموزش های خوبی دارد ولی شرکت خیلی معتبری از آن پشتیبانی نمی کند.
۹- هاست های پی اچ پی که لینوکس هستند ارزانتر هستند.


توان برنامه نویسی دات نت با پی اچ پی در اصل فرقی ندارد.
خیلی از کارها در دات نت بسیار راحت تر انجام می شود ولی طبیعطا دخالت برنامه نویس در آن کمتر می شود و خیلی نمی توان آن را شخصی سازی کرد.
توصیه برای کسانیکه فقط می خواهند وب سایت بسازند PHP است
ولی برای کسانیکه که می خواهند یک برنامه نویس کامل (ویندوز و وب و ..) شوند دات نت

***********************************************************************

و در ادامه مباحث شما تاریخچه هر دو زبان برنامه نویسی :

هدف اصلی زبان PHP رو ميشه در به وجود آوردن امکان دايناميک کردن وب سايت ها (مثلاً گرفتن پشتيبان از ديتا بانک و ...) عنوان کرد در حالی که شرکت ميکروسافت ASP.net رو به عنوان پل ارتباطی بين برنامه های کلاسيک و برنامه های تحت وب معرفی ميکنه.
گذشته از اينکه هر برنامه نويس به شکل ديگه اي زبانی رو که باهاش کار ميکنه ميبينه, ميشه گفت که تقريباً هر کاری رو ميشه با هر دو زبان انجام داد (حالا کمتر يا بيشتر، ساده تر يا پيچيده تر, بماندUndecided)

سالها بعد از تسلط PHP به دنيای وب بالاخره ميکروسافت هم با ASP يک زبان مدرن رو وارد بازی کرد تا از اين کيک پر در آمد بی نصيب نمونه. همين مسئله باعث شده که اکثريت زبان ASP رو عنوان وسيله ی ديگه اي از ميکروسافت ببينند که برای مونوپول کردن دنيای اينترنت ازش استفاده ميشه (مثل همون کاری که windows کرد)
نقاط ضعف ورژن های اوليه ASP زياد بودن :
اول از همه پيچيدگی سينتکس ASP در ورژن های اول که خودش سوژه بحث چند ساله بين برنامه نويسا بود.
دوم همخونی کامل فقط با اينترنت اکسپلرر خود شرکت ميکروسافت (جمله معروف: ASP فقط با اينترنت اکسپلرر درست کار ميکنه)
دليل اين مشکل هم اين بود که ASP فقط server side نبود و از اسکريت های client side هم استفاده زيادی ميکرد که فقط کد های html سازگر با اينترنت اکسپلرر بيرون ميدادند، البته اين مشکل تا قسمتی بسته به کار برنامه نويس ها هم بوده ولی خود ASP برنامه نويس رو بيشتر به اين مسير هدايت ميکرد.
علاوه با اين مشکلات کسانی که با ورژن های اول ASP کار کردن اين تجربه رو داشتن که برنامه نويس فقط با يک زبان کار نميکرد بلکه از هر گوشه بايد سری به جاهای ديگه هم ميزد تا کارش تموم بشه.
و يکی ديگه از مشکلات ASP شباهت بيش از حد سينتکس ها به زبان وی بی بود که باعث سر درد بيشتر برنامه نويسا ی سابقه دار تر شد که به زبان های سی و سی ++ عادت داشتن.

و بالاخره ميکروسافت در ASP.net بخش بزرگی از اين مشکلات رو از سر راه برنامه نويس برداشت.


ASP.NET مثل بيشتر محصولات شرکت ميکروسافت (اصلاً جای تعجب نيست) فقط روی سيستم های windows و IIS کار ميکنه
[عکس: angry.gif] البته اين حرف هم به مرور زمان ديگه درست نيست چون ميکروسافت کم کم به سمت پروژه های open source کشيده ميشه.
در اين پروژه کد های قابل اجرا در يک قدم به زبان ماشينی بی طرف ترجمه ميشه و فقط موقع اجرا به زبان خاص پلاتفرم کامپايل ميشه. علاوه بر اين .net از يک framework (کلاس & فانکشنس) نسبتاً قوی برای هر کاری برخورداره که خيلی جاها باعث راحتی کار برنامه نويس ميشه.
جالبی ديگه ی .NET اينه که وابسته به زبان برنامه نويسی خاصی نيست ، در حال حاضر هم ميشه از وی بی.net و هم از C# به عنوان زبان برنامه نويسی استفاده کرد ولی در کل ميشه از زبانی تحت تکنولوژی .NET استفاده کرد.
اين مسئله اولين برتری رو نشون ميده. وارد کردن ASP به تکنولوژی .NET کار برنامه نويس رو به مراتب ساده تر کرده. مثلاً دسترسی به ديتا بيس و .... علاوه بر اين ابزار های مختلفی از شرکت ميکروسافت به بازار ارائه شده (مثلاً Visual Studio) که با استفاده ازشون ميشه پروژه های حرفه اي هم اداره کرد.
از اين مسئله ميشه نتيجه گرفت که ASP.NET به دليل پيچيدگی و اينکه توانايی در تکنولوژی .NET برای هر برنامه نويسی لازمه برای هر کسی خوشايند نيست
ASP.NET به همراه IIS نسبتاً از سرعت بالاتری برخورداره که البته دليلش هم اينه که ASP.Net کامپايل ميشه در صورتی که PHP فقط زمان اجرا Interpret ميشه.

برتری اصلی 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 شروع کنيد.

هر زبانی اگر در جای درست ازش استفاده بشه ميتونه بهترين باشه و در کار هميشه فاکتور های زيادی هستن که برای انتخاب زبان برنامه نويسی بايد در نظر گرفته بشن.
خدایا ، امروز زندگیم را در دستان توانمندت قرار می دهم و به تو، توکل می کنم که چراغ و هدایتگر راهم باشی .
خدایا اگر به یاد آورم که در گذشته چگونه از من مراقبت کردی
در زمان حال به تو توکل می کنم و می دانم، سپردن آینده به دستان توانای تو، بسیار اسان است.
Rose
اگر می خواهی خوشبخت ، باشی سعادت دیگران را هم در نظر بگیر
اگر شادی و تمام چیزهای مطلوب را با دیگران قسمت کنید ،
شادی و چیزهای مطلوب بیشتری را به سمت خودتان جذب می کنید.
امتحان کنیدRose
شهر از بالا زیباست ؛ و آدم ها از دور جذاب .لطفاً فاصله مناسب رو حفظ کنید تا قشنگ بمونیدRose

 سپاس شده توسط Vahid_Farahmandian ، hadi
#4
من با هر دوی این زبانها در حال برنامه نویسی هستم و با هر دوشون سایت میزنم .


اصلا بحث این حرفا نیست. یعنی اصلا اینقدر علمی با قضیه در عمل برخوذد نمیشه/


هیچ کدوم هم به طور مطلق بر دیگری ارجحیت نداره.


فقط و فقط خود پروژه مشخص میکنه که با کدوم زبان نوشته بشه. وقتی ده بیست تایی پروژه انجام دادین خودتون دستتون میاد که واسه چه پروژه هایی استفاده از PHP راحت تر و مقرون به صرفه تره یا استفاده از ASP مناسبتره.


پس پیشنهاد میکنم عملی پروژه انجام بدین تا تفاوتشون رو به طور صحیح درک کنید
 سپاس شده توسط MaN!a ، Vahid_Farahmandian ، hadi


موضوعات مشابه ...
موضوع
  انواع روش های مجازی سازی سرور چیست و کدام بهتر است
  ظرفیت حافظه USB خود را افزایش دهید



کاربران در حال بازدید این موضوع: 1 مهمان