برنامه نویسی، هنگامی که به خود باور داشته باشید و بدانید چه کاری انجام می دهید کاری مفرح است، اما رسیدن به چنین نقطه ای می تواند تجربه ای طاقت فرسا باشد. به همین دلیل است که شما باید بین کلاس و سخنرانی ها و استفاده از آموزش های کامپیوتری، وقتی را به بازی ها و رقابت های برنامه نویسی اختصاص دهید. این نه تنها مثل یک زنگ تفریح لذت بخش خواهد بود، بلکه باعث می شود سریع تر یاد بگیرید و به لطف تمرین ها و تجربه های عملی، موارد بیشتری در خاطرتان باقی بماند. در ادامه با معرفی ده بازی برنامه نویسی برتر با شما هستیم.
1- Robocode
روبوکد یک بازی برنامه نویسی پیچیده است که در آن شما برای تانک های ربات که علیه یکدیگر می جنگند کد می نویسید. کار شما نوشتن هوش مصنوعی برای راندن ربات هایتان و موفقیت آن ها با استفاده از زبان های واقعی چون جاوا، اسکالا، سی شارپ و … است. برای شروع، مقدمات و آموزش های روبوکد را ببینید.
بسته نصب شونده Robocode همراه با یک محیط توسعه، ویرایشگر ربات و کامپایلر جاوا ارائه می شود. شما در واقع کد واقعی می نویسید! با اینکه روبوکد در سال 2000 منتشر شده اما همچنان مرتبا بروزرسانی و نگهداری می شود، آن هم به لطف این حقیقت که این بازی متن باز و فوق العاده اعتیاد آور می باشد.
2- Codingame
Codingame یک اپلیکیشن شبه بازی تحت وب است که شما در آن معماها و چالش ها را با نوشتن کد واقعی حل می کنید. بالغ بر 25 زبان برنامه نویسی در آن پشتیبانی می شود که از جمله آن ها جاوا، سی شارپ، پایتون، جاوا اسکریپت، لوآ، گو، راست و … می باشند. هر معما/چالش یک تم دارد (بعنوان نمونه برجک هایی که باید نیروهای هوایی دشمن را در صورت نزدیک شدن، گلوله باران نمایند)، که موجب لذت بخش شدن آن می شود.
3- Codecombat
Codecombat یک اپلیکیشن شبه بازی تحت وب دیگر است که دارای معماها و چالش هایی است که تنها با نوشتن کد حل می شوند. درحالی که Codingame جنبه سرگرم کنندگی بیشتری دارد، Codecombat با ویرایشClassroom Edition خود، که معلمان می توانند با آن به شاگردان خود کدنویسی یاد بدهند بیشتر به سمت آموزش تمایل دارد. در حال حاضر سه دوره آموزشی موجود است: علوم کامپیوتری، توسعه وب و توسعه بازی.
4- Codewars
Codewars بیشتر به روشی «به صورت بازی درآورده شده» برای تمرین کدنویسی و حل چالش های الگوریتمی شباهت دارد تا اینکه یک بازی معمولی باشد. شما برای اتمام معماها امتیاز می گیرید و هر چه راه حل شما بهتر باشد میزان امتیاز دریافتی شما بیشتر خواهد بود. Codewars به شما اجازه می دهد راه حل هایی که دیگران ارائه کرده اند را مشاهده نمایید و از آن ها یاد بگیرید. این می تواند یکی از بهترین روش ها برای یادگیری زبان برنامه نویسی جدید و اصطلاحات آن باشد.
5- Codehunt
Codehunt با استفاده از زبان جاوا و سی شارپ قابل انجام است. این بازی طوری طراحی شده که به شما مقدمات هر زبانی که انتخاب کنید را آموزش دهد. بازی با بخش تمرین شروع می شود و در ادامه به بخش هایی چون حلقه ها و رشته ها رسیده و با رقابت هایی سطح متوسط همچون مرتب سازی، رمزنگاری ها و معماها پایان می یابد. مساله جالب درباره Codehunt اینست که به شما نمی گوید هر رقابت را چگونه باید ببرید و این سرگرم کننده است.
6- Vim Adventures
Vim Adventures یک شبه بازی آموزشی سرگرم کننده برای آموزش استفاده از Vim، یک ویرایشگر متن عجیب ولی فوق العاده قدرتمند که بسیاری از برنامه نویسان حرفه ای عاشق استفاده از آن هستند می باشد. ویرایشگر متن ویم چیزهای زیادی برای یادگیری دارد که به همین دلیل است که چنین برنامه های آموزشی ایجاد شده اند. بنابراین در حالیکه ویم به خودی خود زبان برنامه نویسی نیست، اما یادگیری آن می تواند به شما کمک کند کدنویس بهتری شوید و به همین خاطر است که این بازی هم در نوشته حاضر آورده شده است.
7- TIS-100
«این بازی زبان برنامه نویسی اسمبلی است که هیچوقت حتی درخواستش را هم نکرده بودید!»، این را واقعا راست گفته اند. TIS-100 یک بازی ویدئویی است که نظیر ندارد و شما را مجبور می کند تا نسخه ای مشابه با کدنویسی سطح پایین اسمبلی را برای حل معماها یاد گرفته و بکار ببرید. این بازی شوخی ندارد و واقعا دشوار است، همچنین پایانی باز دارد. بازی را می توان بارها از اول تا انتها دوباره بازی کرد و لذت برد، البته تا جایی که شما آن قدر سرخورده و سردرگم نشوید که آن را در یک عصبانیت آنی حذف کنید.
8- Shenzhen I/O
Shenzhen I/O از همان استودیویی می آید که پشت TIS-100 هم قرار دارد، یک بازی معمایی که شما باید در آن مدارهای ساده شده بسازید و کدهای اسمبلی ساده شده بنویسید که برروی مدارهای مذکور اجرا شوند. از میان این دو بازی، شنژن آی/اُ ساده تر و لذت بخش تر و نیز به طور رضایت بخشی پیچیده می باشد.
9- Human Resource Machine
در Human Resource Machine، شما به عنوان یک کارمند اداره باید با ترکیب دستورالعمل های گوناگون با هم، وظایف خود را انجام دهید. از یک جهت، این بازی تماما در حل معماها با استفاده از برنامه نویسی مجازی خلاصه می شود، حتی تا مفاهیمی مانند گردش منطقی و مدیریت حافظه نیز پیش می رود اما با روشی که راحت قابل هضم باشد و آن روش استفاده از تم اداره است. این یک بازی بزرگ برای آزمایش مغز برنامه نویس شماست.
10- Screeps
Screeps (که کوتاه شده scripted creepsمی باشد) یک بازی بازی برخط چندنفره گسترده استراتژیک می باشد که شما در آن از کدنویسی جاواساکریپ برای تعیین رفتار موجودات درون بازی و ساخت یک امپراتوری برای خودتان استفاده می کنید. بازی بطور ابتدایی دارای یک سرور خصوصی می باشد که می توانید در آن جا به تنهایی بازی کنید، به علاوه اینکه 30 روز دسترسی کامل به سرور رسمی خواهید داشت. بعد از آن، شما می توانید با یک ظرفیت محدود به بازی در سرور رسمی ادامه دهید، که البته این محدودیت با پرداخت حق اشتراک ماهانه قابل رفع است.
راه های دیگر برای بهبود مهارت های کدنویسی
اگر همچنان دنبال راه های بیشتری برای بهبود مهارت های برنامه نویسی خود هستید، اکیدا توصیه می شود با یکی از این ایده های پروژه برنامه نویسی میزان دانسته های خود را محک بزنید و نیز گوش دادن به این پادکست ها که مخصوص کدنویس ها و توسعه دهندگان است نیز می تواند سودبخش باشد.
هرچند، اگر بعد از همه این ها همچنان با مشکل روبرو هستید و نمی تواند پایه های برنامه نویسی را درک کنید، شاید بهتر باشد به عقب برگشته و بررسی کنید که آیا برنامه نویسی واقعا برای شما مناسب است یا نه.