PHP یا PYTHON - کدام یک پیروز میدان است؟

ترجمه و تالیف : سعید اکبری
تاریخ انتشار : 13 خرداد 98
خواندن در 2 دقیقه
دسته بندی ها : برنامه نویسی

با توجه به نیاز روزافزون تمامی اقشار جامعه برای داشتن وبسایتی مطابق با میلشان انکار واقعیتی که زبان های وب نویسی دیگر فقط برای مهندسین نرم افزار ساخته نشده غیرممکن است.حال با وجود این سیل عظیم زبان های ساخته شده برای ساخت وبسایت ها،سیستم های مدیریت محتوا و زبان های پویایی وب انتخاب اینکه کدام زبان برای کار مناسب است تبدیل به یکی از بزرگترین چالش های افراد نامتخصص شده.حال جدای زبان های برنامه نویسی و البته به طور صحیح تر اسکریپت نویسی وب که در قسمت هایی مثل طراحی و صورت ظاهری کاربرد دارند مانند HTML,CSS,JavaScript و ...که برای استفاده متدهای مشخصی دارند،زبان های پویا مثلPHP,ASP.Net و PYTHON که زبانی به نسبت جدید تر ولی با قدرت باورنکردنی است،هرکدام راه کارهای خود را در پیش میگیرند و انتخاب بین این موارد است که باعث سردرگمی افراد میشود.

حال در اینجا ما میخواهیم جدا از زبان ASP.Net زبان های قدرتمند PHP و PYTHON را با یکدیگر مقایسه کنیم و البته انتخاب را به عهده خود شما میگذاریم.

PHP یا PYTHON - کدام یک پیروز میدان است؟

ویژگی های مشترک 

در هر دو زبان PHP و پایتون :

هر دو زبان های تفسیر شونده،سطح بالا و با قابلیت تایپ پویا(Dynamic) هستند

هر رو متن باز(Open Source) هستند.به جز در بعضی از محصولات شرکت Zend که توصیه به انحصاری بودن دارند.

با حمایت جامعه توسعه دهنده بسیار بزرگی همراه هستند.

بسیار راحت برای یاد گیری اند(درمقایسه با C++ و جاوا یا پرل )

مانند زبان های سطح بالا گسترش یافته اند

قابل حمل اند و در بسیاری از پلتفرم ها بدون نیاز به کامپایل دوباره کار میکنند

هر دو آنها قابلیت متوقف کردن اشیا را برای حرکت دادن آنها در شبکه ، دیسک و غیره را دارند.بعد از این قابلیت نیز میتوانند بدون تغییر باقی بمانند

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

هر دو از ویژگی namespace پشتیبانی میکنند

هر دو از روش های زنجیره ای پشتیبانی میکنند

دارای چند IDE و debuggers های مختلف اند

تقریبا هر دوی آنها برای اولین یونیکس نیز موجوداند

هر دو ذخیره سازی به صورت Byte-Code پشتیبانی میکنند( در PHP از ورژن 5.5 به بعد)

دارای پایگاه استانداردی از API ها میباشند

از متد  GTK  و QT پشتیبانی میکنند

از  برنامه‌های کاربردی builtin lambdas و سایر ساختارهای برنامه نویسی پشتیبانی میکنند

میتوانند به صورتی برنامه نویسی اسکریپیتی و برنامه نویسی عمومی مورد استفاده قرار گیرند

PHP یا PYTHON - کدام یک پیروز میدان است؟

و اما نقاط قوتی که PHP دارد و پایتون ندارد!!

1.       عبارت های Switch و do ... While در پایتون وجود ندارد.

2.       افزایش و کاهش متغیر ها

3.       اصلاح گرهای private و protected و  public برای ویژگی ها و توابع

4.       نوع final و abstract

5.       Interface ها: که البته می توان گفت پایتون نیازی هم به آن ندارد چون ساختار های مشابه زیادی دارد و از ارث بری چندگانه پشتیبانی می کند.

6.       آرگومان ها پیش فرض در توابع

7.         درج کدها در میان کدهای HTML

 

ضعف هایی که PHP دارد و Python ندارد!!

1.       نحو برگرفته از زبان هایی همچون C با تعداد زیادی کروشه و پرانتز و...

2.       نام های گیج کننده ی توابع

3.       بعضی عیب ها در سیستم نوع داده ها

PHP یا PYTHON - کدام یک پیروز میدان است؟

آنچه Python دارد و PHP ندارد:

1. ایندنت گذاری و فواصل به جای پرانتز ها و کروشه های زیاد استفاده می شود: که البته باید این نکته را در نظر گرفت که همین موضوع است که ترکیبPHP و HTML را ممکن ساخته است.

2. قواعدی که باعث می شود غلط های لغوی کمتر شوند.

3. هسته ی کوچک و کم حجم

4. نحو ساده، واضع و مشخص

5. آرگومان های کلمه کلیدی ( پارامتر ها با نامشان ارسال می شوند و نه با توجه به موقعیتشان)

6. شی گرایی واقعی و بدون ایراد

7. ارث بری چندگانه

8. درون گرایی بی نظیر

9. همه چیز یک ارجاع محسوب می شود.

10. حساسیت به بزرگی و کوچکی حروف حتی در توابع

11. نحو ساده در تعریف آرایه ها

12. مدیریت استثناء ساخت یافته

13. بازنویسی عملگر ها

14. معماری چند نخی

15. ساختار with ... as

16. یک profiler عالی

17. نوع های داده ای سطح بالا به تعداد زیاد

در آخر نظر شما در مورد هر کدوم از این زبان چیه و بدونه تعصب نسبت به هر کدوم شما چه نتیجه گیری از این مقایسه  میکنید ؟ ما تنها این دو زبان رو با هم مقایسه کردیم و انتخاب یا نتیجه گیری با خود شماست .

منبع : wiki.python.org

گردآوری و تالیف سعید اکبری
آفلاین
user-avatar

آغاز کارم با لینوکس و یک خط فرمان سیاه و سفید بود.بعد از 2 سال به سمت برنامه نویسی تحت وب رفتم و زبان های HTML و CSS و کار با سیستم های مدیریت محتوا رو یاد گرفتم.با زبان PHP کار میکردم که با آشنا شدن به پایتون و فریم ورک جانگو دیگه به سمت پایتون مهاجرت کردم.علاقه اصلیم هنوز همون لینوکسه وصد البته امنیت سایبری.آرزوم هم سربلندی کشورم تو عرصه فناوری اطلاعاته

دیدگاه‌ها و پرسش‌ها

برای ارسال نظر لازم است ابتدا وارد سایت شوید
در حال دریافت نظرات از سرور، لطفا منتظر بمانید