HOW 2 LEARN ASP.NET
نویسنده : delshad
تاریخ  : ۱۳۸۸/۵/۲۵
امتیاز :
بازدید : 3935
موضوع : مقایسه PHP و Asp.NET
توضیحات : خیلی از کسانی که به این بحث علاقه دارند واقعا می خواهند بدانند که آیا Asp.NET بهتر است یا Php ؟ کدام سریعتر است ، یادگیری کدام آسان تر و کدام یک پرکاربر تر است ، چرا خیلی از سایت های معروف مانند Yahoo و Facebook و ... از Php استفاده می کنند و سوالات متعدد دیگری که در ذهن خیلی از ما نقش بسته ، امیدوارم این مقاله بتواند به انتخاب درست شما کمک کند .
     

مقایسه PHP و Asp.NET

قبل از هر چیز باید بگم بنده قبل از اینکه به سراغ  Asp.NET بروم Php کار می کردم و خیلی تصادفی با Asp.NET آشنا شدم و وارد دنیای دات نت شدم و قصد دارم در این مقاله مقایسه ای منطقی بین Asp.NET و Php انجام دهم .

می دانم خیلی از کسانی که به این بحث علاقه دارند واقعا می خواهند بدانند که آیا Asp.NET بهتر است یا Php  ؟ کدام سریعتر است ، یادگیری کدام آسان تر و کدام یک پرکاربر تر است ، چرا خیلی از سایت های معروف مانند Yahoo و Facebook و ... از Php استفاده می کنند و سوالات متعدد دیگری  که در ذهن خیلی از ما نقش بسته ، امیدوارم این مقاله بتواند به انتخاب درست شما کمک کند .

  •  پشتیبانی از زبان های مختلف :

همانطور که می دانید Asp.NET را  با زبان ها VB.NET ،  C Sharp , Delphi , J Sharp و چند زبان دیگر  .... میتوان توسعه داد در حالی که Php را فقط با زبان Php می توان نوشت . نکته جالب تر تلفیق زبان هاست ! شما در Asp.NET قادر خواهید بود از چند زبان برای تولید وب سایت یا نرم افزار خود استفاده نمایید .

  • شی گرایی :

Php از بدو تولد به صورت یک زبان اسکریپتی ارائه شد در حالی که Asp.NET با مفهوم شی گرایی (کلاس ، خاصیت ، رویداد و ...) پا به عرصه گذاشت . کار با Asp.NET بسیار شبیه کد نویسی برای یک نرم افزار تحت ویندوز است و تمام امکانات مورد نیاز برای یک برنامه نویسی شی گرا را فراهم نموده است .

  • امنیت در وب :

امنیت در وب یکی از دقدقه های مهم توسعه گران و وب مسترها است ، خوشبختانه DotNET تدابیر امنیتی بسیار جالبی برای جلوگیری از نفوذ هکر ها به کار برده است ، این امر یکی از مهمترین عوامل برتری Asp.NET بر Php است .

اگر شما یک سایت تولید شده توسط یک برنامه نویس مبتدی Asp.NET را با یک برنامه نویس مبتدی Php مقایسه کنید کامل متوجه خواهید شد که دات نت چگونه به صورت پیشفرض از هک شدن وب سایت شما جلوگیری می کند .

 

  • محیط توسعه نرم افزار :

همانطور که میدانید شرکت مایکروسافت چند نرم افزار قدرتمند برای توسعه Asp.NET فراهم نموده است : Visual Studio.NET ، Visual Web Developer , WebMatrix این نرم افزار های قدرتمند شما را از هر نرم افزار دیگیری بی نیاز می کند ، تمامی امکانات مورد نیاز برای طراحی و تولید یک وب سایت حرفه ای در این نرم افزار ها گنجانده شده ، در صورتی که Php هیچ نرم افزار اختصاصی نداشته و برخی نرم افزار ها این زبان را در کنار زبان های دیگر ارائه نموده اند مانند : NetBeans , Adobe Dreamweaver , Zend, ....

  • سرعت در توسعه و پیاده سازی :

