peymans

php یا asp.net

5 پست در این موضوع

با سلام خدمت دوستان خوبم

من می خواهم برنامه نویسی سمت سرور و طراحی سایت را یاد بگیرم.به نظر شما کدام زبان برنامه نویسی سمت سرور بهتر است؟ php یا asp.net?

و یک سوال دیگه:

کسی می تواند بگوید که این سایت با php برنامه نویسی شده است یا با asp.net??

تشکر

http://www.*************

Share this post


Link to post
Share on other sites
آموزش ووکامرس قالب جوملا قالب وردپرس قالب رایگان وردپرس قالب رایگان جوملا هاست نامحدود هاست جوملا هاست لاراول هاست وردپرس هاست ارزان هاست ربات تلگرام خرید دامنه آموزش ساخت ربات تلگرام با php آموزش لاراول آموزش cPanel آموزش php آموزش فرم ساز RSform آموزش ساخت ربات جذب ممبر آموزش ساخت ربات دوستیابی آموزش ساخت ربات فروشگاهی برای ووکامرس آموزش طراحی سایت داینامیک با php آموزش بخش پشتیبانی با rsticket

درود

سایتاتون که فیلتره تو انجمن

ولی بطور کل اینجا انجمن جوملاست و طبیعتا به مباحث php*بیشتر پرداخته شده تا asp

شما هر سایتی رو با هر دو زبان میتونید پیاده سازی کنید . php انعطاف پذیری بالاتر و قابلیت های خوبی داره و Asp سبک تر و ظاهرا ( من تجربش رو نداشتم ) امن تره

البته توی مبحث امنیتش که خیلی روی Asp تاکید میشه من خودم به شخصه نظرم این نیست و احساس می کنم یه مقدار کم لطفی به php شده .

خلاصه کنم از نطر شخص من php خیلی توانمند تر و حوش دست تر از Asp*هست

این نظر من بود و ممکنه با نظر دوستان خیلی متفاوت باشه

موفق باشید

Share this post


Link to post
Share on other sites

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

۱) سرعت ، سرعت ، سرعتاولین باری که یک کد به زبان PHP نوشتم بر روی یک کامپیوتر Pentium ۱۶۶Mhz بود بر روی سیستم عامل Linux و بههمراه Apache Web Server . بسیار برایم جالب بود که چقدر کد های من سریع اجرا می شوند . یعنی در آن موقع بااگر شما یک Windows NT بر روی آن می توانستید سوار کنید و به فرض که IIS هم بر روی آن بالا می آمد فکر کنماصلا وقت Serve کردن صفحات عادی html را نداشت چه برسد به اینکه بخواهد ASP را هم اجرا کند . علتش این استکه Microsoft از یک Technology در اجرا کردن کدهای زبان ASP استفاده می کند که در آن هر موقع شما تصمیم بهاستفاده از یک عنصر خارجی مانند VBScript, MSSQL, ODBC و خیلی چیزهای دیگر که در حقیقت از Engine هایخارجی استفاده می کنند دستور به آن Engine خارجی می دهد و جواب بدست آمده را بررسی و برای استفاده در اختیارادامه برنامه می گذارد . همین رفت و برگشت و اجرا کردن Engine های خارجی باعث کند شدن سرویس دهی می شود کهاین را شما به خوبی می توانید در استفاده از MSSQL به طرق مختلف احساس کنید . مثلا اگر شما خود MSSQL Extentions

برای استفاده از MSSQL استفاده کنید برای یک Query مشترک ۱.۸۸ ثانیه زمان تلف می شود و اگر همان را با استفادهاز ODBC اجرا نما۶۵۱۶۳;ید زمانی در حدود ۹.۵۴ ثانیه تلف می شود که این خود نشان می دهد که ASP اینها را به تنها۶۵۱۶۳;ی اجراءنمی کند و از Engine های ویندوز استفاده می کند .

۲) استفاده بهینه از Memory

در IIS۴ اگر شما در یک صفحه مثلا ۲۰ بار یک صفحه را Include کنید این صفحه ۲۰ بار در حافظه بارگذاری می شود و درحقیقت حافظه شما ۲۰ برابر زیادتر اشغال می شود . البته شنیدم که این مشکل در ویندوز ۲۰۰۰ و IIS۵ حل شده استاما بازهم برای کسانی که ASP را مینویسند و می خواهند آنرا بر روی سرور های Hosting که دارای سیستم عامل NT

هستند اجرا کنند مشکل زا است و باعث کند شدن سیستم می شود و در Load بالا مسلما مشکل زا خواهد شد .

