معرفی

مرور مباحث این فصل

در پایان این فصل، میتوانید اسکریپت های پایتون را بنویسید و اجرا کنید، با ترمینال و command line کار کنید، ماژول های پایتون را بنویسید و در برنامه وارد کنید، برنامه ی خود را با استفاده از docstring ها داکیومنت کنید، الگوریتم های ساده را در پایتون بکار بگیرید و عملیات جستجو و مرتب سازی را انجام دهید. در پایان این فصل با 3 الگوریتم اصلی تکرار شونده( iterative )، بازگشتی( recursive )و دینامیک (پویا یا dynamic ) دست و پنجه نرم می کنیم.

ماژولارایز کردن کد به ما اجازه می دهد تا ساختارمند و خوانا کارهای مختلفی را انجام دهیم و در این مسیر از توابع کمک کننده( helper functions ) مانند توابع lambda استفاده می کنیم.

معرفی این فصل

کامپیوتر ها و برنامه های کامپیوتری دارای حجم زیادی از واحد های منطقی کوچکتر هستند که با دقت مرتب شده اند. این واحد های کوچک هیچکدام پیچیده نیستند و به تنهایی نتیجه را مشخص نمی کنند؛ اما زمانی که این واحد های کوچک مرتب شده در یک سیستم به درست کنار هم کار میکنند، خروجی مورد نظر ما را تولید می کنند.

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

برای مثال:

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

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

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