ASP.NET با ارائه کنترل های قدرتمند وب و ارائه راهکارهای بسیار بهینه جهت ارتباط با بانک ها اطلاعاتی تحولی عظیم در توسعه نرم افزار های وب به وجود آورد ، کنترل های Asp.NET باعث افزایش سرعت توسعه وب تا ده ها برابر شده است ، به عنوان مثال برای نمایش 5000 هزار رکورد اطلاعات داشنجویان در Asp.NET کافیست یک کنترل Grdiview به صفحه اضافه کنید ، با چند کلیک آن را به بانک اطلاعاتی مورد نظرتان (Ms-SQL Server, Ms-Access , MySQL , Oracle ,....) متصل نمایید با یک کلیک آن را صفحه بندی نمایید ، در صورتی که برای نمایش این رکورد ها در Php نیاز به کد نویسی فراوانی دارید ، البته نا گفته نماند در Php هم راهکار های ساده تری جهت نمایش اطلاعات وجود دارد ولی هیچ یک به قدرت و سادگی کنترل های دات نت نیست بلکه به صورت اسکریپتی به صفحه اضافه می شوند .

  • سرعت بارگزاری صفحات :

این سخن را به کرار شنیده ام که Php از Asp.NET سریعتر است ، ولی آیا تا چه حد این حرف صحت دارد ؟

  1. Asp.NET یک زبان کامپایل شده است در صورت که Php یک زبان مفسری است ، تمامی کد های Asp.NET پس از توسعه کامپایل شده و به Dll تبدیل می شوند ولی Php به صورت کد بارگزاری شده و در هنگام اجرا تفسیر می شود .
  2. همانطور که میدانید Asp.NET دارای کنترل های زیادی است و به علت سادگی استفاده بسیار پر کاربر هستند ، این کنترل ها در هنگام Generate شدن باید به کنترل های Html تبدیل شوند در صورتی که Php به این صورت نیست و از کنترل های Html استفاده می کند . این موضوع در عمل تاثیری در سرعت لود صفحه ندارد چرا که عمل Generate شدن در سرور انجام می شود و در صورت وجود سخت افزار مناسب در سرور این کار در کسری از ثانیه انجام می شود ، همچنین کاربران Asp.NET می توانند از کنترل ها Html استفاده کنند و محدودیت از این لحاظ نیز برای آنها وجود ندارد .
  3. وجود ViewState در Asp.NET که باعث حفظ اطلاعات کنترل ها پس از PostBack می شود یکی از دلایل عمده افت سرعت در Asp.NET می باشد ، اما خوشبختانه Asp.NET این امکان را به کاربر می دهد که در صورت عدم نیاز به ViewState آن را غیر فعال نماید ولی برخی از توسعه گران به دلیل عدم اطلاع از این موضوع با مشکل کاهش سرعت مواجه می شوند .
  4. عمل فشرده سازی صفحات در Php وجود داشته و اکثر توسعه گران Php با یک خط کد نویسی این امکان را به پروژه های خود اضافه می کنند ، عمل فشرده سازی تا 10 ها برابر حجم خروجی صفحه را کاهش داده و باعث افزایش سرعت لود آن می شود ، خوشبختانه عمل فشرده سازی در Asp.NET نیز وجود دارد ولی خیلی از توسعه دهندگان Asp.NET از آن بی اطلاع هستند

نکته مهم این است استفاده ناشیانه از این تکنولوژی نه تنها باعث کاهش سرعت بارگزاری صفحات شده بلکه دیدگاه شما را نسبت به آن خدشه دار می کند .

 

  • سورس باز :

 

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

دلیل اصلی استفاده شرکت ها بزرگ مانند Yahoo , Facebook , ... از زبان Php سورس باز بودن آن است .

سورس باز نبودن Asp.NET یکی از نقاط ضعف آن محسوب می شود .

  • هزینه های جانبی :

هاست یا سرور : هزینه سرور های لینوکس به دلیل رایگان بودن آن نسبت به هزینه سرور های ویندوز کمتر است (البته نه در کشور ما)