این مشکل به طور کلی در PHP وجود نداشته و ندارد و استفاده درست از Memory در هنگام اجرای یک کد باعث شده استکه صفحات در Load بالا نیز به خوبی قابل رٶیت باشند .

۳) خرج اضافی ندارید !

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

۴) MySQL بهترین انتخاب، بیشترین سرعتدر اینجا قصد ندارد به مقایسه MySQL و MSSQL بپردازم . اما به خاطر قدرت خارق العاده MySQL و سازگار بودن این

DBMS با زبان PHP به صورتیکه PHP اتصال به MySQL را به صورت دستورات Internally پشتیبانی می کند و حتی نیازبه نصب Module اضافی برای این کار نمی باشد ، از سرعت بسیار بالا۶۵۱۶۳;ی در کار با SQL برخوردار است که شاید بعدا درمورد MySQL مقاله ای نوشتم .

۵) نزدیک بودن Syntax به ++C/C و Java

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

۶) رفع ایرادات ، سریع ، بی دردسرتا حالا از Microsoft خواسته اید که ایرادی را در سیستمهای خود رفع کند ؟ مسلما اگر شرکت بزرگی مانند Boeing

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

OpenSource بودن PHP این امکان را به شما می دهد که شخصا اقدام به رفع مشکل کنید و آنرا برای دستندرکاران PHP

ارسال کنید و یا اینکه در Mailing List های عمومی PHP موضوع را مطرح کنید و خواهید دید که از سراسر دنیا برایرفع ایراد شما Patch ارسال می گردد .

۷) اجرا بر روی Platform های مختلفدرست است که خیلی از این ایرادات را Microsoft رفع خواهد کرد و Technology های جدیدتر ارا۶۵۱۶۳;ه خواهد کرد ( چهبسا این Net. که الان آمده همه را درست کرده باشد ) اما یک مشکل اساسی برای ASP وجود دارد و آن این است که

ASP بدون Windows یعنی هیچ ! بدلیل اینکه ASP نصفی از کدها را توسط Engine های ویندوز اجرا می کند که درسیستم عامل های دیگر خبری از آنها نیست . لذا ASP در سیستم عاملهای دیگر همیشه دارای ضعفهای بزرگی است .

اما PHP به دلیل آنکه توسط GNU C Compiler در همه Platform ها قابل Compile شدن است و از Engine های خاصهیچ سیستم عاملی برای اجرای کدها استفاده نمی کند قابلیت اجرا بر روی تعدا زیادی از OS ها را داراست که این یکمزیت برای برنامه نویس ها محسوب می شود

با سلام خدمت دوستان خوبم

من می خواهم برنامه نویسی سمت سرور و طراحی سایت را یاد بگیرم.به نظر شما کدام زبان برنامه نویسی سمت سرور بهتر است؟ php یا asp.net?

و یک سوال دیگه:

کسی می تواند بگوید که این سایت با php برنامه نویسی شده است یا با asp.net??

تشکر

http://www.*************

Share this post


Link to post
Share on other sites

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

همچنین با توجه به گسترش پذیری یک زبان، فاکتورهایی رو بیان خواهم کرد که باعث این موضوع خواهند شد و همچنین باید بگم که هر دوی این زبان های مورد بحث گسترش پذیری بالایی رو دارن.

اگر بخواهیم هزینه و پشتیبانی را در نظر بگیریم، به علت اینکه PHP یک پلتفرم متن باز است و بر روی سیستم های متن باز اجرا می شود، در این بخش می توان PHP را به علت ارائه ی راه حل های فراوان، انجمن های پشتیبانی بسیار زیاد، پشتیبانی باورنکردنی و… برنده دانست.

با در نظر داشتن زمان شروع پروژه تا وفتی که پروژه به اتمام خواهد رسید و برای ارائه آماده خواهد شد، می توان گفت که کدنویسی در زبان ASP.NET چیزی در حدود دو برابر انجام این کار با زبان PHP طول خواهد کشید، این موضوع با بررسی وب سایت هایی که کار طراحی می پذیرند و همچنین بررسی سامانه هایی مثل پونیشا و… کاملا مشهود است.

توضیحات بیشتر را در ادامه ی این مقاله مطالعه کنید:

1- گسترش پذیری و سادگی در تعمیر و نگهداری:

گسترش پذیری و سادگی در استفاده در واقع ارتباطی به این موضوع ندارد که شما PHP یا ASP.NET را انتخاب می کنید، این موضوع بستگی به چند عامل زیر دارد:

تجربه ی برنامه نویس

انجام بهترین تمرین های برنامه نویسی

-استفاده از یک فریم ورک مناسب برای کار

