Kahibaro
Discord Login Register

کتابخانه چیست؟

مفهوم کتابخانه در پایتون

در فصل‌های قبل، بیشتر با خود زبان پایتون و امکانات داخلی آن کار کردید. از این‌جا به بعد وارد دنیایی می‌شویم که باعث می‌شود پایتون در عمل «قدرتمند» و «کاربردی» شود: کتابخانه‌ها.

در این بخش می‌خواهیم فقط به این پرسش پاسخ بدهیم: کتابخانه چیست؟ (در پایتون).


تعریف سادهٔ کتابخانه

کتابخانه (Library) در پایتون یعنی:

مجموعه‌ای از کدهای آماده (توابع، کلاس‌ها، متغیرها و …) که قبلاً توسط افراد دیگری نوشته شده و شما می‌توانید آن را در برنامهٔ خود «وارد» کرده و استفاده کنید، بدون این‌که لازم باشد آن کدها را خودتان از صفر بنویسید.

به زبان ساده‌تر:

نمونهٔ کلی استفاده از یک کتابخانه:

import math  # وارد کردن کتابخانه
print(math.sqrt(16))  # استفاده از یکی از توابع آن

در این فصل هنوز وارد جزئیات import نمی‌شویم؛ فقط می‌خواهیم مفهوم را درک کنید. نحوۀ وارد کردن ماژول‌ها و کار با کتابخانه‌ها در فصل بعدی همین فصل ۱۲ به‌طور جداگانه توضیح داده می‌شود.


چرا به کتابخانه نیاز داریم؟

کتابخانه‌ها چند مشکل مهم را برای ما حل می‌کنند:

  1. صرفه‌جویی در زمان
    لازم نیست هر بار الگوریتم‌ها و ابزارهای رایج را خودتان از اول پیاده‌سازی کنید.
  2. استفاده از دانش دیگران
    بسیاری از کتابخانه‌ها حاصل تجربهٔ سال‌ها کار برنامه‌نویسان حرفه‌ای هستند. استفاده از آن‌ها یعنی استفاده از این دانش انباشته.
  3. کاهش خطا
    کدی که در کتابخانه‌ها قرار دارد معمولاً توسط افراد زیادی استفاده و آزمایش شده و در نتیجه نسبتاً پایدارتر و کم‌خطاتر است.
  4. تمرکز بر مسئلهٔ اصلی
    شما می‌خواهید مسئلهٔ خودتان را حل کنید (مثلاً نوشتن یک وب‌سایت، تحلیل دادهٔ فروش، خودکارسازی یک کار اداری). با استفاده از کتابخانه‌ها، از کارهای تکراری و سطح پایین آزاد می‌شوید و روی منطق اصلی برنامه تمرکز می‌کنید.

اجزای یک کتابخانه: ماژول‌ها و پکیج‌ها

برای فهم بهتر مفهوم کتابخانه، لازم است دو واژهٔ مهم را بشناسید:

در عمل:

در این فصل فقط ایدهٔ کلی را بدانید:
کتابخانه مجموعه‌ای از این ماژول‌ها/پکیج‌هاست که برای حل یک دسته مسائل خاص طراحی شده‌اند.


انواع کتابخانه‌ها در پایتون (از دید کاربرد)

از نظر کاربرد، کتابخانه‌های پایتون را می‌توان به دسته‌های مختلفی تقسیم کرد. چند نمونهٔ رایج:

در ادامهٔ همین فصل ۱۲، با چند کتابخانهٔ مهم استاندارد پایتون از نزدیک آشنا می‌شوید.


کتابخانهٔ استاندارد در برابر کتابخانه‌های خارجی

کتابخانه‌ها در پایتون از نظر محل تأمین به دو دستهٔ مهم تقسیم می‌شوند:

۱. کتابخانهٔ استاندارد (Standard Library)

این دسته را در بخش‌های بعدی همین فصل بیشتر تمرین می‌کنیم.

۲. کتابخانه‌های خارجی (Third-Party Libraries)

به‌طور خلاصه:

مزیت بزرگ پایتون: اکوسیستم غنی کتابخانه‌ها

یکی از دلیل‌های اصلی محبوبیت پایتون، تعداد زیاد و تنوع بسیار بالای کتابخانه‌های آن است. برای نمونه:

یعنی تقریباً برای هر کاری که فکرش را بکنید، احتمالاً قبلاً کسی کتابخانه‌ای برایش نوشته است.


استفادهٔ مفهومی از کتابخانه در کد

در این بخش فقط می‌خواهیم یک تصویر ذهنی بسازیم که «کتابخانه» در کد چگونه ظاهر می‌شود. جزئیات فنی import در بخش بعدی فصل می‌آید.

یک الگوی ذهنی ساده:

  1. شما به یک قابلیت نیاز دارید (مثلاً محاسبهٔ جذر).
  2. متوجه می‌شوید کتابخانهٔ math این قابلیت را دارد.
  3. آن را وارد کد خود می‌کنید.
  4. از توابعش استفاده می‌کنید.

مثال مفهومی:

import math        # 1. گفتن به پایتون: من از کتابخانهٔ math می‌خواهم استفاده کنم
x = math.sqrt(25)  # 2. استفاده از تابع sqrt داخل کتابخانهٔ math
print(x)           # خروجی: 5.0

اینجا خودتان تابع sqrt را ننوشته‌اید؛ فقط از کتابخانه‌ای استفاده کرده‌اید که قبلاً آن را پیاده‌سازی کرده است.


تشبیه روزمره برای درک بهتر

چند تشبیه برای جا افتادن مفهوم کتابخانه:

چطور بفهمیم چه کتابخانه‌ای لازم داریم؟

در این مرحله لازم نیست نام صدها کتابخانه را حفظ کنید. مهم‌تر این است که الگوی فکر کردن را یاد بگیرید:

  1. ابتدا مسئلهٔ خود را واضح کنید
    • «می‌خواهم با تاریخ و زمان کار کنم.»
    • «نیاز دارم یک نمودار رسم کنم.»
    • «می‌خواهم با یک سایت از طریق API صحبت کنم.»
  2. سپس جست‌وجو کنید
    • در اینترنت با عباراتی مثل python library for charts یا کتابخانه پایتون برای رسم نمودار.
  3. اغلب به یک یا چند کتابخانهٔ مشهور می‌رسید که مخصوص آن کار طراحی شده‌اند.

در فصل‌های بعد، چند کتابخانهٔ مهم را به‌طور مشخص معرفی خواهیم کرد تا برای شروع، چند «نام آشنا» داشته باشید.


جمع‌بندی

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

Views: 5

Comments

Please login to add a comment.

Don't have an account? Register now!