دیتابیس : بانک اطلاعاتی My SQL که معمول ترین بانک اطلاعاتی php است رایگان است ، بانک های اطلاعاتی Ms Access و MS SQl Server Express نیز به صورت رایگان ارائه شده است .

در کل هزینه راه اندازی یک وب سایت Php کمتر از یک وب سایت Asp.NET به نظر می رسد ، البته گر چه این هزینه بسیار ناچیز است ولی برای برخی این یک مزیت Php محسوب می شود

  • سیستم عامل :

همانطور که میدانید Php هم بر روی ویندوز و هم بر روی لینوکس نصب می شود ، و این یکی دیگر از مزیت های Php می باشد

البته اخیرا سرو کله Asp.NET در لینوکس پیدا شده ، پروژه ای به نام Mono  تکنولوژی Asp.NET را به لینوکس هدیه کرده ! همچنین یک IDE رایگان به نام Mono Develop هم ارائه شده که به راحتی شما را قادر می سازد طراحی و توسعه سایت های Asp.NET خود را در محیط Linux انجام دهید ، بنده شخصا این کار را در لینوکس Ubuntu انجام دادم و به خوبی جواب گرفتم .

  • سهولت یادگیری :

از نظر بنده یادگیری Asp.NET از هر زبان دیگری ساده تر است ، با وجود زبانی به نام Visual Basic.NET کد نویسی بسیار ساده شده است

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

به گفته برخی برای یادگیری Asp.NET نیاز به دانستن شی گرایی است ولی از نظر بنده برای شروع کار با Asp.NET هیچ نیازی به پیش زمینه قبلی از شی گرایی و مفاهیم پیچیده ندارد .

همچنین حضور سایت هایی مانند www.Asp.NET و ارائه فیلم های آموزشی از مبتدی تا پیشرفته به صورت رایگان تحولی عظیم در امر یادگیری Asp.NET به وجود آورده اند .

 

  •  کاربرد و بازار کار :

اگر یک نگاه گذرا به صفحات آگهی روزنامه ها در بخش استخدام برنامه نویس بیاندازید متوجه خواهید شد که "استخدام برنامه نویس Asp.NET" سهم عظیمی از این آگهی ها را در بر گرفته است که خود نشان دهنده کاربرد فراوان این تکنولوژی در شرکت های ایرانی است .

حتی اگر شما قصد ادامه تحصیل یا کار در کشور های خارجی را داشته باشید با کمی جستجو متوجه خواهید شد که برای Asp.NET و Php موقعیت های شغلی مناسبی در سراسر دنیا وجود دارد .

همچنین شرکت مایکروسافت با برگزاری امتحانات متعدد و ارائه مدارک معتبر مانند MCSD و MCTS شما را برای ادامه تحصیل و یافتن شغل مناسب در کشورهای خارجی یاری خواهد داد.

 

  •  پیشرفت و توسعه نرم افزار و به روز شدن :

از زمان ظهور Asp.NET در سال 2002-2003 تکنولوژی Asp.NET پیشرفت چشم گیری کرده است ، بهینه سازی IDE و هسته DotNetFrameWork و همچنین افزودن امکانات مختلف جهت تسریع در امر توسعه تکنولوژی Asp.NET را دگرگون ساخته است ، همچنین هماهنگی روز افزودن Asp.NET و SQL Server باعث افزایش چشمگیری درخواست های مختلف از این بانک اطلاعاتی و همچنین سهولت برنامه نویسی شده است .

اضافه شدن Ajax در Asp.NET همگام با سایر زبان های سمت سرور مانند Php نشان از به روز بودن این تکنولوژی دارد .

شایان ذکر است شرکت مایکروسافت در سال های اخیر اقدامات بی سابقه ای در جهت پیشرفت تکنولوژی Asp.NET انجام داده است که میتوان از  LINQ ، MVC , SilverLight , Wcp , Wpf و... نام برد که هر یک دنیای جدیدی از تکنولوژی را به بازار عرضه کرده اند .

