مرور فصل

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

معرفی فصل

در فصل قبل دیدید که چطور میتوانید کلاس های خودتان را ایجاد کنید و درون آنها منطق(الگوریتم، تابع و ...)و داده قرار دهید؛ البته بهترین برنامه نویسان معمولا کمتر از انتظار از شی گرایی استفاده می کنند و با تکیه بر کتابخانه های استاندارد و توابع و کلاس های از قبل آماده شده بیشتر کار خود را انجام می دهند.

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


در فصل 9 با دو پیاده سازی مشهور دیگر آشنا می شویم. در حال حاضر ما از پیاده سازی CPython استفاده می کنیم.

بعضی از کتابخوانه های استاندارد پایتون در پیاده سازی های فرانت اندی پایتون مانند PyScript و Brython در دسترس نیستند. به همین علت در پرانتز بالا از اکثر به جای تمام استفاده کردیم.


از بین دیگر زبان های برنامه نویسی تنها زبان Rust دارای کتابخانه های استاندارد است و زبان جاوااسکریپت هم از سال 2019 به دنبال پیاده سازی این کتابخانه ها بوده و هنوز موفق نشده است. این مسئله باعث شده که زبان هایی برنامه نویسی دیگر به جز پایتون و راست برای پیاده سازی بسیاری از تسک(Task : وظیفه) های عمومی نیازمند وارد کردن ابزار خارجی پیچیده به برنامه باشند. پایتون البته در این زمینه هزاران قدم از دیگر زبان ها جلوتر است و بسیاری از تسک های ابتدایی، پیچیده و پروتکل های ارتباطی را به همراه نصب مفسر( interpreter ) به صورت پیش فرض در خود دارد.


زبان پایتون یک زبان مفسری است! یعنی برنامه به کمک مفسر(interpreter ) نیازی به تبدیل به زبان ماشین برای اجرا ندارد و این مسئله باعث کاهش سرعت (نگران نباشید! نسخه ی 3.11 پایتون بسیار سریع است) اجرای برنامه های پایتونی نسبت به زبان های سطح پایین(این زبان ها کامپایلری هستند یعنی توسط یک کامپایلر به زبان ماشین تبدیل می شوند) می شود. البته این مسئله با توجه به سطح بالا بودن زبان پایتون اهمیت ندارد اما در فصل 9 برنامه ی پایتون را به زبان C کامپایل(Cython ) می کنیم و از یک مفسر سریع تر(PyPy) نسبت به مفسر پیش فرض(CPython ) نیز استفاده می کنیم.


کتابخانه های استاندارد بسیار کاربردی هستند و تسک هایی مانند Zip و Unzip کردن فایلها، ارتباط با دیگر پردازش ها( processes ) و سیستم عامل، پردازش HTML و حتی نمایش های گرافیکی را انجام می دهند. با استفاده از این کتابخانه ها میتوانید بسیاری از برنامه های پیچیده را در تنها چند خط کوتاه بنویسید.

در این فصل با مفاهیم مهم این کتابخانه ها و نحوه ی استفاده از آن ها آشنا میشویم و میبینیم که چطور میتوانیم با تعداد خط کمتر، برنامه های سریع تر و بهتر پایتونی بنویسیم.


در نظر داشته باشید که بسیاری از کتابخانه های استاندارد در این دوره بررسی نمی شوند اما سعی می کنیم در آینده با بروز رسانی دوره، ابزار بیشتری را پوشش دهیم.