ظرف ۴۰ ساعت یک توسعه دهنده جدید باید بتواند اسکریپت های کاربردی اساسی را در زبان برنامه نویسی پایتون بنویسد. این زمان برای یادگیری پایتون به شرح زیر است:
- ۴ ساعت نصب پایتون و IDE
- ۴ ساعت ایجاد یک اسکریپت “Hello World” و اجرای آن در کنسول IDE
- ۸ ساعت یادگیری متغیرها، انواع داده و ورودی کنسول
- ۸ ساعت یادگیری شرط ها
- ۸ ساعت یادگیری حلقه ها
- ۸ ساعت قرار دادن همه این موارد کنار هم برای نوشتن یک تابع
در اینجا قابلیت های میانی بیشتری وجود دارد که توسعه دهنده باید زمان بیشتری را برای یادگیری شروع به تسلط بر پایتون اختصاص دهد:
- ساختارها و الگوریتم های داده
- برنامه نویسی شی گرا برای حفظ حالت در برنامه
- استفاده از کتابخانه استاندارد پایتون
- ایجاد یک UI با PyQt / Tinker یا یک برنامه وب با Flask
با تمرین عملی مهارت های اساسی، یک توسعه دهنده جدید می تواند مفاهیم اصلی پایتون را که برای انجام کارهای اساسی در یک کار برنامه نویسی سطح ابتدایی مورد نیاز است، در مدت یک ماه بیاموزد.
یادگیری این مورد در پایتون سریع تر از یادگیری این مفاهیم در ++ C یا جاوا است زیرا اجرای مستقیم اسکریپت های پایتون بدون نیاز به کامپایل کد و چون نحو آن مانند انسان است، نوشتن کد را ساده تر می کند.
جزئیات بیشتر در مورد مدت زمان یادگیری پایتون
معمولاً در دوره تحصیلی مهندسی کامپیوتر، در ترم نخست، درس “مقدمهای بر برنامهنویسی” ارائه میشود که مفاهیم اولیه برنامهنویسی را آموزش میدهد. گزینه دیگر، شرکت در دورههای آموزشگاهی برنامهنویسی است که معمولاً شرایط پذیرش سادهتر، نیازمند تعهد زمانی کمتر و با هزینهای متوسط ارائه میشوند.
در این دورهها، آموزش جامع زبان برنامهنویسی پایتون طی 3 تا 4 ماه صورت میگیرد. با بهکارگیری تکنیکهای مناسب یادگیری و رعایت نکاتی که در این مقاله ذکر شده، امکان فراگیری پایتون در نیمی از این زمان نیز وجود دارد.
در این سطح، قابلیت نوشتن بازیهای متنی ساده مانند “دار بازی” یا “حدس عدد”، یا برنامههایی چون “دفترچه آدرس” یا “ماشین حساب” را خواهید داشت. در مرحله بعد، یکی از چالشهای پیش رو، یادگیری ساختارهای داده و الگوریتمها است که چندین ماه زمان میبرد تا به درک کامل آنها دست یابید؛ اما این امر باعث تسهیل رشد و نگهداری برنامهها میشود. علاوه بر این، با فراگیری تکنیکهای بهینهسازی کد، برنامههای شما سریعتر اجرا خواهند شد.
اما برای ساخت برنامههای وب پیچیده در سطح گوگل، فیسبوک و فناوریهای پیشرفته، صرفاً آموختن پایتون کافی نیست. در این مرحله، نیازمند دانش بیشتری در زمینههایی چون طراحی نرمافزارهای توزیعشده، جاوااسکریپت، پایگاههای داده، چارچوبهای یادگیری مانند Python Flask، SQL-Alchemy و BOTO (کلاینت AWS پایتون) برای ایجاد سرویسهای ابری هستید. هر یک از این موارد زمان یادگیری خاص خود را میطلبد؛ اما تسلط بر انواع فناوریها و مهارتها، شما را بیش از پیش به یک توسعهدهنده نرمافزار حرفهای تبدیل میکند.
بنابراین، برای پاسخ به این پرسش که “یادگیری برنامهنویسی پایتون چه مدت زمانی میبرد”، باید عوامل متعددی را در نظر گرفت. این احتمال وجود دارد که بسته به اهداف شما، پاسخها متفاوت باشد؛ از جمله اینکه آیا قصد دارید برنامهنویسی در سطح مقدماتی را فرا گیرید، به عنوان فریلنسر کار کنید، به یک متخصص پایتون و توسعه نرمافزار تبدیل شوید، یا صرفاً میخواهید مهارتهای خود را ارتقا دهید.
عوامل مدت زمان یادگیری پایتون
عوامل اصلی مدت زمان یادگیری برنامه نویسی پایتون عبارتند از:
هدف یادگیری
هدفی که یک فرد برای فراگیری زبان برنامهنویسی پایتون دنبال میکند، میتواند عامل تعیینکنندهای در موفقیت وی باشد. آیا قصد دارید پایتون را در حدی بیاموزید که بتوانید برنامههای ابتدایی را درک و توسعه دهید؟ یا اینکه هدف شما فعالیت در یک حوزه تخصصی و عمیقتر است که امکان کسب درآمد از آن را خواهید داشت؟ پاسخ شما میتواند دامنه گستردهای داشته باشد.
داشتن آگاهی از دلیل این انتخاب، به شما این امکان را میدهد که با تعیین هدفی روشن و تمرکز بر آن، زمان لازم برای دستیابی به هر هدفی را کاهش دهید. در کتاب معروف “اثر مرکب”، دارن هاردی این مفهوم را با داستان چوب موازنه تقویت کرده است که تأثیر قابل توجهی بر ما گذاشته است. وی میگوید: هر کسی میتواند از یک چوب موازنه که در ارتفاع کمی از زمین قرار دارد، عبور کند.
اما وقتی این چوب را در ارتفاع 50 فوتی بین دو ساختمان قرار دهیم و از آن برای گذر بخواهیم، اکثر افراد به دلیل خطراتی که در این چالش وجود دارد، یا قادر به انجام آن نخواهند بود یا اصلاً انگیزهای برای آزمون آن نخواهند داشت. اما اگر در یک سمت ساختمان آتشسوزی رخ داده باشد و در سمت دیگر یکی از اعضای خانواده زخمی شده باشد، در این صورت انگیزه قویتری برای عبور از این چوب موازنه خواهید داشت.
بهترین است اهداف خود را همچون چوب موازنهای در نظر بگیرید که باید از آن عبور کنید، و دلیل وجودی آن را در سمت دیگر آن قرار دهید. حتی اگر از این چوب موازنه سقوط کنید، این اتفاق به اندازهای شدید نخواهد بود که از ارتفاع 50 فوت به پایین بیفتید. نگران نباشید، دوباره بر اهداف خود متمرکز شوید و برای دستیابی به آنها تلاش کنید.
سرعت یادگیری
به طور کلی، سرعت یادگیری افراد متفاوت است و درک ما از دانش جدید نیز متفاوت میباشد. زمینه یادگیری نقش مهمی در سرعت یادگیری دارد؛ برخی افراد در برخی زمینهها سریع یاد میگیرند در حالی که در زمینههای دیگر کند هستند. این مسئله یکی از عوامل مهمی است که باید در نظر گرفته شود زیرا تلاش برای مقایسه خود با یک یادگیرنده سریع، ممکن است باعث ناامیدی شود و یادگیری را با مشکل مواجه کند.
مدت زمانی که برای تسلط بر پایتون توسط هر یک از این دستههای یادگیرنده صرف میشود، ممکن است متفاوت باشد. صادقانه بودن نسبت به سرعت یادگیری خود به شما کمک میکند تا اهداف قابل دستیابی و واقعیتری را تعیین کنید و از مقایسه با دیگران دوری کنید.
از مقایسه خود با دیگران پرهیز کرده و سعی کنید خود را در برابر معیارهای قابل اندازهگیری که در گذشته به دست آوردهاید، بهبود بخشید. سرعت دستیابی به اهداف شخصی یا تجاوز از آنها سرعت یادگیری را تعیین میکند و میتواند با تمرین و موفقیتهای شخصی تسریع شود. هر هفته اهداف خود را تعیین کرده و پیشرفت خود را در آن زمینه بررسی کنید تا سرعت و تمرکز خود را ارزیابی کنید. آیا دلیل نرسیدن به اهدافتان حواس پرتی بود؟ در این صورت، روشهایی برای کنارگذاشتن حواس پرتی و اولویتبندی روند یادگیری خود را بیابید.
حتی اگر سرعت یادگیری کمتری دارید، در بسیاری از مواقع مانند یک قطار باری است که مدتی طول میکشد تا حرکت کند، اما با ادامه تلاش نمیتوانید جلوی آن را بگیرید. مهمترین چیز ذهنیت قوی “فکر میکنم میتوانم” است.
تعهد به یادگیری
برنامه نویسی نیاز به زمان، توجه و ثبات دارد. همه این ها شاخه های تعهد است. مقدار زمان و کیفیت توجه به یادگیری پایتون نیز تا حدود زیادی حکایت از تسلط بر عمل دارد. این واقعیت نه تنها در مورد پایتون بلکه در سایر زبان های برنامه نویسی نیز صادق است. نکته ای در مورد برنامه نویسی این است که، بعد از چند روز وقفه در فرایند یادگیری، نیاز به مرور کامل دانش قبلی حس می شود. هنر کد نویسی به راحتی از حافظه انسان فرار می کند. بنابراین، تمرین مداوم مهم است.
بیشتر مشکلاتی که در عدم تعهد برای یادگیری بوجود می آیند می توانند ناشی از ترس از عدم رسیدن به اهداف بزرگ یا نبود دلیل کافی برای رسیدن به هدف باشد که منجر به عدم اولویت مطالعه یا کد نویسی شخصی می شود.
سطح پیشین برنامه نویسی
این عامل تعیین کننده مهم دیگری است که زمان لازم برای یادگیری پایتون را تعیین می کند. حتی اگر قبل از شروع یادگیری پایتون نیازی به داشتن سابقه برنامه نویسی نباشد، قطعاً نمی توان در همان چارچوب زمانی کسی که قبلاً دانش خوبی در مورد زبان برنامه نویسی دیگری مانند جاوا داشته است، تسلط پیدا کرد. جاوا اسکریپت، HTML ، CSS و غیره را یک تازه کار در برنامه نویسی ممکن است به مدت سه هفته یاد بگیرد، چیزی که شخصی با تسلط بر دانش قبلی در مدت یک هفته یاد می گیرد. بنابراین، پاسخی که در مورد مقوله ای که به آن تعلق دارید می دهید، شما را به پاسخ دادن به سوال اصلی نزدیک می کند.
اگر در برنامه نویسی تازه کار هستید، می توانید با غرق شدن در برنامه برنامه نویسی، مدت زمان لازم برای یادگیری برنامه را به میزان قابل توجهی کاهش دهید. به ۱۰۰ روز چالش کد در توییتر بپیوندید، در گروه های برنامه نویسی مانند reddit’s r / learnprogramming فعال باشید، چالش های کد نویسی را در وب سایت هایی مانند leetcode انجام دهید و فیلم های کانال های برنامه نویسی را تماشا کنید.
مطالب یادگیری موجود
یکی از عوامل مهم زمان یادگیری پایتون، منابع موجود است. در حال حاضر منابع یادگیری متنوعی وجود دارد، به خصوص در دنیای امروزی که اینترنت به یک دهکده جهانی تبدیل شده است. اینترنت پر از نرمافزارهای کتابخانه، ویدیوها، و وبسایتهای آموزشی در زمینه برنامهنویسی است، که باعث میشود به دست آوردن اطلاعات بیش از حد آسان باشد.
انتخاب منابعی که از بین آنها دانش را به دست میآورید، تعیینکننده زمان یادگیری است. فردی که فقط یک کتاب تصادفی را مطالعه میکند یا ویدیوهای آموزشی را تماشا میکند و با مواد درگیر نمیشود، به همان سرعتی که وقت میگذارد و بهترین توصیهها را به دست میآورد، یاد نمیگیرد.
نکته اصلی این است که بر اساس گفتههای مدیرعامل گوگل، متوسط این مدیرعامل حدود ۶۰ کتاب در سال یا کمی بیشتر از یک کتاب در ماه مطالعه میکند. برای دستیابی به این هدف، نیاز به تمرکز بالا، سرعت خواندن و مهارت در مقابله با حواسپرتیهایی مانند نتفلیکس و بازیهای ویدیویی است. اگر جدی در راستای کدنویسی و دستیابی به موقعیت شغلی مطلوب هستید، از تمام منابع یادگیری که در دسترس دارید بهره ببرید.
هنگام مطالعه از طریق کتاب یا آموزش برنامهنویسی، این کار را در محیطی آرام و ساکت انجام دهید تا تمرکز خود را حفظ کنید و از مزاحمتهای احتمالی مانند تلفن همراه، فیسبوک و توییتر دوری کنید.
راهنمای کوتاه یادگیری سریع پایتون
اگر شخصی بتواند طبق این لیست پیش برود و روی آن تمرکز کند، می تواند طی دو تا چهار هفته بسیاری از توابع اصلی پایتون را بیاموزد.
۱- نصب و تنظیم پایتون
۲- نوشتن اسکریپت “Hello World” برای یادگیری نحوه اجرای برنامه و دیدن خروجی
۳- این کار را برای برنامه “حدس عدد” برای یادگیری نحوه ذخیره سازی ورودی در یک متغیر، ایجاد یک عدد تصادفی با وارد کردن تابع تصادفی از کتابخانه استاندارد پایتون و “if … else” ساده، گسترش دهید.
۴- یک کتاب آدرس ایجاد کنید که مخاطبین را در یک فایل بخواند و بنویسد. این کار به شما امکان می دهد با کار با کلاس “Person” اصول شی گرایی را یاد بگیرید.
۵- با استفاده از فریم ورک های TKinter یا PyQT، یک برنامه ساده ماشین حساب ایجاد کنید که دارای رابط کاربری گرافیکی باشد. از این طریق خواهید آموخت که چگونه برنامه های تعاملی جذاب بصری، کار با کتابخانه ها و تعامل با اجزای کاربر گرافیکی مانند دکمه هایی را که هنگام کلیک روی آن ها رویدادی رخ می دهد، ایجاد کنید.
برای گسترش این موضوع و آمادگی شغلی، ساختارهای اصلی داده ها و الگوریتم ها را بیاموزید و یک ماه دیگر را به تمرین کد نویسی در leetcode یا hacker rank اختصاص دهید.
نتیجه گیری
بنابراین، دوباره به این سوال اساسی میرسیم که چقدر طول میکشد تا پایتون را یاد بگیریم؟ با توجه به همه نکات گفته شده، این مدت زمان بستگی به یادگیرنده و اهداف او دارد. عوامل مطرح شده در بالا هنوز هم به توسعه دهنده پایتون و میزان فشاری که به خود وارد میکند بستگی دارد؛ یعنی چقدر با تمرکز، اولویتبندی و تمرین به دنبال رسیدن به اهداف برنامهنویسی خود است.
با این حال، در اینجا یک پیشنهاد وجود دارد که میتواند به هر کسی که این مقاله را میخواند کمک کند تا به پاسخی دقیقتر برسد: اگر هر روز ۳ ساعت برای یادگیری و تمرین پایتون وقت بگذارید، باید در عرض ۳ ماه اصول اولیه را فرا بگیرید، هرچند که شاید برای شروع کار کافی نباشد.
اگر میخواهید در یک حوزه خاص تخصص پیدا کنید و دانش کافی از پایتون برای کار مورد نظر را کسب کنید، این فرآیند ممکن است ۴ تا ۶ ماه یا حتی بیشتر طول بکشد، همانطور که در عوامل ذکر شده در بالا توضیح داده شد. اما اگر میتوانید تمام حواسپرتیها را کنار بگذارید و روی یک راهنمای کوتاه برای یادگیری سریع پایتون تمرکز کنید، یک زبانآموز معمولی حتی میتواند در عرض ۴ تا ۶ هفته پایتون را یاد بگیرد.