نکتهای که باید به آن دقت کنید این است که یادگیری یک زبان برنامهنویسی دیگر یک انتخاب نیست، بلکه یک ضرورت است. درست مثل زبان انگلیسی که یادگیری آن قفل دربهای زیادی را باز میکند، یادگیری یک زبان برنامهنویسی نیز چنین قاعدهای را دارد.
اگر زبان انگلیسی به عنوان یک زیان بینالمللی به رسمیت شناخته میشود، واقعیت این است که یادگیری پایتون در دنیای فناوری نیز یک چنین قاعدهای دارد. به بیان دقیقتر، اگر وقت کافی صرف یادگیری پایتون کنید، قادر به انجام کارهای مختلفی هستید که درآمدزایی خوبی برایتان به همراه خواهد داشت.
پیشنهاد مقاله: ۱۰ کاربرد جالب پایتون در دنیای واقعی آشنا شوید
پایتون یک زبان برنامهنویسی سطح بالا است که توسط خیدو فان روسوم (Guido Van Rossum) در سال 1989 میلادی و هنگامی که در موسسه تحقیقات ملی هلند کار میکرد، ابداع شد. تقریبا دو سال طول کشید تا پایتون به شکل فراگیر مورد توجه توسعهدهندگان قرار گیرد.
پایتون یکی از محبوبترین زبانهای برنامهنویسی حال حاضر است که گلچینی از بهترین ویژگیهای کاربردی کاربردی زبان سی، ویژگی شیگرایی سیپلاسپلاس، ماژولار بودن Modula-3، اسکریپتنویسی پرل و بسیاری دیگر از قابلیتها را در خود جای داده است. در این مطلب، بهطور کلی توضیحی در ارتباط با پایتون ارایه میکنیم. بدیهی است، ممکن است در اینجا بیشتر مفاهیم برای شما ناآشنا باشند، اما در مقالههای آتی که اطلاعات بیشتری در مورد پایتون بهدست میآورید، با تمامی این مفاهیم آشنا میشوید.
یکی از ویژگیهای جالب توجه پایتون، خلاصهنویسی و خوانایی کدها است. فرض کنید قصد داریم متن Hello Python را به زبانهای مختلف و منجمله پایتون بنویسیم. به دقت نگاه کنید که هر یک از زبانهای برنامهنویسی برای انجام اینکار چه تعداد دستور را استفاده میکنند:
Java:
public class Test
{
public static void main(String[] args)
{
System.out.println (“Hello Python”);
}
}
C:
#include<stdio.h>
void main()
{
print(“Hello Python”);
}
Pascal:
program Hello;
begin
Writeln(‘Hello Python’)
End
Python:
print(‘Hello Python’)
قابلیتهای شاخص زبان برنامهنویسی پایتون
بهطور کلی، زبان برنامهنویسی Python به دلایل زیر مورد توجه برنامهنویسان قرار دارد:
- کاربرپسند بودن: یادگیری پایتون بسیار آسان است. برنامههای آن به وضوح قابل درک هستند و کدهای خواندنی دارد. از تعداد مشخصی کلمه کلیدی و نحو مشخص استفاده میکند که باعث میشود هرکسی بتواند به سرعت این زبان را یاد بگیرد.
- رایگان است: پایتون نرمافزاری رایگان است، بنابراین، هر کسی میتواند آزادانه از پایتون استفاده کرده و برنامههای جدید بنویسد.
- یک زبان برنامهنویسی سطح بالا است: Python به برنامهنویسان اجازه میدهد به جای آنکه روی مباحث سطح پایین و جزییات فنی زیرساخت پایتون تمرکز کنند، تنها روی راهحل مشکل متمرکز میشوند.
- فارغ از سکو: ماشین مجازی پایتون پس از نوشتن کدها، آنها را به شکل قابل فهم برای ماشین تبدیل میکند، بنابراین کدها فارغ از سکو هستند و قابلیت اجرا روی سیستمعاملهای مختلف را دارند.
- قابل حمل بودن: پایتون یک زبان قابل حمل است و بنابراین برنامهها در هر پلتفرمی یکسان اجرا میشوند.
- Dynamically typed: پایتون به عنوان یک زبان dynamically typed شناخته میشود، زیرا نیازی به اعلام نوع داده متغیرها در زمان استفاده نیست. به بیان دیگر، هنگامی که متغیری تعریف و مقدار به آن تخصیص داده میشود، بهطور خودکار نوع داده را حدس میزند، در حالی که در جاوا ، سی، سیپلاسپلاس و غیره نوعهای دادهای باید به شکل صریح تعریف شوند.
- 7. رویهای و شیگرا: پایتون به بهترین شکل از برنامهنویسی رویها و شیگرا پشتیبانی میکند. در حالی که از تکنیک شیگرایی دادهها و قابلیتهای درون اشیا پشتیبانی میکند، در همان حال از تکنیک رویکردمحور نیز پشتیبانی میکند تا یک برنامهنویس بتواند ترکیبی از هر دو پارادایم برنامهنویسی را به خدمت گرفته و کدهایی با قابلیت استفاده بنویسد.
- تفسیر شده: نیازی به کامپایل برنامه قبل از اجرای آن نیست، زیرا کدها فقط در زمان اجرا کامپایل میشوند و در نتیجه به راحتی قادر به اجرای برنامهها هستید.
- قابل توسعه: از آنجایی که پایتون یک نرمافزار منبع باز است، هر کس میتواند ماژولهای سطح پایین را به مفسر پایتون اضافه کند. این ماژولها برنامهنویسان را قادر میسازند تا ابزارهای موردنیاز را به پایتون اضافه کرده یا آنها را سفارشی کنند.
- کتابخانه وسیع: پایتون یک کتابخانه داخلی غنی ارائه میدهد که برنامهنویسان میتوانند به شکل مستقیم از آن استفاده کنند.
- پایتون حساس به حروف است: یکی از نکات مهمی که باید در مورد زبان برنامهنویسی پایتون به آن دقت کنید این است که زبان مذکور به بزرگی و حروف کاراکترها حساس است. بنابراین در زمان نوشتن دستورات باید به این نکته دقت کندی.
- تورفتگیها: در حالی که بیشتر زبانهای برنامهنویسی از تورفتگیها برای رسیدن به مفهوم زیباییشناسی استفاده میکنند، اما در پایتون تورفتگیها به معنای مشخص کردن بلوکها هستند. اگر در زبانهایی مثل سیپلاسپلاس از آکلودهای باز و بسته برای نشان دادن محدودهای از دستورات استفاده میشود، در این پایتون این وظیفه را تورفتگیها بر عهده دارند.
محدودیتهای پایتون
- پایتون برای اجرای کدها به جای کامپایلر از مفسر استفاده میکند که باعث میشود اجرای کدها کمی کند شود.
- پایتون گزینه مناسبی برای ساخت برنامههای کاربردی برای سیستمعاملهای همراه نیست.
اقتباسها از پایتون
- CPython: یک انشعاب از پایتون است که برای پردازش زبان سی از آن استفاده میشود.
- Jython یا JPython: برای بستر جاوا مفید است و میتواند در ماشین مجازی جاوا (JVM) اجرا شود.
- IronPython: برای برنامههای C#.Net مفید است.
4-: PyPy برای بهبود عملکرد کامپایلرهای Just-In-Time که توسط PVM پشتیبانی میشوند استفاده میشود.
- Ruby Python: برای برنامههای کاربردی روبی مفید است.
- Anaconda Python: برای مدیریت و دستکاری حجم عظیمی از پردازش دادهها مفید است.
پایتون را چگونه اجرا کنیم؟
پایتون را میتوان به روشهای زیر اجرا کرد:
از طریق خط فرمان
در روش فوق مفسر پایتون با استفاده از یک چارچوب اسکریپتی فرا خوانده میشود و در ادامه قادر به نوشتن اسکریپتها یا همان کدهای پاینون هستید. در شکل زیر، خط فرمان پایتون همراه با نماد >>> را مشاهده میکنید که آماده دریافت دستورات است.
در این حالت، مکاننما در خط فرمان در انتظار دستورات کاربر است.
محیط توسعه یکپارچه (IDLE)
راهکار دوم و البته قدرتمندتری که برای اجرای کدهای پایتون در اختیارتان قرار دارد، محیط توسعه یکپارچه استی که توانایی پشتیبانی از پایتون را داشته باشد. در شکل زیر محیط توسعه یکپارچه پایتون که هنگام نصب در اختیارتان قرار میگیرد را مشاهده میکنید.
این پوسته تعاملی نسبت به رابط خط فرمان قابلیتهای بیشتری در اختیارتان قرار میدهد و حداقل امکانات لازم برای کدنویسی به زبان Python را فراهم میکند.
فرایندهای داخلی پایتون
هر زمان کاربری سعی میکند کد پایتون را از طریق خط فرمان یا محیط توسعه یکپارچه اجرا کند، عملیات مختلفی در پشت صحنه انجام میشوند. این مراحل به شرح زیر هستند:
گام 1: مترجم کد یا دستورالعمل پایتون را میخواند. سپس، ترکیب نحوی و قالببندی دستورالعملها را تأیید میکند. اگر خطایی پیدا کرد، بلافاصله ترجمه را متوقف میکند و پیام خطایی نمایش میدهد.
گام 2: اگر خطایی وجود نداشته باشد، مترجم دستورات را به معادل کدهای سطح پایین که بایتکد نام دارند ترجمه میکند.
گام 3: سپس بایتکد به ماشین مجازی پایتون منتقل میشود و در خروجی نمایش داده میشود.
نظرات
هنگامی که قصد ساخت برنامهای را دارید، نظرات مفید هستند. نظرات به مردم میگویند کد منبع در مورد چیست و برای درک بهتر برنامهها نوشته میشوند. در زبان برنامهنویسی پایتون برای نوشتن نظرات، از علامت هش (#) استفاده میشود. در این حالت مترجم پایتون نظرات را نادیده میگیرد. شکل زیر نحوه نوشتن نظرات با استفاده از نماد هش را نشان میدهد.
برای نوشتن نظرات چند خطی، دو روش وجود دارد. اولین روش استفاده از علامت هش در ابتدای هر خط است. شکل زیر نحوه انجام اینکار را نشان میدهد.
راه دوم برای نوشتن نظرات چند خطی استفاده از نقلقولهای سهگانه است. شکل زیر نحوه استفاده از نقل قولهای سهگانه را نشان میدهد.
تا این بخش از مطلب، توضیح کلی در ارتباط با زبان برنامهنویسی پایتون و ویژگیهای کلیدی آن، زمینههای کاربردی، ویژگیها و محدودیتها ارائه کردهایم، در ادامه شرح مختصری از اجرای کدهای پایتون در محیط توسعه یکپارچه ارایه کردیم و دیدیم که دستورات پایتون چگونه پردازش و اجرا میشوند. در انتها با نحوه درج نظرات آشنا شدیم.
کار کلاسی
برای آنکه به شکل بهتری با دنیای پایتون ارتباط برقرار کنید، باید کمی کار شخصی انجام دهید. مرورگرتان را باز کرده و تحقیقی در ارتباط با پرسشهای زیر انجام دهید:
- آیا پایتون یک زبان حساس به حروف است؟
- چگونه میتوانید پایتون را اجرا کنید؟
- چگونه میتوانید نظرات خود را در پایتون بنویسید؟
- چه تفاوتی میان رابط خط فرمان و رابط گرافیکی که برای کدنویسی دستورات پایتون از آنها استفاده میشود وجود دارد؟
- درباره ماشین مجازی پایتون چه فکری میکنید؟
چرا پایتون زبان مناسبی برای یادگیری است؟
امروزه زبانهای برنامهنویسی مختلفی در دسترس برنامهنویسان قرار دارد که بیشتر آنها برای مقاصد خاصی طراحی شدهاند. به بیان دقیقتر، شرکتها نمیتوانند یک زبان برنامهنویسی طراحی کنند که جوابگوی نیازهای کاری شرکتها باشد.
بهطور مثال، زبان برنامهنویسی اسمبلی برای انجام کارهای خاصی استفاده میشود و قرار نیست برای طراحی وبسایتها یا برنامههای کاربردی از آن استفاده کرد، یا هنگامی که قصد برنامهنویسی بردهای رزبریپای را داریم بهترین گزینه در این زمینه سیپلاسپلاس است.
با اینحال، برخی زبانها انعطافپذیری بیشتر و سادگی بیشتری دارند. در حالی که زبانهای برنامهنویسی سی، سیپلاسپلاس و جاوا برای ساخت أنواع مختلفی از برنامهها استفاده میشوند، اما ترکیب نحوی پیچیدهای دارند و مدیریت اشیا و حافظه در آنها به مهارت زیادی نیاز دارد. در حالی که زبانهایی مثل پایتون همان قدرت را با ترکیب نحوی ساده در اختیار توسعهدهندگان قرار میدهند و به همین دلیل است که مورد توجه شرکتها و برنامهنویسان قرار دارند.
از مهمترین دلایلی که باعث شده پایتون با استقبال عمومی روبرو شود به موارد زیر باید اشاره کرد:
پایتون زمان ساخت نرمافزارها را کمتر میکند: بهطور معمول، کدهای پایتون 2 تا 10 برابر کمتر از کدهایی هستند که به زبانهای سی، سی پلاسپلاس و جاوا نوشته میشوند. درست مشابه مثالی که ابتدای مطلب به آن اشاره کردیم. بنابراین وقت کمتری صرف نوشتن برنامههای کاربردی میشود.
کدهای پایتون خوانایی زیادی دارند: زبانهای برنامهنویسی شبیه به زبانهای خارجی هستند. هر زبانی که ترکیب نحوی آن سادهتر و قابل فهمتر باشد بیشتر مورد توجه قرار میگیرد. کدهای پایتون در مقایسه با سایر زبانهای برنامهنویسی قابل فهمتر هستند. بنابراین زمان کمتری صرف فهمیدن کدها میکنید.
زمان یادگیری پایتون کمتر است: بازه زمانی یادگیری پایتون به نسبت زبانهای دیگر کاملا کوتاه است، زیرا ترکیب نحوی آن پیچیده نیست و با صرف کمی وقت به راحتی قادر به یادگیری آن هستید. درست مثل جاوااسکریپت که نیازی نیست برای یادگیری آن زمان زیادی را سپری کنید.
پایتون یک زبان برنامهنویسی ایدهآل برای ساخت نمونههای اولیه است: پایتون روی بهرهوری تاکید زیادی دارد. بنابراین توسعهدهندگان از پایتون برای ساخت سریع یک نمونه اولیه از یک برنامه کاربردی و نشان دادن آن به مشتری استفاده میکنند.
پایتون گزینه مناسبی برای ساخت برنامههای اسکریپتی وبمحور است: در حالی که جاوااسکریپت گزینه اصلی برنامهنویسان در حوزه وب است، اما به فاصله کمی پایتون در تعقیب آن است. البته پایتون قابلیتهای خاصی را ارایه میکند که جاوااسکریپت قادر به ارائه آنها نیست. علاوه بر این، نباید فراموش کنیم که کتابخانه جنگو به بهترین شکل از پایتون پشتیبانی میکند.
پایتون ایدهآلترین گزینه در حوزه کارهای تحقیقاتی، هوش مصنوعی، یادگیری ماشین و البته ریاضی است: کتابخانهها و چارچوبهای کاربردی همچون نامپای (NumPy) و اسکیپای (SciPy) که برای پایتون ارائه شدهاند، اجازه میدهند بدون مشکل برنامههای مدرن قدرتمندی ایجاد کنید.
پایتون برای کار با زبان نشانهگذاری توسعهیافته XML ایدهآل است.
گزینه مناسبی برای کار با بانکهای اطلاعاتی است. پایتون یک زبان پرسوجو شبیه به اسکیوال یا لینکیو (LINQ) نیست، اما در زمینه تعامل با بانکهای اطلاعاتی عملکرد قابل قبولی دارد.
پایتون در سالهای اخیر بیشتر امتیاز را در مقایسه با زبانهای دیگر به خود اختصاص داده است.
کلام آخر
قبل از یادگیری برنامهنویسی و ساخت برنامههای کاربردی، لازم است با مباحث اولیه برنامهنویسی آشنایی داشته باشید. مادامی که ندانید یک متغیر به چه معنا است، روال/رویه چه معنایی میدهد یا در حالت کلی یک برنامه چیست، هیچگاه موفق نخواهید شد برنامهای اصولی و استاندارد را پیادهسازی کنید.
ما در سری آموزشهای پایتون سعی میکنیم تا حدود زیادی به این نکات اشاره کنیم، اما بدیهی است امکان پرداختن به تمامی جزییات وجود ندارد، بنابراین در بخشهایی از آموزش به نکات کلیدی اشاره میکنیم و مطالعه عمیق در مورد مفاهیم را به خوانندگان واگذار میکنیم.
نویسنده: حمیدرضا تائبی