خانه توسعهدهنده تکنولوژی مبانی برنامهنویسی نکات یادگیری پایتون برای مبتدیان – 10 نکته برای آموزش آسانتر
نکات یادگیری پایتون برای مبتدیان – 10 نکته برای آموزش آسانتر
اگر مثل خیلیهای دیگر به فکر یادگیری و آموزش پایتون افتادهاید، احتمالا سوالی رایج در ذهن داشته باشید. اینکه چطور میشود زبان برنامهنویسی پایتون را به بهترین و بهینهترین شکل فرا گرفت. اولین قدم در یادگیری هر زبانی، درک چگونگی یادگیری است، خصوصا در جهان کامپیوتر که هر روز زبانها، کتابخانهها و ابزارها به تکامل هرچه بیشتر میرسند. در این مطلب از کوئرا بلاگ به مهمترین استراتژیها و نکات یادگیری پایتون برای مبتدیان میپردازیم تا مسیری سادهتر در پیش داشته باشید. اگر هم احساس میکنید نیاز به اطلاعاتی بنیادین دارید، مقاله «پایتون چیست» به تمام سوالاتتان پاسخ میدهد.
فهرست مطالب
Toggleنهادینه کردن آموزش
برای اینکه بتوانید فرایند آموزش پایتون را تثبیت کنید و مطمئن شوید آموختهها را به یاد میسپارید، به این نکات توجه داشته باشید.
۱. هر روز کد بزنید
ثبات قدم یکی از مهمترین پیشنیازهای یادگیری هر زبانی است و پیشنهاد میکنیم به کدنویسی در تمام روزهای هفته متعهد شوید. شاید باورش سخت باشد، اما حافظه عضلانی نقشی مهم در تمام فرایند برنامهنویسی ایفا میکند و با کدنویسی روزانه، به شکلگیری این حافظه کمک خواهید کرد. اگرچه چنین کاری در ابتدا ترسناک به نظر میرسد، اما میتوانید با ۲۵ دقیقه کدنویسی در روز شروع کنید و مدتزمان را به مرور افزایش دهید.
۲. از قابلیت آموزش تعاملی استفاده کنید
چه در حال فراگیری نکات بنیادین راجع به ساختار داده در پایتون باشید و چه دیباگ یک اپلیکیشن، پوسته تعاملی پایتون (Interactive Python Shell) یکی از بهترین ابزارهای یادگیری ممکن است. برای استفاده از این ابزار که گاهی به آن Python REPL هم میگویند، ابتدا باید پایتون را روی کامپیوتر نصب داشته باشید. آموزش نصب پایتون را پیشتر در کوئرا بلاگ نوشتهایم.
برای فعالسازی این پوسته تعاملی، خیلی ساده وارد ترمینال شوید و بسته به فایل نصبی خود، Python یا Python3 را اجرا کنید. از آنجایی که این یکی از مهمترین نکات یادگیری پایتون برای مبتدیان است، در ادامه با چند مثال نشان میدهیم که چطور میتوانید از این پوسته به هنگام یادگیری استفاده کنید.
باخبر شدن از عملیاتهای قابل اجرا روی هر عنصر یا متغیر با استفاده از ()dir:
>>> my_string = 'I am a string'
>>> dir(my_string)
['__add__', ..., 'upper', 'zfill']
عناصر دریافتی از ()dir، همگی توابع (یا اکشنهای) قابل پیادهسازی روی هر عنصر هستند. برای مثال:
>>> my_string.upper()
>>> 'I AM A STRING'
دقت کنید که در کد بالا از روش ()upper استفاده شده است که باعث میشود تمام حروف به صورت بزرگ یا کپیتال نوشته شوند.
باخبر شدن از نوع هر عنصر:
>>> type(my_string)
>>> str
استفاده از سیستم یاریرسانی داخلی پایتون برای دسترسی به اسناد کامل:
>>> help(str)
ایمپورت کردن کتابخانههای مختلف و آزمون و خطا با آنها:
>>> from datetime import datetime
>>> dir(datetime)
['__add__', ..., 'weekday', 'year']
>>> datetime.now()
datetime.datetime(2018, 3, 14, 23, 44, 50, 851904)
اجرای فرمانهای Shell:
>>> import os
>>> os.system('ls')
python_hw1.py python_hw2.py README.txt
۳. استراحت کنید
وقتی در حال یادگیری موضوعی به پیچیدگی یک زبان برنامهنویسی کامل هستید، گاهی باید یک قدم به عقب بردارید تا تمام مفاهیم را عمیقا متوجه شوید. تکنیک پومودورو یکی از بهترین روشهای انجام این کار است: به مدت ۲۵ دقیقه کار میکنید، بعد استراحتی کوتاه و بعد این فرایند تکرار میشود. استراحت برای داشتن جلسات آموزشی موثر هم ضروری است، خصوصا وقتی انبوهی اطلاعات را طی مدتزمانی کوتاه دریافت میکنید.
استراحت در فرایند دیباگ یا عیبیابی هم مهم است. اگر با یک باگ روبهرو شدهاید و نمیتوانید از ابعاد مختلف کار سر در بیاورید، به خودتان استراحت بدهید. از پشت کامپیوتر بلند شوید و به یک پیادهروی کوتاه بروید یا با یکی از دوستان حرف بزنید. در برنامهنویسی، کد شما باید کاملا از قوانین و قواعد نحوی یک زبان پیروی کند، بنابراین حتی یک علامت نقل قول اشتباه هم میتواند همهچیز را خراب کند. شادابی ذهن بزرگترین تفاوت ممکن را ایجاد میکند.
۴. شکارچی باگ شوید
حالا که صحبت از باگها شد باید بگوییم که وقتی شروع به نوشتن برنامههای پیچیده میکنید، به شکلی اجتنابناپذیر با باگهایی در کدهای خود روبهرو خواهید شد. این اتفاق برای همه توسعهدهندگان میافتد. بنابراین ناامید نشوید و در عوض به استقبال چنین لحظاتی بروید.
هنگام دیباگ یا عیبیابی، مهم است که رویکردی هدفمند داشته باشید تا مشکلات به سادهترین شکل شناسایی شوند. برای مثال بخشبندی کدها و بررسی آنها براساس ترتیب اجرا، یکی از بهینهترین روشهای عیبیابی به حساب میآید.
زمانی که ذهنیتی کلی راجع به مشکل به دست آوردید، کد زیر را درون اسکریپت خود قرار دهید و آن را اجرا کنید:
import pdb; pdb.set_trace()
این کد متعلق به سیستم دیباگ پایتون است و شما را وارد حالت تعاملی میکند.
یادگیری مشارکتی
زمانی که مفاهیم اولیه را فرا گرفتید، نوبت به برداشتن گام بزرگ بعدی میرسد. نکات یادگیری پایتون برای مبتدیان را با مواردی ادامه میدهیم که به شما اجازه میدهند بیشترین نفع را از تعامل و همکاری با دیگران ببرید.
۵. با سایر دانشجویان تعامل کنید
اگرچه از بیرون اینطور به نظر میرسد که کدنویسی فرایندی کاملا تکنفره است، اما وقتی با دیگران همکاری میکنید به بهترین نتیجه میرسید. هنگام یادگیری کدنویسی در پایتون هم بسیار مهم است که دور و بر خودتان را با سایر دانشجویان پایتون پر کنید. به این شکل میتوانید نکات و ترفندهایی که به مرور یاد میگیرید را با یکدیگر به اشتراک بگذارید.
اگر کسی را نمیشناسید هم نیازی به نگرانی نیست. به روشهای گوناگون میتوانید سایر افراد علاقهمند به این زبان برنامهنویسی را پیدا کنید. مثلا میتوانید به رویدادهای برنامهنویسی محلی بروید یا از سایت PythonistaCafe استفاده کنید که اساسا جامعهای برای تمام علاقهمندان به پایتون است.
۶. پایتون را آموزش دهید
احتمالا این را شنیده باشید که بهترین روش یادگیری، آموزش دادن است. یک توصیه به مبتدیان برای یادگیری پایتون این است که از همین قاعده پیروی کنید. روشهای گوناگونی هم برای آموزش دادن وجود دارد: میتوانید کلاس برگزار کنید، در شبکههای اجتماعی یا بلاگ خود پستهای آموزشی بگذارید، ویدیوهایی راجع به آخرین آموختههای خود ضبط کنید تا اینکه خیلی ساده با خودتان حرف بزنید. تمام این استراتژیها باعث میشوند درکی عمیقتر از پایتون به دست آورید و حفرهها را پر کنید.
۷. برنامهنویسی دونفره کنید
برنامهنویسی دونفره یا Pair Programming تکنیکی مشهور است که مسئولیت وظیفهای واحد را به دو توسعهدهنده میسپارد. این دو همکاری بسیار نزدیکی با یکدیگر دارند و یکی از آنها نقش «راننده» و دیگری نقش «ناوبر» را ایفا میکند. راننده کسی است که کدها را مینویسد و ناوبر هم حین نوشته شدن کدها، در حل مساله و بازنگری(review) روی آنها کمک میکند. معمولا برای دستیابی به بالاترین بازدهی، نقش این دو توسعهدهنده دائما با یکدیگر عوض میشود.
برنامهنویسی دونفره مزایای متعددی با خود به همراه میآورد. با این تکنیک نهتنها شخصی دیگر کدهای شما را بررسی میکند، بلکه با نحوه تفکر دیگران راجع به هر چالش و مسالهای نیز آشنا میشوید. قرار گرفتن در معرض ایدهها و ذهنیتهای تازه هم باعث میشود وقتی به تنهایی کد میزنید، مهارت حل مساله قویتری از خود به نمایش بگذارید.
۸. سوالات درست بپرسید
اگرچه برخی میگویند «چیزی به اسم سوال اشتباه وجود ندارد»، وقتی صحبت از برنامهنویسی باشد، احتمال اینکه سوال خود را به شکلی اشتباه طرح کنید بالا است. وقتی در حال کمک گرفتن از کسی هستید که پسزمینه یا دانشی راجع به چالش کنونی شما ندارد، سوالات «درست» شما باید چنین ویژگیهایی داشته باشند:
- با تشریح مساله، پسزمینهای واضح راجع به آنچه قرار است انجام شود ترسیم کند.
- تمام کارهایی که برای حل مشکل انجام دادهاید را توضیح دهد.
- حاوی بهترین حدس شما راجع به سرمنشا مشکل باشد. به این ترتیب دیگران نهتنها از ذهنیت شما سر در میآورند، بلکه متوجه میشوند که خودتان هم به روشهای مختلف حل مساله فکر کردهاید.
- آنچه اتفاق میافتد را نمایش دهد. برای مثال میتوانید بخشی از کد، پیام خطای دریافتی یا توصیفی از فرایند منتهی به خطا را در اختیار دیگران بگذارید. به این ترتیب طرف مقابل مجبور به بازآفرینی خطا نخواهد بود.
با طرح سوالات صحیح، در وقت خودتان و دیگران صرفهجویی خواهید کرد. توجه داشته باشید که اگر سوالات شما هر یک از موارد بالا را در بر نگیرند، مکالمه دشوار میشود و به تعارض برخواهید خورد. این از مهمترین نکات یادگیری پایتون برای مبتدیان است و باید از همان ابتدا مهارتهای ارتباطی خود را تمرین کنید تا دیگران از کمک کردن به شما لذت ببرند.
به کار بستن آموزهها
اگر از هر توسعهدهندهای بپرسید، به شما خواهد گفت که بهترین روش یادگیری پایتون یا هر زبان برنامهنویسی دیگری، به کار بستن مواردی است که یاد گرفتهاید. بنابراین با توجه به نکات زیر شروع به تمرین کنید.
۹. چیزی بسازید
تمرینهای کوچک متنوعی برای تازهکاران وجود دارد که هم میزان تسلط بر پایتون را بالا میبرند و هم به شکلگیری حافظه عضلانی که پیشتر راجع به آن صحبت کردیم، کمک میکنند. زمانی که درکی جامع از ساختار داده (رشتهها،آرایهها، دیکشنریها و ستها)، برنامهنویسی شی گرا و کلاسها به دست آوردید، نوبت به توسعه میرسد.
در ابتدا، روش توسعه از آنچه توسعه میدهید مهمتر است. بخش اعظمی از دانش شما راجع به پایتون از توسعه نرمافزار و همینطور حل مساله به دست میآید. از جمله پروژههای مناسب برای مبتدیان میشود به موارد زیر اشاره کرد:
- بازی حدس عدد
- اپلیکیشن ساده ماشینحساب
- شبیهساز تاس ریختن
- سرویس اعلان قیمت بیتکوین
۱۰. در پروژههای متنباز مشارکت کنید
زمانی که پروژهها به صورت متنباز یا Open-Source پیش میروند، سورس کد نرمافزار در دسترس عموم قرار میگیرد و هرکسی قادر به مشارکت است. این روزها انبوهی کتابخانه پایتون داریم که پروژههای متنباز گوناگون را در بر میگیرند. علاوه بر این، خیلی از شرکتهای بزرگ تکنولوژی هم پروژههای متنباز منتشر میکنند. این یعنی میتوانید تمام کدهای نوشتهشده از سوی مهندسان این شرکتها را مشاهده و دستکاری کنید.
مشارکت در پروژههای متنباز یکی از بهترین ترفندها و نکات یادگیری پایتون برای مبتدیان است که درسها و تجاربی بینظیر در اختیارتان میگذارد. برای مثال ممکن است بتوانید باگی را در یک نرمافزار برطرف کنید. در این حالت درخواستی به نام «Pull Request» میدهید که در واقع درخواستی برای قرارگیری کدهای برطرفکننده مشکل، در سورسکد است.
بعد از این، مدیران پروژه به بررسی کار مشغول میشوند و اگر لازم بود، پیشنهاداتی به شما خواهند داد. به همین سادگی نهتنها برنامهنویسی پایتون را تمرین میکنید، بلکه مهارتهای ارتباطی خود را با سایر توسعهدهندگان صیقل میدهید.
سخن پایانی
حالا که با بهترین نکات یادگیری پایتون برای مبتدیان آشنا شدهاید، میتوانید آستینها را بالا زده و سفر خود را در جهان پایتون آغاز کنید. خبر خوب اینکه محبوبیت پایتون بیدلیل نبوده و شباهت زیاد به زبان انسانی باعث میشود یادگیری پایتون مثل آب خوردن باشد.
منبع: RealPython