021-71053903 [email protected] پشتیبانی از شنبه تا چهارشنبه ساعت 9 الی 16

آیا پایتون یک زبان اسکریپتی است؟

پایتون یک زبان برنامه نویسی همه منظوره است که در اغلب اوقات در کار های اسکریپتی به کار می رود.

جمله بالا مغز اصلی این متنی است که قرار است در ادامه بخوانید اما کمی بیایم این مفاهیمی که به نظر نا آشنا می آید را با هم بررسی کنیم.

اساسا تمامی زبان های اسکریپتی , زبان برنامه نویسی هستند اما از جهاتی با هم متفاوت هستند یکی از اصلی ترین تفاوت ها نحوه اجرا شدن کد های نوشته شده به زبان های اسکریپتی است این کد ها نیاز ندارند که ابتدا کامپایل شوند و بعد از کامپایل شدن بیایند و اجرا شوند مثل همان چیزی که میتوانیم در زبان برنامه نویسی C ببینیم.

اما بحث ما روی پایتون است , کد های نوشته شده به این زبان دیگر ابتدا نیازی ندارد که کامپایل شود به جای آن در آن واحد اجرا می شود که این نحوه اجرا شدن در کد های پایتون را به شکل مفسر اجرا می شوند ( interpreter ) که این نحوه اجرا شدن مزیت ها و معایب خود را دارد و بسته به این که چه کاربردی داشته باشیم از آن استفاده می کنیم.

در شکل زیر بهتر میتوانیم تفاوت interpreter و compile را متوجه بشویم.

تفاوت ترجمه و تفسیر

اما حالا چه شد, پایتون کدام یک از این دو مورد گفته شده است؟ زبان اسکریپتی یا برنامه نویسی؟

این پاسخ شاید باز هم ما را کمی سر در گم کند اما خیلی ساده می شود گفت پایتون مخلوطی از   شی گرایی (OOP) , فانکشنال و رویه ای (procedural) است با جهت گیری کلی به سمت نقش و رول های اسکریپتی است.یک پاسخ عمومی به این سوال کلی این است که پایتون یک زبان شی گرای اسکریپتی است !!

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

ممکن است پاسخ های خیلی ساده ای برای این پرسش مطرح شوند

یکی از موارد که خیلی مرسوم است این است که برخی افراد واژه script را به جای program برای توضیح دادن یک کد پایتون استفاده می کنند و اغلب این دو واژه به جای هم استفاده می شود

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

learning python

اما این واژه اسکریپت که مثل یک چسب به پایتون چسبیده است و وقتی کنار یکدیگر می آید ممکن است ذهنیت های متفاوتی هم ایجاد کند که بد نیست برخی از این موارد را با هم بررسی کنیم

shell tools : ممکن در برخی این ذهنیت ایجاد شود که پایتون ابزاری است برای نوشتن کد هایی برای اسکریپت های سیستم عامل است , خیلی از برنامه ها اغلب با استفاده از command line راه اندازی می شوند و task هایی همچون پردازش فایل های متنی و راه اندازی برنامه های دیگر را انجام می دهد.

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

language : یکی از کاربرد های اسکریپت ها این است که برای کنترل و ارتباط بین بخش های مختلف یک اپلیکیشن به کار می روند و معمولا پایتون در اپلیکیشن های بسیار بزرگ همچین کاربردی مهمی را دارد, مثلا  برای تست نرم افزار ها که یک اصل بسیار مهم و حیاتی برای بقای نرم افزار است این تست ها معمولا به صورت جداگانه از خود سیستم اصلی نوشته می شود یک مورد از این ها تست ها که بسیار مرسوم است test hardware device می باشد.

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

اما خب سر آخر حالا پایتون یک زبان اسکریپتی شد یا نه؟

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

واژه scripting احتمالا بهترین واژه برای تعریف سرعت و انعطاف توسعه پذیری در پایتون است بر خلاف آنچه در دامنه های مشابه می بینیم.

نویسنده : محمد سقلی

مقالات مرتبط:

Python

Python.org

محمدرضا حسنی

224 مطلب منتشر شده

دانش آموخته رشته فناوری اطلاعات / موسس پایتونی ها

درباره این مطلب نظر دهید !

محصولات فروش پایتونی ها

%60
تخفیف

آموزش فیگما (Figma)

30,000 تومان
3
%69
تخفیف

آموزش برنامه نویسی پایتون

35,000 تومان
2