در این سری از مقالات به تفاوت های میان زبان های اسکریپتی می پردازیم. که این مقاله شروعی بر تفاوت های دو زبان کاربردی PHP و ASP می باشد.
در مقالات پیشین به تفاوت های دو نوع زبان مفسر و کامپایلر پرداختیم. برای بررسی این موضوع، لازم است در ابتدا بدانیم که ASP یک زبان Compiler می باشد اما PHP یک زبان Interpreter است.
این به این معناست که همانطور که توضیح داده شد. زبان کامپایلر یا ASP یک مرحله کامپایل می شود و در یک فایل قرار می گیرد و از آن طریق در موارد بعدی فقط اجرا می گردد و زبان PHP در هر مرحله اجرا به صورت خط به خط تفسیر و سپس اجرا خواهد شد. به این صورت که اگر اطلاعات سرور و یا هاست یک کاربر هک شود و یا فردی به آن اطلاعات دسترسی پیدا کند. فایل های ASP به صورت کد وجود ندارند و تنها به صورت فایل های اجرایی موجود بوده و قابل خواندن نیستند، اما فایل اجرایی PHP همان کد اصلی می باشد که تفسیر و اجرا می گردد، که این مورد باعث می شود تا نفوذگر به کد های PHP نیز دسترسی داشته باشد. البته این نکته قابل ذکر است که در حال حاضر توسعه دهندگان PHP امکاناتی را به وجود آورده اند که بتوان با استفاده از تکنولوژی رمزنگاری Zend فایل های PHP را اینکریپت کرد تا از خوانده شدن آن ها جلوگیری شود. البته با این حال هنوز تفاوت هایی که در زمینه ی تفاوت های زبان های Compiler و Interpreter وجود دارد در مورد تفاوت های ASP و PHP نیز صدق می کند که از جمله آن تفاوت سرعت اجرای بهتر نرم افزار های تحت ASP به دلیل کامپایل شدن قبل اجرا و همچنین رفع آسان تر مشکلات در PHP به دلیل خط به خط اجرا شدن می باشد.
دیگر تفاوت مهم این دو زبان در Source آنها می باشد. زبان PHP در واقع Open Source و رایگان بوده و زبان ASP همانطور که می دانید Close Source می باشد. این امر بسیار مهم باعث چند نکته می شود. در ابتدای امر در زمان معرفی PHP این زبان بسیار مناسب مبتدی ها بود زیرا کد های آسانی برای برنامه نویسی تحت وب داشت اما از طرف حرفه ای ها استقبال نمی شد زیرا امکانات آن کم بود و همینطور کتابخانه های زیاد و مفیدی را در اختیار نداشت. اما زبان ASP به علت اینکه برای شرکت مایکروسافت بود، از ابتدا به این نوع مسائل فکر شده بود و تقریبا کامل ایجاد شده بود. اما این نکته مشخص است که وقتی یک سیستم Close Source می باشد یعنی امنیت و کارایی و توسعه آن تنها از سمت شرکت صاحب امتیاز تضمین و اجرا می گردد. اما در سیستم های Open Source تمامی افرادی که سر رشته ای در امر توسعه داشته باشند یا همان Developer ها، می توانند تا در توسعه ی کاربری و امنیتی این سیستم سهمی داشته باشند. در نتیجه شاهد این موضوع هستیم که امروزه زبان PHP دارای کتابخانه ها و امکانات جامع و کاملی بوده که با سرعت بسیار زیادی توسط توسعه دهندگان مجهز شده است و قطعا توسعه دهندگان بیشتر مساوی با توسعه ی سریعتر می باشد، اما همواره ریسک ماژول ها و کد های غیر صحیح و یا مخرب نیز وجود دارد اما Close Source بودن ASP این اطمینان را ایجاد می کند که سیستم مورد استفاده توسط یک شرکت معتبر ایجاد شده است.
با دانشنامه Server.ir همراه باشید تا بیشتر به تفاوت های دو زبان PHP و ASP و دیگر زبان ها بپردازیم.