دنبال کردن تجربه ی دیگران و استاندارد های موجود

2- کارایی و سرعت:

بحث های بسیار زیادی سر این موضوع وجود دارد که اکثریت این بحث ها را می توان مغرضانه دانست و شاید نتوان در تغییر دیدگاه در مورد یک زبان روی آن ها حساب باز کرد و تاثیر گرفت.

ملاک ها و عوامل بسیار زیادی وارد بحث می شوند وقتی که موضوع سرعت و اندازه گیری آن در وب سایت ها پیش می آید. شاید نتوان سرعت بسیاری از وب سایت ها را امروزه وابسته به زبان برنامه نویسی آن دانست.

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

مقایسه PHP و ASP.NET

مقایسه PHP و ASP.NET

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

سناریوی شناخته شده 1:

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

تمامی پایگاه های داده اعم از MySQL (متعلق به Oracle) و PostgreSQL و SQLServer و همچنین خود Oracle همگی در حال رقابت شدید برای رسیدن به نهایت سرعت و کارایی هستند. ما تمامی امکانات، سرعت، قدرت و مزایای پایگاه های داده ها را بررسی کردیم و به جرئت می توانم بگویم که تمامی این پایگاه های داده پذیرای درخواست های بالا، سرعت مناسب و امکانات بسیار زیادی هستند.

MySQL توسط Google، FaceBook، Youtube، Yahoo و اخیرا توسط FIFA World Cup مورد استفاده قرار می گیرد که فیفا حجم بسیار عظیمی از طرفداران را در سراسر دنیا در اختیار داشته و بابت این موضوع سوالی در مورد گسترش پذیری این پایگاه داده باقی نمی ماند.

طبق بررسی های فراوان و تست های زیاد طبق انتظاری که می رفت سرعت ارتباط ها و گسترش پذیری ای که میان PHP و MySQL وجود دارد نسبت به این ارتباط بین ASP.NET و MSSQL برتر است که البته این برتری خیلی قابل توجه نیست.

سناریوی شناخته شده 2:

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

طبق بررسی های انجام شده و مقایسه های یافت شده، سیستم عامل لینوکس با فایل سیستم ext4 برتری قابل توجهی نسبت به سیستم عامل ویندوز با فایل سیستم NTFS دارد.

سناریوی شناخته شده 3:

در حالیکه بسیاری از سرور های لینوکس و یونیکس بدون نیاز به استفاده از رابط کاربری پیچیده و استفاده از منابع سخت افزاری سرعت مناسبی را به کاربر ارائه می دهند، سرور های ویندوز با مصرف بالای رم و پردازنده ی بی مورد و رابط کاربری سنگین از ضعف بالایی برخوردار هستند.

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

سناریوی کمتر شناخته شده4:

ASP.NET عمدتا توسط #C نوشته شده و همانطور که احتمالا می دانید این زبان از نظر سرعت قوی تر از PHP محسوب می شود، پس اگر یک زبان برنامه نویسی مجبور است میلیون ها حلقه را در مدت زمان خاصی اجرا کند، مشخصا در این بخش زبان #C برنده خواهد بود.

به هر حال این یک سناریوییست که کمتر اتفاق می افتد و اکثریت حلقه ها و بخش های زمان بر کدنویسی بسیار حجم کمی دارند و تکرار آن ها اهمیت چشم گیری ایجاد نمی کند.

3- هزینه:

PHP، MySQL server، PostgreSQL server و آپاچی و همچنین سیستم عامل لینوکس همگی رایگان بوده و آپدیت های آن ها نیز همگی رایگان می باشند. علاوه بر این، هیچگونه مبلغ اضافه ای بابت خرید امکانات اضافه، انجام بک آپ و… از شما دریافت نمی شود و نیازی به استفاده از چندین سرور برای متعادل سازی بار نیست.

همچنین ترکیبی از موارد نام برده شده یا LAMP، شهرت و محبوبیت بیشتری در میان سرویس های ارائه دهنده ی وب هاستینگ دارند که این موضوع باعث هزینه ی کمتر و پیشتیبانی قوی تر روی این سرور ها می شود.

ASP.NET و IIS در صورتی که شما سیستم عامل ویندوز را خریده باشید رایگان هستند. برای خرید Microsoft Windows Server، Microsoft SQL Server و ارتفاء های آن باید مبالغی را پرداخت نمایید. به عنوان مثال نسخه ی 2008 ویندوز سرور 64 بیتی هزینه ای برابر با 1029 دلار و Microsoft SQL Server 2008 برای کسب و کارهای کوچک هزینه ای برابر با 1038 دلار ناقابل را برای شما در پی خواهد داشت. درست است که خیلی ها راه های دور زدن این سیستم ها را بلد هستند و از نسخه های پولی آن استفاده نمی کنند (مخصوصا در ایران) اما این موضوع تاثیری در واقعیت موجود نخواهد داشت.

