مروری بر زبان برنامه نویسی پایتون
مقاله

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

مقدمه:

پایتون یک زبان برنامه نویسی سطح بالا است و از نظر نوع اجرا، یک زبان مفسری (interpreted language) به حساب می آید. از طرفی پایتون یک زبان برنامه نویسی همه کاره ( general purpose ) محسوب می شود و خوانایی بالای آن، باعث شده است که در زمره محبوب ترین زبان های برنامه نویسی قرار گیرد. فراگیری این زبان برنامه نویسی، به شما توانایی خلق طیف گسترده ای از برنامه ها (applications) را می دهد، از این زبان برنامه نویسی برای طراحی وب سایت ها، برنامه های کاربردی موبایل و رایانه های مبتنی بر انواع سیستم عامل ها استفاده می شود. همچنین زمانی که پروژه شما مبتنی بر ریاضیات و هوش مصنوعی باشد، به جرات می توان گفت که نمی توانید انتخابی بهتر از پایتون داشته باشید. در حال حاضر  پایتون با گذر از جاوا، تبدیل به دومین زبان برنامه نویسی پرکاربرد در سایت Github شده است ( تصویر1 ). با مطالعه این مقاله، با این زبان برنامه نویسی آشنا خواهید شد.

تصویر (1)

تاریخچه :

پایتون در اواخر سال 1980 میلادی اعلام وجود کرد. در اصل شخصی به نام Guido van Rossum برای زمان بیکاری خود در تعطیلات کریسمس، دنبال یک سرگرمی بود! و سرگرمی او نیز پایه گذاری و ایجاد زبان برنامه نویسی پایتون شد. هدف Guido van Rossum ایجاد یک زبان برنامه نویسی بود که نحو ( syntax ) آن آسان و قابلیت خوانایی آن بالا باشد و همزمان با این مزیت ها، برنامه نویسان بتوانند با حجم کد کمتری نتیجه دلخواه خود را بگیرند. نام این زبان برنامه نویسی، برخلاف تصورات رایج، از مار پیتون ( python snake ) گرفته نشده است و در اصل به دلیل تمایل فراوان آقای Guido van Rossum به یک برنامه کمدی به نام "Monty Python's Flying Circus" نامگذاری شده است. خالق پایتون، مدتی در Google مشغول به کار بوده و اکنون در DropBox فعالیت می کند. اولین نسخه پایتون در سال 1991 منتشر (released ) شد. برای دستیابی به یک مفهوم و نتیجه واحد، زبان پایتون به مراتب حجم کد کمتری می خواهد و خواناتر نیز می باشد. جدیدترین نسخه پایدار پایتون که انتشار پیدا کرده است( در زمان نوشتن این مقاله ) نسخه 3.8 است، در تصویر 2 می توانید شماتیکی از زمان های انتشار نسخه های مختلف پایتون تا به امروز را مشاهده نمایید:

 

تصویر (2)

معروفترین شرکت های استفاده کننده از پایتون:

آیا قابلیت هایی چون خوانایی بالا و راحتی در راه اندازی و نوشتن کد، شما را ترغیب به استفاده از پایتون نمی کند؟ این موضوع در کنار قابلیت های فراوان دیگر، همچون وجود کتابخانه های نرم افزاری فراوان و توسعه چارچوب های نرم افزار، بهانه مناسبی برای شرکت های بزرگ بود تا از پایتون در محصولات خود استفاده کنند. در ادامه به معرفی برخی از این شرکت های بزرگ پرداخته خواهد شد: 

1- شرکت Industrial Light and Magic :

اگر به فیلم های علمی تخیلی همچون Terminator، Jumanji، Avengers، Aladdin، و Aquaman علاقه مند هستید، یا از آن دسته افرادی هستید که تمام قسمت های Star Wars را بارها تماشا کرده اید، شما ساخته شدن این فیلم ها با این حجم از گرافیک زیبا را تا حدی مدیون پایتون هستید. کمپانی Industrial Light and Magic یا به اختصار ILM یک شرکت متخصص جلوه های ویژه تصویری ( motion picture visual effects ) است که نقش به سزایی در ایجاد فیلم های علمی تخیلی نام برده، داشته است. کمپانی ILM از سال 1996 و همزمان با انتشار نسخه 1.4 پایتون، کم کم این زبان برنامه نویسی را جایگزین Unix shell scripting کرد که نقش کنترل کننده خطوط تولیدات( production pipeline ) این شرکت را داشت. به مرور زمان و با مشخص شدن انعطاف پایتون در ارسال و دریافت درخواست ها به توابع زبان های برنامه نویسی دیگر، ILM ترغیب شد تا از پایتون در قسمت هایی از برنامه هایی که به زبان C و ++C نوشته شده بودند نیز استفاده کند. این کمپانی هنوز در حال استفاده از python بوده و نتوانسته است جایگزین بهتری در این سال ها برای آن پیدا کند.

