مقدمه و این دوره به درد چه کسانی می خوره؟ – دوره سریع پایتون جلسه 1

دوره سریع پایتون

یک مقدمه عملی و مبتنی بر پروژه برنامه نویسی

مقدمه

هر برنامه نویسی در مورد نحوه یادگیری نوشتن اولین برنامه خودش قصه ای داره. برنامه نویسی رو از کودکی و زمانی شروع کردم که پدرم برای Digital Equipment Corporation، یکی از شرکت های پیشگام عصر محاسبات مدرن کار می کرد. اولین برنامه ام رو با یک کیت کامپیوتری نوشتم که پدرم تو زیرزمین خونه گذاشته بود. این کامپیوتر فقط از یک مادربرد خالی متصل به صفحه کلید بدون کیس تشکیل شده بود و نمایشگر اون یک لوله اشعه کاتدی لخت بود. برنامه اولیه من یک بازی ساده حدس اعداد و چیزی شبیه به این بود:

همیشه یادم می مونه که وقتی خانواده­م رو در حال بازی‌ کردن با چیزی که من ساخته بودم می دیدم و اونطور که می ‌خواستم کار می‌ کرد، چقدر احساس رضایت داشتم.

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

همیشه یادم می مونه که وقتی خانواده­م رو در حال بازی‌ کردن با چیزی که من ساخته بودم می دیدم و اونطور که می ‌خواستم کار می‌ کرد، چقدر احساس رضایت داشتم.

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

این دوره به درد چه کسانی می خوره؟

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

انتظار یادگیری چه چیزی رو باید داشته باشید؟

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

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

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

در قسمت دوم، چیزی که در قسمت اول یاد گرفتید رو تو سه پروژه استفاده می کنید. شما می تونید هر کدوم یا همه این پروژه ها رو به هر ترتیبی که برای شما مناسب تره انجام بدید. تو پروژه اول، در فصل های 12 تا 14، شما یک بازی تیراندازی به سبک Space Invaders به اسم Alien Invasion ایجاد می کنید که چندین سطح دشوارتر از بازی داره. بعد از تکمیل این پروژه، باید به خوبی در مسیر توسعه بازی های دو بعدی خودتون باشید. حتی اگه نمی‌خواید یک برنامه ‌نویس بازی بشید، کار کردن تو این پروژه یک راه لذت ‌بخش برای پیوند دادن خیلی از چیزهایی هستش که در قسمت اول قراره یاد بگیرید.

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

در پروژه سوم، در فصل های 18 تا 20، یک برنامه وب کوچک به نام Learning Log می سازید. این پروژه به شما این امکان رو میده که یک منبع سازمان یافته از اطلاعاتی که در مورد یک موضوع خاص یاد گرفتید نگه دارید. شما می ‌تونید گزارش‌ های جداگانه برای موضوعات مختلف نگه دارید و به دیگران اجازه بدید یک حساب ایجاد کنن و مجلات خودشون رو راه ‌اندازی کنن. همچنین یاد می گیرید که چطور پروژه خودتون رو اجرا کنید تا هر کسی بتونه از هر کجای دنیا به اون به صورت آنلاین دسترسی داشته باشه.

منابع آنلاین

سایت No Starch Press اطلاعات بیشتری به صورت آنلاین و به آدرس https://nostarch.com/python-crash-course-3rd-edition  در دسترس گذاشته.

من همچنین مجموعه گسترده ای از منابع تکمیلی را تو آدرس https://ehmatthes.github.io/pcc_3e نگهداری می کنم. این منابع شامل موارد زیره:

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

به روز رسانی ها: پایتون، مثل همه زبان ها، دائما در حال تغییره. من مجموعه کاملی از به‌ روزرسانی ‌ها رو حفظ می‌ کنم، بنابراین اگه موردی کار نمی ‌کنه، اینجا رو بررسی کنید تا ببینید آیا دستورالعمل ‌ها تغییر کردن یا نه.

راه حل های تمرینات: شما باید زمان قابل توجهی رو صرف انجام تمرینات در بخش “خودت امتحان کن” بکنید. با این حال، اگه گیر کردید و نمی ‌تونید پیشرفتی داشته باشید، راه‌ حل ‌های خیلی از تمرین ‌ها آنلاین هستن.

برگه های تقلب: مجموعه کاملی از برگه های تقلب قابل دانلود برای ارجاع سریع به مفاهیم اصلی هم آنلاینه.

دیدگاه‌ خود را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *