در این مقاله می خواهیم در مورد اهمیت تمرین برنامه نویسی یاد بگیریم. از ورزش گرفته تا درس های مدرسه، از موسیقی تا هنر های دیگر و …، مهارت های شما فقط با انجام دادن چیزهایی که یاد گرفته اید در عمل و اشتباه کردن و درس گرفتن از اشتباهات است که قوی و قوی تر می شود.
در مورد برنامه نویسی نیز داستان همین است. خیلی ها فکر می کنند خلاقیتی که مثلاً در نقاشی کردن یک چهره نیاز است در برنامه نویسی دیده نمی شود، در حالیکه اگر از برنامه نویسان با تجربه بپرسید حتماً به شما می گویند که خلاقیت یکی از موارد ضروری در کد نویسی و خلق نرم افزار های مختلف است. این حقیقت اکنون با ظهور کلاس های آنلاین برنامه نویسی که محدوده ی گسترده ای از زبان های برنامه نویسی گوناگونی را آموزش می دهند و همچنین با پیدایش روز به روز اپلیکیشن ها و برنامه های جذاب تر خودش را بیشتر نشان می دهد و تفاوت برنامه نویسانی که فقط یک زبان را آموزش دیده اند با برنامه نویسانی که آن را در عمل تمرین کرده اند روز به روز بیشتر مشخص می شود.
البته تمرین کردن فقط به معنی چند خط کد پشت سر هم نوشتن یا نگاه کردن به کدی که دیگران نوشته اند و بازنویسی آن نیست. اهمیت نوع تمرینی که باید انجام شود کمتر از اهمیت خود موضوع تمرین کردن نیست و صرف انجام یک کدنویسی تمرین خوب محسوب نمی شود.
اگر نمی دانید باید از کجا شروع کنید، این راهنما می تواند کمک کند! بیایید نگاهی به برخی از مزایای واقعی و قابل اندازه گیری تمرین کد و اینکه چگونه می تواند حرفه برنامه نویسی شما را بیشتر کند و همچنین برخی از بهترین روش ها برای انجام این کار را خودتان بررسی کنیم.
آیا تمرین با کد واقعاً تفاوت زیادی دارد؟
اول ، ما با پاسخ آسان و کوتاه شروع خواهیم کرد – بله ، کاملاً درست است. برخلاف برخی از رشته ها ، برنامه نویسی شامل تسلط بر زبان های مختلف (هر یک با قوانین منحصر به فرد ، مزایا ، نقاط ضعف و محدودیت های خود بسته به موارد استفاده شما) و رفع نیازهای رو به رشد توسعه است. در حالی که ابزارها یا روش های طراحی و نقاشی برای هر مبتدی تا حد زیادی یکسان باقی مانده است ، هر ساله با ظهور زبان های جدید ، بهترین برنامه ها و نیازهای برنامه نویسی تغییر می کند.
از آنجا که چنین است ، تمرین با ابزارها و زبانهای جدید حتی در باتجربه ترین برنامه نویس حرفه ای نیز بخشی اساسی است. فرصت های شغلی به آن بستگی دارد و توانایی ساخت “چیز جدید” بعدی نیز به همین امر بستگی دارد. با این حال ، به عنوان برنامه نویسان ، می دانیم که در واقع دیدن نتایج قابل اندازه گیری (مانند دیدن عملکرد برنامه خود همانطور که قرار است انجام شود) اندازه گیری واقعی این است که آیا چیزی ایده خوبی است. خوشبختانه ، داده های قابل توجهی برای حمایت از تأثیرات مثبتی که تمرین می تواند در ایجاد مجموعه برنامه نویسی شما داشته باشد ، وجود دارد. چندتایی این جاست:
شاید مشهورترین مدافع تمرین برای داشتن كلید در بالاترین بازده از مالكوم گلادول باشد ، مشهور به سلسله كتابهایی مانند Outlier كه سعی در استفاده از اقتصاد و جامعه شناسی برای توضیح روند جامعه دارند. در Outlier ها ، گلدول به طور مشهوری نتیجه گرفت که تمرین مهارت خاصی به مدت 20 ساعت در هفته و به مدت 10 سال رمز موفقیت در هر زمینه خاص است. وی برای تأیید نظریه خود با استناد به مراجع متعدد در زمینه های مختلف از این نتیجه گیری حمایت كرد.
یک محقق برجسته در مجریان خبره ، آندرس اریکسون از دانشگاه ایالتی فلوریدا ، پس از سالها تحقیق در مورد استادان در زمینه های مختلف ، به این نتیجه رسید که آنچه مجریان برتر را از بقیه جدا می کند ، مقدار زمان صرف شده در کاری است که وی آن را عملی عمدی می نامد. اریکسون با تحقیق خود مفاهیم “قدرت مغز” و سرنوشت را به چالش کشید ، درعوض معتقد بود که “تمرین صحیح در مدت زمان کافی منجر به پیشرفت می شود. هیچ چیز دیگر.” بسیاری از وزنه های سنگین در برنامه نویسی و آموزش برنامه نویسی ، اریکسون را در معاهدات خود برای برنامه نویسان ذکر کرده اند تا تمرین را در آموزش کدگذاری خود بگنجانند.
به همین ترتیب ، بسیاری از برنامه نویسان مزایای تمرین کد کاتا را توصیف می کنند – مجموعه ای از “مراحل” یا “حرکات” رقص آمیز که رویکرد هنرمندان رزمی را برای تسلط بر فرم خود تقلید می کنند. برنامه نویسان مشهوری مانند استیو یگ و دیو توماس (در میان بسیاری دیگر) از این روش منظم برای یادگیری استفاده می كنند ، و برنامه نویسان را تشویق می كنند كه از كلیشه های برنامه نویسان آشفته و خودجوش شانه خالی كنند تا بر مهارت شما واقعاً مسلط شوند. وقتی استادان چیزی را به شما پیشنهاد می دهند ، همیشه گوش کنید!
شرکت ها و نشریات تجاری نیز علاقه مندان به مدل “تمرین باعث می شود کامل” برای یادگیری کد باشد. مقالاتی از انتشارات پیشرو رسانه های برنامه نویسی که برنامه نویسان را به تمرین در هر مرحله ترغیب می کند ، کم ندارد.
برخی از موفق ترین دانش آموزان در بکندباز نتیجه پیشرفت خود را در استفاده از روش های منظم مانند تعیین اهداف یادگیری روزانه و تمرین برای بهبود مهارت های رمزگذاری دیده اند. به عنوان مثال ، کاربران بکندباز که اهداف یادگیری روزانه را تعیین می کنند ، بیشترین میزان اتمام درس را دارند – بیش از 92٪! به همین ترتیب ، آن دسته از کاربران بکندباز که از فرصت های مختلف اضافی غیر از آموزش استفاده می کنند ، به طور متوسط دو برابر تعداد گواهینامه های پایان دوره نیز کسب می کنند.
در واقع شما کد نویسی را چگونه تمرین می کنید؟
به عنوان ترکیبی از چندین فاکتور اصلی ، به دنبال آموزش در زمینه کدگذاری باشید: یک برنامه خوب دوره علوم برنامه نویسی یا برنامه نویسی ، انواع روش ها و تکنیک ها برای داشتن تجربه عملی و شانس استفاده از مهارت های رمزگذاری خود در محیط های عملی ، و شبکه ای موثر برای احاطه کردن خود با تخصص ارزشمند.
در اینجا چند روش تمرین آسان برای جفت شدن با آموزشها و کلاسهای کدگذاری انتخاب شده آورده شده است:
لیستی از برنامه نویسان منفرد یا پایگاه های کد ویژه ای را که تحسین می کنید ایجاد کنید. سپس ، آنها را مرور کرده و مشخص کنید که چه چیزی باعث برجسته شدن هر یک از شما می شود – از روش ها و رویکردهای برنامه نویسان منفرد ، تا مواردی که به ویژه در کدی که دوست دارید خوب است. انجام این کار می تواند به شما کمک کند لیستی قابل اجرا از اهداف برای هدایت تمرین خود ایجاد کنید.
هر روز نیم ساعت یا چند بار تنظیم شده کد شخص دیگری را بخوانید. با این حال ، فقط کد خوب را انتخاب نکنید – بین مرور کد عالی و کد بد جایگزین شوید ، زیرا یادگیری تفاوت می تواند برای تمرین شما مفید باشد. در صورت امکان ، با توسعه دهندگان دیگر ارتباط برقرار کنید و از آنها بخواهید که همان کد را بخوانند و یادداشت ها را با یکدیگر مقایسه کنند.
لیستی از ابزارهای برنامه نویسی مورد علاقه خود را تهیه کنید و اولویت آنها را بر اساس اهمیت آنها برای برنامه نویسی خود تعیین کنید. برای جستجوی اسناد یکی از ابزارهای لیست خود یک ساعت وقت صرف کنید. در حین انجام این کار ، ویژگی جدیدی از ابزاری را که از آن آگاه نبوده اید یا هنوز امتحان نکرده اید ، شناسایی کرده و امتحان کنید!
آیا می خواهید درباره آنچه برنامه نویسان و شرکت های نرم افزاری باتجربه در استخدام خود می خواهند بیشتر بدانید؟ برای دیدن انواع سوالات و توضیحات مورد نیاز ، به شبکه خود مراجعه کنید تا ببینید آیا یک همکار باتجربه به شما اجازه می دهد از طریق صفحه کد فنی به آنها گوش دهید. این یک روش عالی دیگر برای کمک به شما در تعیین اهداف یادگیری برای خود و هدایت دوره های برنامه نویسی خودتان است.
حتی بهتر ، اگر شما با یک برنامه نویس با تجربه دوست یا همکار هستید ، از آنها بپرسید آیا آنها به شما اجازه می دهند با آنها “مصاحبه مسخره” کنید. در مورد ابزارها یا روش هایی که می خواهید بیشتر درباره آنها بیاموزید سوال کنید ، و ضمن توضیح پاسخ های آنها ، گوش دهید و یادداشت کنید.
با یک دوست کار کنید و به نوبت سوالات تمرینی بپرسید. یک روش ممکن است هفته های متناوب باشد ، یکی از شما یک هفته چالش ها را برطرف می کند و دیگری روش دیگر. مدت کوتاهی را به کار بر روی مشکل اختصاص دهید و سپس درمورد روند و مبارزات خود با هم بحث کنید. دو مغز بهتر از یک مغز است!
از زمین های بازی با کد فراوان و سایر سایت های برنامه نویسی که در سراسر اینترنت وجود دارند ، بهره ببرید. زمین های بازی این امکان را برای شما فراهم می کند که مهارت های آموخته شده در تحصیلات خود را بر روی کد زنده واقعی به کار گیرید و این فرصت را ببینید که با چه چالش های مشترکی روبرو هستید.
برای افزایش سفر کدگذاری خود ، که فرصتهای عملی نامحدودی را باز می کند ، ارتقا به اشتراک بکندباز را در نظر بگیرید.
برای مشاهده لیست تمرین های برنامه نویسی اینجا کلیک کنید.
دیدگاهها