تصویر (3)

2- شرکت Google :

سخن گفتن از اهمیت گوگل و چیستی آن، می تواند به معنای واقعی، تلف کردن وقت گرانبهای شما باشد. امروزه کمتر کسی را می توان پیدا کرد که نداند گوگل چیست و یا از آن استفاده نکرده باشد. این غول بدون رقیب در دنیای اینترنت، مدت هاست که در حال استفاده از پایتون می باشد. از همان ابتدای شروع کار گوگل، زبان برنامه نویسی پایتون یکی از ارکان اصلی سرویس ها و محصولات آن بوده است. شعاری که برای این زبان برنامه نویسی در گوگل وجود دارد این است : "Python where we can, C++ where we must" یعنی تا جایی که امکان پذیر باشد، از پایتون استفاده میکنند و اگر جایی مجبور باشند، از زبان دیگری همچون ++C استفاده خواهند کرد. اگر تخصصی تر به جمله مورد نظر نگاه شود ، یعنی آن جایی که کنترل حافظه بسیار اهمیت داشت و تاخیر اندک یک نیاز اساسی تلقی میشد، از ++C استفاده می کردند چرا که در مقایسه، پایتون کمی کند است. با این حال، سادگی نوشتن کد و قابلیت بازخوانی بالا و سهولت نگهداری و ارائه سریعتر محصولات مبتنی بر پایتون، گوگل را دلبسته به این زبان برنامه نویسی کرده است.

تصویر (4)

اشتیاق به استفاده از پایتون در گوگل به حدی بود که اگر برنامه ای به زبان های دیگر همچون perl و Java برای آن نوشته می شد، مهندسین گوگل، آن برنامه را به ورژن پایتون-پایه تبدیل می کردند. اولین عنکبوت خزنده گوگل (web-crawling spider ) به زبان Java نوشته شده بود اما آنقدر کار با آن سخت بود که مهندسین گوگل آن را مجدد به زبان پایتون نوشتند. در حال حاضر پایتون یکی از 4 زبان رسمی است که گوگل اجازه ایجاد محصول مبتنی بر آن ها را می دهد( سه زبان دیگر، Java، Go و ++C هستند). در رابطه با معروفترین محصولات گوگل که با پایتون نوشته شده اند یا از پایتون در بخش زیادی از سرویس های خود استفاده میکنند، می توان به لیست زیر اشاره نمود:

  • YouTube : بزرگترین سایت اشتراک گذاری ویدیو دنیا، از پایتون به عنوان زبان سمت سرور خود استفاده می کند.
  • Code.google.com : سایت اصلی توسعه دهندگان گوگل نیز مبتنی بر پایتون می باشد.

3- شرکت Instagram :

 اگر شعار شما این باشد که : "کار های ساده را اول انجام بده"،  انتخاب زبان پایتون از سوی شما آنقدر هم دور از انتظار نخواهد بود. در سال 2016 بود که مهندسین شرکت Instagram با افتخار اعلام کردند که در حال اجرای بزرگترین پیاده سازی چارچوب نرم افزاری Django هستند که این چارچوب کاملا بر اساس پایتون نوشته شده است. این موضوع تا به امروز به قوت خود باقی است و بیش از 800 میلیون کاربری که در اینستاگرام فعال هستند، ناخواسته در حال تعامل با این ابر سایت پایتونی می باشند. در سال 2017 شرکت اینستاگرام اعلام کرد که بیشتر کد های سیستم خود را از نسخه 2 پایتون به نسخه 3 تغییر داده است . همچنین مدیران این شرکت علاقه مندی Instagram برای سرمایه گذاری بیشتر به جهت رشد و ارتقای این زبان برنامه نویسی را اعلام کرده اند.

تصویر (5)

4- Spotify :

حتما عاشقان موسیقی نرم افزار Spotify را می شناسند. این غول صنعت موسیقی دنیا، خود عاشق پایتون است، Spotify از این زبان برنامه نویسی در نرم افزار های آنالیز داده ها ( data-analysis ) و سرویس های سمت سرور ( back-end ) خود استفاده می کند. همه سرویس های جزء که در سمت سرور قرار دارند، با یک کتابخانه و چارچوب متن باز نرم افزاری ( open source networking library and framework ) به نام ZeroMQ در تعامل هستند. این کتابخانه با استفاده از پایتون و ++C نوشته شده است. دلیل اصلی Spotify برای انتخاب پایتون، راحتی و سرعت بالای توسعه بر مبنای این زبان برنامه نویسی بوده است. هرچه کد خواناتر باشد، توسعه سریعتر و راحت تر خواهد بود.

تصویر (6)

