دوره آموزشی پایتون با ۱۵۰ چالش - معرفی

به نام خدا.سلام.قصد دارم یه دوره آموزشی نسبتاً طولانی رو شروع کنم و زبان پایتون (و برنامه نویسی) رو، با ۱۵۰ چالش و با یه زبان خودمانی و ساده، به شما یاد بدم. فکر میکنم انشاالله دوره بی نظیری بشه.راستش اولش گفتم بنویسم پایتان، بعد گفتم نه بنویسم پایثان که اون th هم خوشحال باشه. بعدش گفتم بگم پایتون و در آخر هم پایثون. بعد از یه سردرد خفیف و از اونجایی که دوس داشتم تو عنوان دوره یه کلمه فارسی به کار ببرم، تصمیم گرفتم بگم پایتون، فقط چون فکر کردم قشنگ تره. اینم نمونه ای از مصائب ترجمه کردن کلمات انگلیسی به فارسیه که مورد توجه آقای حداد عادل و همکاران هم هست. خدا خیرشان بده که یه تعداد شغل ایجاد کردن برای تبدیل SMS به پیامک.این دوره به نوعی میشه آموزش کتابِ Python by Example از انتشارات Cambridge که فکر میکنم کتاب بی نظیریه. البته یه سری چیزها هم از خودم اضافه میکنم که فهم مطالب ساده تر بشه.انشاالله بعد از این ۱۵۰ چالش، هم پایه های برنامه نویسی رو به خوبی یادمیگیرین و هم تبدیل به برنامه نویس خیلی بهتری میشید و آماده میشید دوره های بالاتر رو هم (مثل Data Structure ها و Algorithm ها) بگذرانید.هرکسی با هر سن و سال و با هر هدفی میتانه با این دوره، برنامه نویسی و زبان معروف و پرکاربرد پایتون رو یادبگیره.البته این دوره فکر نکنم برای برنامه نویس های حرفه ای و باتجربه مناسب باشه، ولی خب از هرجایی میشه چیز یادگرفت.فقط یه نکته: من اصلاً طرفدار استفاده از کلمه پیامک به جای SMS و بالگرد به جای هلیکوپتر و این مسخره بازیا نیستم. فقط نظر شخصیمه. به همین خاطر هم خیلی از کلمات کلیدی رو به همون صورت انگلیسی مینویسم. اگه کسی آزار میبینه از این حالت، از همین الان ببخشید، ولی نمیتانم خودم رو تغییر بدم تو این مورد.چرا این کتاب؟ و یه توضیح راجب نحوه کار ما تو این دورهاکثر کتاب هایی که برنامه نویسی رو آموزش میدن یه مشکلی (مخصوصاً برای تازه کارها) دارن و اونم اینه که خیلی جزئیات زیاد و بیش از حدی رو میگن و این باعث میشه آدم سردرگم بشه و به قولی «مغزش پر میشه» و معمولاً بعد از مدتی اشتیاق و اعتماد به نفسش رو از دست میده.این کتاب خوبیش اینه که روش جدیدی رو انتخاب کرده که به نظر من عالیه. به این صورت که اول یه توضیح سریع و کوتاه میده و بعدشم چند تا مثال میزنه که موضوع مورد بحث رو در عمل ببینی و بعدشم که از طریق حل کردن چالش ها اون موضوع مورد بحث رو کامل یاد میگیری.یعنی درواقع به جای هزار صفحه کتاب و توضیح خواندن، یه توضیح کوچک و سریع میخوانی و «در عمل» و از طریق این چالش ها نکات رو یاد میگیری. که حداقل یکی از خوبی هاش اینه که حوصلت سر نمیره و حس مثبتی از حل کردن چالش ها میگیری، که خودش میشه یجور تشویق برای ادامه دادن مسیر.من هم دقیقا به همین شکل عمل میکنم تو آموزش ها. که هم حرف اضافی نزده باشم و هم اینکه آموزش ها جذاب و کاربردی باشن.خلاصه نحوه کار ما این شکلیه:توضیحَک (یا یه توضیح مختصر. احتمالاً آقای حداد عادل خیلی دوس داشته باشه این رو).مثال هاچالش هاخب، یه خلاصه از این راهِ شگفت انگیزی که میخوایم باهم طی کنیم:قسمت اول، یادگیری پایتون (۱۴۵ چالش) :چالش های شماره ۱ تا ۱۱ : مطالب پایه ایچالش های شماره ۱۲ تا ۱۹ : درمورد ifچالش های شماره ۲۰ تا ۲۶ : درمورد String هاچالش های شماره ۲۷ تا ۳۴ : چیز میزایی که ربط به ریاضی دارن (نگران نباشید، ریاضی ابتداییه!)چالش های شماره ۳۵ تا ۴۴ : درمورد نوعی از loop ها به اسم forچالش های شماره ۴۵ تا ۵۱ : درمورد نوعی از loop ها به اسم whileچالش های شماره ۵۲ تا ۵۹ : درمورد Randomچالش های شماره ۶۰ تا ۶۸ : گرافیک با کمک یه لاکپشت (از یه library به اسم turtle استفاده میکنیم)!چالش های شماره ۶۹ تا ۷۹ : درمورد Tuple ها، List ها و Dictionary هاچالش های شماره ۸۰ تا ۸۷ : سر و کله زدنِ بیشتر با String هاچالش های شماره ۸۸ تا ۹۵ : Array های عددیچالش های شماره ۹۶ تا ۱۰۴ : درمورد List ها و Dictionary های ۲ بعدیچالش های شماره ۱۰۵ تا ۱۱۰ : درمورد Read و Write کردن به یه فایل متنیچالش های شماره ۱۱۱ تا ۱۱۷ : درمورد Read و Write کردن به یه فایل csvچالش های شماره ۱۱۸ تا ۱۲۳ : درمورد Subprogram هاچالش های شماره ۱۲۴ تا ۱۳۲ : درمورد یه library به اسم Tkinter برای ساختن GUI هاچالش های شماره ۱۳۳ تا ۱۳۸ : سر و کله زدنِ بیشتر با Tkinterچالش های شماره ۱۳۹ تا ۱۴۵ : درمورد SQLite که یکی از Database های معروفهقسمت دوم، چالش های تُپُل! (۵ چالش)چالش شماره ۱۴۶ : Shift Codeچالش شماره ۱۴۷ : Mastermindچالش شماره ۱۴۸ : Passwordsچالش شماره ۱۴۹ : (Times Table (GUIچالش شماره ۱۵۰ : Art Galleryانشاالله قسمت صفر درمورد راه اندازی چیزهای مورد نیاز اولیه خواهد بود و از بعد از اون هم چالش های اصلی رو به ترتیب شروع میکنیم.یا علی.