کتاب عصر پایتون

ویکی‎کتاب، کتابخانهٔ آزاد
پرش به ناوبری پرش به جستجو
مراحل توسعه ویکی‌کتاب
پراکنده:00%.svg در دست توسعه:25%.png نیمه‌کامل:50%.png توسعه‌یافته:75%.png نوشتهٔ جامع:100 percent.svg

کتاب عصر پایتون به کمک علاقه مندان ایرانی پایتون جمع آوری شده است اين كتاب بر اساس مجوز گنو ارايه ميگردد [۱]

پیش‌گفتار

عصر پایتون

یکی از سودمندترین اختراعات بشر تا به امروز کامپیوترها (رایانه‌ها) هستند. دستگاه‌هایی که هزاران بار سریعتر از انسان محاسبه می‌کنند و سرعت عمل آن‌ها به طرز غیرقابل‌باوری بالاست. سرعت و دقت آن ها، امکان انجام خیلی از کارهایی را فراهم کرده‌اند که انسان به‌طور عادی از انجام آن‌ها عاجز است. زبان‌های برنامه‌نویسی کامپیوتر تنها راه ارتباط با کامپیوتر ها هستند.

به نسل اولیۀ زبان‌های برنامه‌نویسی، زبان‌های سطح پایین گفته می‌شود، چرا که به سختی قابل یادگیری و استفاده بودند. پیاده‌سازی اعمالی ابتدایی توسط این زبان‌ها باعث می‌شد مدت‌ها وقت با ارزش برنامه‌نویسان گرفته شود. اما وضع به همین منوال نماند و با گذشت زمان زبان‌های جدیدی به وجود آمدند که آموختن آن‌ها آسان‌تر بود. طی سه دهۀ اخیر، صنعت کامپیوتر مورد هجوم انواع زبان‌های برنامه‌نویسی قرار گرفته است.

هر کدام از این زبان‌ها شیوه‌های مختلفی را برای برقراری ارتباط با کامپیوتر به‌کار می‌برند. زبان‌هایی مثل C، کدهایشان را توسط برنامه‌ای به نام کامپایلر به کدهای قابل فهم برای کامپیوتر تبدیل می‌کنند.

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

عده‌ای دیگر از زبان‌ها مثل جاوا تکنیک متفاوتی را به‌کار می‌برند، به‌جای اینکه کدهایشان را مستقیماً به خورد کامپیوتر بدهند، کامپایلر را وادار می‌کنند تا کدها را به یک زبان میانی و قابل حمل ترجمه کند؛ سپس از برنامه‌ای دیگر به نام مفسر برای تفسیر این کدهای میانی جدید استفاده می‌نمایند. در حقیقت مفسر کدهای ترجمه شده از طرف کامپایلر را تفسیر می‌کند و مسئولیت اجرای برنامه رابه عهده می گیرد. این گونه زبان‌ها با ساده‌تر کردن فرآیند برنامه‌نویسی برای برنامه‌نویسان کار آن‌ها را راحت‌تر می‌کنند.

نوع دیگری از زبان‌ها هم هستند که فقط از روش تفسیر برای اجرای برنامه‌هایشان استفاده می‌کنند. تنها کار شما به عنوان برنامه‌نویس تمرکز روی کد نوشتن است؛ بقیۀ کارها تماماً به مفسر سپرده می‌شود. برای مثال دیگر لازم نیست چرخۀ وقت‌گیر کامپایل را طی کنید، یا نگران قابل حمل بودن برنامۀ خود باشید زیرا تمام این‌ها مسائلی هستند که مفسر باید نگران آن‌ها باشد، نه خود شما! تقریبا همۀ زبان‌های تفسیری در دستۀ زبان‌های سطح بالا جای می‌گیرند. جالب است بدانید که بین دستۀ زبان‌های سطح بالا هم لایه‌های زیادی وجود دارد. هر چه زبان سطح بالاتر باشد، یعنی آسان‌تر است، قابل‌فهم‌تر است و تولید برنامه با آن سریع‌تر است. امکان استفاده از این سه اصل چیزی است که هر برنامه‌نویسی خواهان آن است.

زبانی که ما قصد داریم به شما معرفی کنیم زبانی است بسیار سطح بالا: «پایتون»؛ پایتون زبان پیشنهادی ما به شماست که به نظر اکثر برنامه‌نویسان توانسته است به بهترین شکل ممکن سه قابلیت اصلی یک زبان سطح بالا یعنی سهولت بیشتر، فهم راحت‌تر و توسعۀ سریع‌تر را به همراه داشته باشد. این کتاب قصد دارد شما را با این زبان آشنا کند و نحوۀ استفاده از آن را به شما بیاموزد تا بتوانید از مزایای این زبان استفاده کنید. مسلماً یادگیری یک زبان سطح بالای خوب به ضرر شما نخواهد بود. امروزه اکثر برنامه‌نویسان در حال جذب شدن به چنین زبان‌هایی هستند چرا که متوجه شده‌اند دنیای زبان‌های برنامه‌نویسی به عصرِ جدیدی پا گذاشته است؛ عصرِ زبان‌های تفسیری و سطح بالا که سعی دارند برنامه‌نویسی را برای برنامه‌نویسان دلچسب‌تر کنند... عصر زبان‌های خوش‌ساخت... عصرِ پایتون!

فهرست محتویات

Python-unicorn.svg

فصل اول: مقدمات پایتون

فصل دوم: متغیر‌ها و کار با آن‌ها

فصل سوم: انواع داده‌های استاندارد در پایتون

فصل چهارم: ساختارهای کنترلی

فصل پنجم: کار با توابع

فصل ششم: برنامه‌نویسی شیءگرا

فصل هفتم: عبارت‌های پایتون

فصل هشتم: سیستم فایل

فصل نهم: مقابله با استثنا

فصل دهم: جستجو و مرتب‌سازی

فصل یازدهم: پردازش متن

فصل دوازدهم: برنامه‌نویسی شبکه

فصل سیزدهم: اینترنت - وب

فصل چهاردهم: برنامه‌نویسی رابط کاربری - GUI

فصل پانزدهم: برنامه‌نویسی ویندوز

فصل شانزدهم: ساختمان داده‌ها

فصل هفدهم: پایگاه داده

فصل هجدهم: چند نخی

فصل نوزدهم: جاسازی پایتون و گسترش پایتون

فصل بیستم: برنامه‌نویسی موبایل

فصل بیستم ویکم: ساخت بازی در پایتون

اسامی مؤلفان و مترجمان (به ترتیب الفبا)

محمد صادق اطهری ، مهدی بیاضی ، بیژن بینایی ، سروش ربیعی ، حسین رحیمی ، سمیر رحمانی ، سعید رسولی ، امید رها ، علی صیدنژاد ،امیررضا قادری ، حسين گودرزی ، احمد صوفی محمودی ، مهدی محمدی ، سید حمید مهدوی ، رضا مشکسار

منابع