این پیشرفت سریع و رو به رشد یکی از نقاط قوت Asp.NET به شمار رفته و گویای این است که این تکنولوژی در آینده جایگاه مهمی در دنیای IT خواهد داشت .

 

امیدوارم این مقاله شما را در جهت انتخاب درست راهنمایی کند

 


 

 

 
امتیاز بدهید :

نویسنده : محمد m.r_hamidifar@yahoo.com ۱۳۸۹ چهاردهم شهريور
سلام در جواب دوستی که گفتن با drag and drop نمیشه برنامه نویس شد. باید عرض کنم جمله ایشون مثل این میمونه که بگی با ماشین حساب نمیشه حسابدار شد حتما باید با چرتکه محاسبه کرد.دوست عزیز آینده برنامه نویسی در دستان مایکروسافت است ممنون
نویسنده : masoud ilderemi mailderemi@gmail.com ۱۳۸۹ بيست و سوم خرداد
جوک جالبی بود مرسی
نویسنده : reza sfd@sdf.cc ۱۳۸۹ نهم خرداد
jamesh kon
نویسنده : محمد test@email.com ۱۳۸۹ هفتم خرداد
لطفا تا وقتی که با php 5 به بالاتر آشنایی ندارید , اظهار لطف نفرمایید ! با درگ و دراپ کردن که نمیشه برنامه نویس شد ! و من الله توفیق
نویسنده : امید kaveh.omid@gmail.com ۱۳۸۹ پنجم خرداد
سلام دوست عزیز شما میتونید جوابتون رو توی این ادرس دریافت کنید: http://forum.majidonline.com/showthread.php?t=145310 با تشکر
نویسنده : سجاد آقایی aghaee.sajjad@gmail.com ۱۳۸۹ نهم فروردين
asp.net تنها مزیتی که دارد این است که یادگیری و کار با آن آسان است... و اینکه چون در دانشگاهها تدریس می شود برای همین مورد حمایت یکسری افراد قرار می گیرد؟ آیا این مسائل نشانگر قدرت این زبان است؟ محبوبیت زبان php به دنیا ثابت شده است... به نظر شما در حال حاظر چند درصد از سایت های دنیا با این زبان هستند؟ ؟؟؟؟؟؟؟ و این نشانگر چیست؟ منتظر قدرت خاق العاده php و گسترش آن باشیددددد موفق باشید
نویسنده : فقط asp.net roolylove@gmail.com ۱۳۸۸ هفدهم بهمن
اقا دمت گرم واقعا گل گفتی همه چیو درست گفتی منم داشتم اشتباه میرفتم راه رو با پی اچ پی که یه هو با سلطان ای اس پی دات نت اشنا شدم واقعا سلطان زبانهای برنامه نویسی تحت وبه فقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netرفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.netفقط asp.net
نویسنده : masomeh 68 masom.azizi@yahoo.com ۱۳۸۸ اول آذر
به نام خدا یه مقاله زبان اصلی واسه زبان تخصصصی کامپیوتر می خواستم 2009 هم باشه
نویسنده : AMIR bakhtiari.amir@gmail.com ۱۳۸۸ ششم آبان
سلام اول از همه بگم من هر دو تاشو با هم کار می کنم ودفاع بی جا نمی کنم دلایل برتری php 1.اولا پروژه mono برای مایکروسافت نیست که حمایت همه جانبه داشته باشه پس مطمئنا از نظر امنیت قابل قیاس با php که ذاتا open source هست نیست. واضح تر بگم یکبار کد php ro در win تست کردم 12 ثانیه طول کشید و در ubuntu فقط 2 ثانیه . 2.مایکروسافت بسک شرکت امریکایی هست و هیچ اعتباری نیست پروژه های بزرگ رو با net. انجام داد ولی در صورت بروز مشکل mysql,php,apache و خوده linux(ubuntu-redhat Centos) opensource بوده و تحت شرایطی میشه server مورد نظر رو در همین ایران هم راه انداخت. 3.اگر بخوای یک کار قابل قبول انجام بدی همه چیز واسه php هست و هزینه هم نداره اما component های net. رایگان نیست و هزینه سنگینی رو شاید مجبور بشی متقبل بشی. 4.برای php همونطور که دوستمون گفته برنامه zend studio هست که هم debug سری داره و خصوصیات visual studio رو داره برای دیتا بیس هم جز اینکه phpmyadmin به صورت local بر روی سیستم قرار میگیره و همه کار sqlserver رو انجام میده برنامه های زیاده دیگه ی هم هستن که می تونی به صورت شماتک باهاشون کار بکنی و فقط نخوای code بنویسی مثله dbforge query builder در ضمن اینم بگم که فکر framework و و net. کاملا برای زبان java هست و اولین بار JAVA این قضیه رو راه انداخته. حالا هرکی میتونه این موارد رو رد کنه بگه می شنوم.
نویسنده : mehrdad mehrdad6862@yahoo.com ۱۳۸۸ بيست و نهم مهر
ba salam va khaste nabashid be nazare man onaie ke daran php kar mikonan vaghte khodeshuna talaf mikonan source baz budene php sud avar nist
نویسنده : vahid sv@gmail.com ۱۳۸۸ بيست و هفتم مهر
سلام لطفا هنگام مقايسه متعصب نباشيد و حقايق را بازگو نمائيد(ضعفهاي ASP , قوت PHP)
نویسنده : saeed saeedsysdev@yahoo.com ۱۳۸۸ بيست و هفتم شهريور
دنیای Open Source تو مشت PHP هست و هیچ زبان دیگه ای به گردشم نمیرسه
نویسنده : Ozhan Ostovar ostovarit@yahoo.com ۱۳۸۸ بيست و پنجم شهريور
با سلام و خسته نباشید مقاله شماراهنمای خوبی برای من بود ممنون. درباره mono مطلبی دارید؟
نویسنده : زهرا aryangirl_1986@yahoo.com ۱۳۸۸ هشتم شهريور
خیلی مفید بود مثل همیشه.ممنون
نویسنده : دوست tst@yahoo.com ۱۳۸۸ بيست و هفتم مرداد
دات نت فريم ورك و مشتقات آن هم سورس باز شده‌اند http://weblogs.asp.net/scottgu/archive/2007/10/03/releasing-the-source-code-for-the-net-framework-libraries.aspx مقايسه علمي سرعت اين دو http://naspinski.net/post/AspNet-vs-php--speed-comparison.aspx
نویسنده : درسته ogoogloo@gmail.com ۱۳۸۸ بيست و هفتم مرداد
شاید بعضی از حرفاتون درست باشه اما zend نرم افزاره اختصاصیه php هست ضمنان نرم افزارهایه زیادی همچون PHP designer ,Rapid Php,PHPed نرم افزارهای اختصاصیه php هستند اتفاقاً از تمام زبان ها می اولن در این زبان بکار برد پر کاربردترینش هم جاوا هست بهتره اطلاعات درست رو پیدا کنی تا اطلاعاته نادرست به کسی داده نشه البته من خودم دارم asp.net رو هم برای تکمیله کارم یاد می گیرم البته php کارایی های بسیار زیادی داره که گفتنش زمان بره از جمله cms ها که بهترین زبان برای ساخت آنها php است من خودم asp رو قبول دارم ولی چون انحصاریه php رو بیشتر ترجیح می دهم با این حال asp زبانه خوبیه ضمنا این سایت تو نوشتن کامنت کمی مشکل داره انتقال مکان نما بین خطوط سخت و آزار دهنده امیدوارم این ضعف asp نباشه چون دوست ندارم وقتم برای یاد گرفتنش تلف بشه
نویسنده : hashem blue20@yahoo.com ۱۳۸۸ بيست و ششم مرداد
سلام این مطالب بسیار مفید و جالب بودند متشکرم .

 
نظر بدهید :
لطفا سوالات فنی خود را در تالار گفتگو www.forum.how2learnasp.net مطرح نمایید
نام :  
ایمیل :    
نظرات :
 
Xml rss feed

 

Valid CSS! Atom rss feed
Ali Delshad Official Site