اگر با Spotify کار کرده باشید، پس از جست و جوی چند موسیقی و گوش دادن به آن، متوجه خواهید شد که به صورت شگفت آوری موسیقی هایی به شما پیشنهاد داده می شود که واقعا از آن ها نیز خوشتان خواهد آمد. برای این سیستم پیشنهادگر (recommendation system) پیشرفته، Spotify نیاز به آنالیز داده بسیاری دارد. برای دستیابی به این هدف، Spotify از Luigi استفاده می کند که یک ماژول پایتون برای ارتباط با Hadoop ( سیستم پردازشگر داده های عظیم بر روی شبکه بزرگی از ابر کامپیوتر ها ) است. در Spotify، هزاران هزار داده در خوشه هایی (clusters) از سرور های قدرتمند و به متصل به یک شبکه واحد، پردازش می شوند و نتیجه آن از طریق بیش از 6000 پردازش مجزای پایتون به عنوان خروجی به کار گرفته می شوند.

5- دیگر کمپانی ها:

پرداختن بیش از این به کمپانی های استفاده کننده از پایتون، از حوصله این مقاله خارج است. در ادامه به یک تصویر مجتمع از شرکت های استفاده کننده از پایتون بسنده خواهد شد:

تصویر (7)

اگر به دنبال لیست بلندتری از نرم افزار های نوشته شده به وسیله پایتون هستید، می توانید به صفحه List of Python software مراجعه نمایید. 

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

تصویر (8)

منابع یادگیری این زبان برنامه نویسی به اندازه ای است که شما نگرانی از نظر کمبود منابع نخواهید داشت. البته بهترین منبع همواره خواندن مستنداتی است که سایت اصلی آن زبان برنامه نویسی ارائه می نماید، برای مطالعه این مستندات می توانید روی Python's documentation کلیک کنید. برای شروع همه آنچه که نیاز دارید، نصب و راه اندازی پایتون است. برای نصب پایتون در سیستمی که در حال حاضر به آن دسترسی دارید، می توانید وارد صفحه download python شوید و سپس نسخه مناسب سیستم عامل خود را دانلود کرده و اقدام به نصب آن نمایید. اگر کاربر ویندوز هستید، یادتان باشد که Add Python 3.x to PATH را انتخاب کنید تا درگیر اضافه کردن دستی مسیر اجرای پایتون نشوید. برای شروع کد نویسی بهتر است یک IDE مناسب کار خود نیز انتخاب نمایید. اگر علاقه به کد زدن در محیط سرد و تاریک cmd یا terminal لینوکس دارید ، فقط python را در این محیط ها نوشته و کلید enter را بزنید تا پایتون آماده اجرا گردد. اما اگر به کمی کمک در کد نوشتن نیاز دارید، Atom یکی از بهترین محیط های برنامه نویسی برایتان خواهد بود، چرا که خود Atom به وسیله پایتون نوشته شده است. دیگر محیط برنامه نویسی که میتوان به آن اشاره نمود، Visual Studio Code است. امروزه Visual Studio Code تقریبا برای هر زبان های برنامه نویسی قابل استفاده است، برای اجرای پایتون نیز کافی است که مسیر اجرای پایتون را به این محیط برنامه نویسی اضافه نمایید.

 اگر دانشجو هستید و نیاز دارید کد های خود را با مستندات ارائه نمایید، قطعا Jupyter notebook برایتان بهترین گزینه خواهد بود. نصب Jupyter notebook کمی آسانتر از محیط های برنامه نویسی نام برده شده است.

- Terminal یا CMD تحت دسترسی admin اجرا کنید 

- به کمک pip شگفت انگیز پایتون، این محیط کد نویسی را نصب کنید : pip install jupyter 

اگر پیش نیازها در سیستم شما نصب باشند، کار تمام است. 

محیط Jupyter برای برنامه نویسان وب، دلپذیر و آشنا است چرا که در مرورگر شما و تحت یک پورت (برای مثال localhost:8888 ) اجرا می شود و به شما قابلیت افزودن متن ، تصاویر به هر بخش اجرای کد را می دهد. این محیط به قدری جذاب است که خود گوگل آن را به صورت آنلاین در اختیار محققان قرار می دهد. کافی است وارد Google Drive خود شوید و افزونه Google Colab را نصب کنید، پس از آن می توانید فایل ipynb (نسخه تعاملی تر پایتون که به صورت پیشفرض در Jupyter اجرا می شود) ایجاد کنید و اقدام به کد نویسی نمایید.

تصویر (9)

از دیگر محیط های ویرایشگر کد یا IDE می توانید به PyCharm ،IDLE ،Spyder و Sublime Text اشاره کرد. همچنین می توانید پرکاربردترین IDE های پایتون را در تصویر 10 مشاهده نمایید:

تصویر (10)

سخن پایانی:

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

اشتراک گذاری:

نظرات

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *