تفاوت زبان برنامه نویسی php با ASP

۲۸شهریور ۱۳۹۵
۷۲

تفاوت زبان برنامه نویسی php با ASP

در این مقاله شما با تفاوت های دو زبان برنامه نویسی php و ASP.net را مشاهده خواهید کرد که تنها صرفا جهت بررسی قابلیت ها و امکانات این دو زبان می باشد .

زبان php چیست ؟ 

زبان پی اچ پی با هدف نوشتن اسکریپتهای وب نوشته شد. در واقع هدف فرار از پیچیدگیهای Perl و نوشتن CGI با زبانهایی مثل C و ارائه دستوراتی ساده برای طراحان صفحات وب بود. پی اچ پی اولیه زبانی با دستورات محدود و ساده بود که بیشتر برای کارهای ساده و برای طراحان وب سایتها و نه برنامه نویسان حرفه ای بود. این زبان کم کم پیشرفت کرد و بخصوص Open Source بودن آن باعث شد تسریع این حرکت شد. در مرحله اول تعداد دستورات و توابع این زبان گسترش پیدا کرد بطوریکه امروز نیز براحتی کارهای نسبتا پیچیده ای مثل کار با سوکتها یا تصاویر با توابع این زبان قابل اجرا است. همچنین از لحاظ معماری این زبان با پشتیبانی از شی گرایی پیشرفت مهم دیگری داشته است. پی اچ پی به طور کلی یکی از زبانهای معمول برای نوشتن اسکریپتهای اجرایی در محیط یونیکس ، لینوکس (هرچند که در ویندوز نیز به خوبی اجرا می شود) و کار با نرم افزار مدیریت بانک اطلاعات MySQL است.

زبان ASP.net چیست ؟ 

یکی از زبان های برنامه نویسی حرفه ای برای طراحی سایت ,ASP.NET است. ASP.NET نسل جدید ASP است. که با ASP کلاسیک سازگار نیست، اما ممکن است ASP.NET شامل ASP کلاسیک باشد. صفحات ASP.NET تالیف شده اند، که موجب سریع تر شدن آن از ASP کلاسیک شده است. ASP.NET دارای پشتیبانی بهتر زبان، یک مجموعه بزرگ از کنترل های کاربر، قطعات مبتنی بر XML، و تأیید یکپارچه هویت کاربر است.

صفحات ASP.NET دارای پسوند aspx. است، و به طور معمول در VB (ویژوال بیسیک) یا #C (سی شارپ) نوشته می شود. کنترل های کاربر در ASP.NET می توان به زبان های مختلف، از جمله ++ C و جاوا نوشته شود. هنگامی که یک مرورگر درخواست یک فایل ASP.NET را دارد، موتور ASP.NET فایل را می خواند، اسکریپت را در فایل اجرا و تالیف می کند، و نتیجه را به شکل زبان HTML ساده به مرورگر برمی گرداند.

سرعت زبان php بالاتر است یا ASP ؟

یکی از دلایلی که برنامه نویسان پی اچ پی برای دفاع از آن مطرح می کنند سرعت آن است و میگویند که سرعت php از asp.net بیشتر است، در حالیکه آزمایشات انجام شده نتیجه کاملا متفاوت را نشان می دهند. از نظر منطقی نیز چنین چیزی امکان ندارد به این دلیل که کدهای خروجی asp.net در سمت سرور تفسیر نمی شوند و به صورت dll هستند و web server در زمان اجرای کدها هیچگونه زمانی برای تفسیر آنها نمی گذارد و با سریعترین زمان ممکن اجرا می شوند. لذا چنین حرفی هیچ پایه و اساس علمی ندارد.
سرعت asp.net قابل مقایسه با سایر زبان ها و تکنولوژی ها نیست و به مقدار قابل توجهی مخصوصا در زمانی که مقدار داده ها افزایش می یابد و مقیاس سازمانی است سریع تر است.

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

ایمن بودن نرم افزارهای کدباز یکی از مباحثی است که برخی برنامه نویسان مطرح می کنند. به طور کلی هر سیستمی که افراد بیشتری بر روی آن کار کنند و استفاده کنندگان زیادی داشته باشد به مرور زمان تکمیل می شود. اما کدباز بودن نه تنها دلیل بر ایمن بودن نیست بلکه در بسیاری از موارد ممکن است باعث شود که سیستم فوق مورد حمله قرار گرفته و هک شود. به عنوان مثال پلتفرم جوملا که بر پایه پی اچ پی است یکی از ضعیف ترین پلتفرم ها از نظر امنیتی است و هر از چندگاهی شاهد هک شدن نسخه های مختلف آن در اینترنت هستیم.
برخی از مشکلات امنیتی که ممکن است به خاطر برنامه نویسی سایت پیش بیاید عبارتند از:
Remote code execution
SQL injection
Cross Site Scripting (XSS)
Session Hijacking
XSRF
هیچکدام از موارد بالا ارتباطی به زبان برنامه نویسی ندارد و برنامه نویس باید با موارد فوق آشنا باشد تا مشکل امنیتی برای آن بوجود نیاید. ضمن اینکه سیستم های بسیار زیادی در دنیا وجود دارند که با پلتفرم دات نت کار میکنند و اگر این پلتفرم مشکل داشت قطعا هیچ کدام از این شرکت ها به سمت آن نمی رفتند.

سایت های بزرگی مانند گوگل، فیسبوک و آمازون با php برنامه نویسی شده اند؟

پاسخ قطعا منفی است! سایت های فوق عمدتا از زبان های C++‎‎‎‎ پایتون و جاوا برای برنامه نویسی سمت سرور خود استفاده می کنند و به هیچ وجه از پلتفرم های اپن سورس مثل پی اچ پی در طراحی بخش های اصلی آنها استفاده نشده است. تنها گوگل برای برخی از سرویس های جانبی خود به طور محدود از زبان php استفاده می کند. تنها سایت پربازدید دنیا که از php استفاده می کرده است سایت یاهو است که آن هم در حال انتقال برنامه های خود به زبان جدید node.js است.

 

کدام زبان برنامه نویسی را می توان راحت یادگرفت ؟

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

بهترین زمان برای استفاده از PHP

اگر پروژه ای که میخواهید انجام دهید یک پروژه کوچک است و در مقیاس های بزرگ عملیاتی اجرائی نمیشود php میتواند گزینه خوبی باشد.

اگر اسکریپت های آماده و کدهای آماده برای پروژه فوق به زبان php وجود دارند، گزینه مناسبی است.

اگر سرور شما لینوکس است، از php استفاده کنید.

بهترین زمان استفاده از ASP.net

اگر پروژه شامل انواع نقش های سیستمی و سطوح دستری مختلف و یک پورتال است از دات نت استفاده کنید

اگر می خواهید از ساختارهای نوین برنامه نویسی مانند MVC استفاده کنید از دات نت استفاده کنید

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

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

 

تفاوت زبان برنامه نویسی php با ASP

اشتراک گذاری

رامین نوروزی

ارسال نظر

نشانی ایمیل شما منتشر نخواهد شد.
تمام حقوق برای آذرآنلاین محفوظ می باشد.
enamad