طبق نظرسنجی Stack Overflow در سال ۲۰۲۱، پایتون (Python) سومین تکنولوژی محبوب دنیا پس از JavaScript و HTML/CSS محسوب میشود. اما شاید کنجکاو باشید که بدانید پایتون چیست.
Python یکی از برترین زبانهای برنامهنویسی در دنیای امروز و یک زبان برنامهنویسی همهمنظوره، مفسری، شیءگرا و سطح بالا است که از معناشناسی پویا بهره میبرد. اما این اصطلاحات چه معنایی دارند؟
همهمنظوره (General-purpose)
استفاده از پایتون به یک صنعت یا زمینهی خاص محدود نمیشود. پایتون دامنهی گستردهای از وظایف را پوشش میدهد و از آن در زمینههای بیشماری استفاده میشود؛ از جمله:
- توسعهی وب
- تحلیل داده
- یادگیری ماشین
- دواپس و مدیریت سیستم
- تست اتوماتیک
- نمونهسازی نرمافزارها
- و…
یکی از ویژگیهای منحصر به فرد زبان برنامهنویسی پایتون، این است که این زبان از زبانهای تکمنظورهای مانند HTML و CSS که برای طراحی وب استفاده میشوند، و یا SQL که برای دسترسی به دادهها در سیستمهای مدیریت پایگاه داده رابطهای (Relational Database Management Systems) به کار میروند، متمایز میشود. با استفاده از پایتون، میتوان به راحتی با این زبانها و رابطه با پایگاه دادهها کار کرد و به سادگی با آنها تعامل داشت.
مفسری (Interpreted)
در پایتون، کد منبع به یک فرمت میانی به نام bytecode کامپایل میشود. این کدهای سطح پایین و فشرده، بر روی ماشین مجازی پایتون (Python Virtual Machine) اجرا میشوند. PVM نرمافزاری است که کار سختافزار واقعی را شبیهسازی و نقش یک مفسر را بازی میکند و در حین اجرای برنامه، دستورالعملهای نوشتهشده به bytecode را به زبان ماشین ترجمه میکند.
کامپایل در پایتون، شبیه چیزی که در زبانهایی مانند ++C یا Swift اتفاق میافتد نیست. در این زبانها قبل از اجرای کد، کد منبع بهصورت یکجا به زبان ماشین ترجمه میشود و خبری از یک مرحلهی میانی نیست.
شیءگرایی (Object-Oriented)
پایتون نیز مانند ++Java ،Ruby ،C و بسیاری از زبانهای محبوب دیگر از برنامهنویسی شیءگرا پشتیبانی میکند. در برنامهنویسی شیءگرا، برنامهنویس با موجودیتهایی به نام شیء سروکار دارد. یک شیء میتواند نمایندهی یک موجودیت واقعی یا انتزاعی باشد که دارای ویژگیها (state) و رفتاری (method) منحصربهفرد است.
اگرچه از پایتون بهعنوان یک زبان کاملاً شیءگرا یاد میشود، با این وجود میتواند امکان برنامهنویسی تابعی (Functional) را نیز در اختیار شما قرار دهد.
در حین نوشتن برنامههای بزرگ با استفاده از پایتون، ما میتوانیم بین شیوههای برنامهنویسی شیءگرا و تابعی جابهجا که بسته به هدفی که دنبال میکنیم، با یکدیگر تعامل دارند، جابهجا شویم. با توجه به ویژگیهای پایتون، این زبان دارای انعطافپذیری بالایی است که به توسعهدهندگان این امکان را میدهد که شیوههای مختلف برنامهنویسی را با هم ترکیب کرده و برای هر پروژه خاص، بهترین راهکار را پیشنهاد دهند.
سطح بالا (High-Level)
پایتون به دسته زبانهای برنامهنویسی سطح بالا تعلق دارد؛ به این معنا که این زبان به زبانهای طبیعی بسیار شبیه است و وابستگی به پردازندهی کامپیوتر در آن مشاهده نمیشود. در مقابل، یک زبان سطح پایین شباهت کمی به زبان انسان داشته یا اصلاً هیچ شباهتی به آنها ندارد و بسیار نزدیک به سختافزار است. زبان سطح پایین، اغلب برای یک CPU خاص بهینه شده است.
معناشناسی پویا (Dynamic Semantics)
پایتون از Dynamic Typing استفاده میکند؛ به این معنا که نیازی نیست که توسعهدهنده هنگام تعریف یک متغیر، نوع داده را مشخص کند.پایتون در زمان اجرا، نوع داده را بهصورت خودکار بر اساس مقداری که به متغیر اختصاص میدهیم ، تشخیص میدهد و نوع متغیر میتواند بارها تغییر کند. انجام این کار در زبانهایی که Static Type هستند، غیرممکن است.
ارسال دیدگاه