4- پشتیبانی و منابع:

به علت متن باز بودن LAMP تعداد بسیار زیادی توسعه دهنده ی تجاری و آزاد وجود دارند که ارتقاء ها و آپدیت های بسیاری را مرتبا ارائه می دهند. علاوه براین موضوع منابع و توسعه دهنده های بیشتری برای PHP و ترکیب LAMP وجود دارد.

ASP.NET بر تعداد خاصی از توسعه دهنده های شاغل در مایکروسافت تکیه دارد تا آپدیت ها و ارتقاء های مورد نیاز آن را تامین کنند که نتیجه ی آن تعداد کمتر آپدیت ها و پشتیبانی ضعیف تر برای حل مشکلات بوجود آمده در ASP.NET است.

یک کار بسیار ساده بررسی سوالات پرسیده شده در وب سایت معروف Stackoverflow است که در تصویر زیر مشخص است:

مقایسه PHP و ASP.NET

مقایسه PHP و ASP.NET در تعداد سوالات پرسیده شده

5- زمان تکمیل و بهره برداری:

مدت زمان بیشتری برای تکمیل کدهای پیچیده و توابع ASP.NET در مقایسه با PHP صرف خواهد شد تا کدهای نوشته شده به مرحله ی تکمیل و بهره برداری برسند، به این زمان باید زمان توسعه را نیز اضافه کرد.

علاوه بر این PHP سمت سرور تفسیر خواهد شد پس وقتی تغییری حاصل شود نیازی به مراحل اضافه تری برای دیدن تغییرات وجود ندارد، در سمت دیگر ASP.NET باید هر بار بعد از هر تغییری کامپایل شود.

6- ویرایشگر ها و ابزارها:

PHP و MySQL در ضمینه ی ادیتور یا ویرایشگر ها کاملا مستقل و آزاد هستند و توسعه دهنده های این پلتفرم با تعداد بسیار زیادی از ادیتور ها مواجهند.

اکثریت توسعه دهنده های ASP.NET بر استفاده از Visual Studio تکیه دارند که شاید مورد علاقه ی همگی آن ها واقع نشود، اما چاره چیست؟

جالب آن است که حتی با ادیتور هایی مثل Notepad نیز میتوان به توسعه ی PHP پرداخت.

نکته ی دیگر این است که در ترکیب با مواردی همچون JavaScript و Ajax و JQuery و… که متن باز هستند، PHP که خود نیز متن باز است توانایی بالاتری ارائه می دهد.

7- استقلال در بستر اجرا:

PHP یک زبان مستقل از بستر اجراییست بدین معنی که بر روی تمامی سیستم عامل ها اعم از لینوکس، ویندوز، مک و… به سادگی نصب و اجرا می شود که در نقطه ی مقابل ASP.NET طراحی شده تا فقط بر روی ویندوز اجرا و نصب شود.

8- وب سایت های مطرح و بستر ها:

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

وب سایت فعال از سیستم عامل سرور زبان برنامه نویسی

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

توجه: لطفا زبان سی را با سی شارپ اشتباه نگیرید، ASP.NET عمدتا از زبان های #C یا ویژوال بیسیک تشکیل شده نه از C.

9- شهرت:

طبق اعلام آمار رسمی Netcraft، تعداد 112,945,968 وب سایت بر روی آپاچی و تعداد 53,217,620 وب سایت بر روی سرور های ویندوز قرار گرفته اند که این عدد نشان دهنده ی برتری در تعداد و شهرت در وب سایت های مبتنی بر لینوکس و LAMP می باشد.

10- کاربرد و راحتی در استفاده:

همانطور که اطلاع دارید تعداد توزیع های بسیار زیادی برای لینوکس عرضه شده که نشان دهنده ی وجود یک سیستم عامل خاص بر مبنای ویندوز برای تمامی سلیقه ها و کاربرد هاست.

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

Share this post


Link to post
Share on other sites

با تشکر از اطلاعاتی که در مورد این 2 زبان برنامه نویسی قرار دادی

من هم به شخصه php رو برتر میدونم و آینده برتری نسبت به سایر زبان ها داره

به یاد استاد طالبی که میگفت کدای php رو تو یه تیکه کاغذ بنویس برات اجراش میکنه

Share this post


Link to post
Share on other sites

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری