در زیر لیستی از وب سایت های محبوبی که در حوزه برنامه نویسی چالش های مختلفی را برای شما فراهم می آورند، آورده شده است، در این مقاله شرح مختصری از هرکدام آمده است.
TopCoder یکی از پلتفرم های اصلی برای برنامه نویسی رقابتی بصورت آنلاین است. این وب سایت لیستی از چالش های برنامه نویسی را ارائه می دهد که می توانید با استفاده از ویرایشگر کدی که در اختیارتان قرار دارد، بطور مستقیم و آنلاین کد ها را تکمیل کنید.
همچنین مسابقات محبوب آنها چند باری در ماه در یک زمان خاص ارائه می شود که امکان رقابت در چالش های کدنویسی را با دیگران فراهم میکند. کاربران برتر رتبه بندی شده در TopCoder برنامه نویسان بسیار خوبی هستند و بطور مرتب در مسابقات برنامه نویسی شرکت می کنند.
وب سایت Coderbyte چالش هایی از برنامه نویسی را برای شما فراهم می کند که می توانید مستقیماً و به صورت آنلاین آنها را با یکی از ۱۰ زبان برنامه نویسی تعیین شده حل کنید (این مثال را ببینید). این چالش ها از آسان ترین سطح (پیدا کردن بزرگترین کلمه در یک رشته) گرفته تا سخت ترین سطح (چاپ حداکثر کاردینال یک نمودار) متغیر است.
این وب سایت همچنین مجموعه ای از آموزش های الگوریتم ، فیلم های مقدماتی و دوره های آماده سازی مصاحبه را ارائه می دهد. بر خلاف HackerRank و سایر وب سایت های مشابه ، در Coderbyte قادر به مشاهده راه حل های ارائه شده توسط دیگر کاربران نیز هستید.
Project Euler مجموعه بزرگی از چالش ها را در حوزه علوم کامپیوتر و ریاضیات ارائه می دهد. این چالش ها معمولاً شامل نوشتن یک برنامه کوچک به منظور کشف یک راه حل برای یک فرمول ریاضی هوشمندانه یا معادله است(برای مثال یافتن تعداد ارقام تمام اعداد قبلی قبل از هر شماره در یک مجموعه). شما نمی توانید به طور مستقیم در این وب سایت در ویرایشگری کدنویسی کنید ، بنابراین باید راه حلی را روی رایانه شخصی خود نوشته و سپس آن را در وب سایت آنها ارائه دهید.
HackerRank چالش هایی را برای حوزه های مختلف مانند الگوریتم ها، ریاضیات، SQL ، برنامه نویسی تابعی، هوش مصنوعی و موارد دیگر فراهم می کند. شما می توانید تمام این چالش ها را بصورت آنلاین حل کنید (این مثال را ببینید).
این وب سایت برای هر چالش بحث و گفتگویی را ارائه می دهند و بیشتر چالش ها با ویراستاری همراه است که غالبا در مورد آن چالش و چگونگی دستیابی به راه حل آن توضیحات بیشتری آورده شده است. در کنار همه این مسائل، در حال حاضر نمی توانید راه حل های کاربران دیگر را در HackerRank مشاهده کنید.
CodeChef یک وب سایت برنامه نویسی رقابتی مستقر در هند است که چالش های فراوانی را ارائه می دهد. می توانید کد های خود را در ویرایشگر آنلاینی که فراهم آمده است، بنویسید و مجموعه ای از چالش ها را که بسته به سطح مهارت شما به دسته های مختلفی تقسیم می شوند، مشاهده کنید (این مثال را ببینید). این وب سایت دارای یک جامعه کدنویسی بزرگ است که در انجمن ها و مسابقات برنامه نویسی شرکت میکنند.
Exercism یک وب سایت چالشی برای کد نویسی است که بیش از ۳۱۰۰ چالش را در ۵۲ زبان برنامه نویسی مختلف ارائه می دهد. بعد از انتخاب زبانی که می خواهید به آن مسلط شوید، میتوانید مسائل و چالش های مرتبط با آن را روی سیستم خود حل کنید (Exercism دارای رابط خط فرمان مخصوص به خود است که می توانید آن را از GitHub دانلود کنید).
با این حال Exercism ، کمی با سایر وب سایتهای چالشی متفاوت است، زیرا بعد از اتمام هر چالش با یک مربی در ارتباط هستید. مربی پاسخهای شما را بصورت آنلاین بررسی می کند و در صورت لزوم به شما در بهبود آنها کمک می کند. پس از تأیید و ارسال پاسخ ها ، چالش های بیشتری نیز به شما ارائه میشود.
Codewars مجموعه بزرگی از چالش های برنامه نویسی را ارائه می دهد که توسط انجمن مربوط به خودش ارسال و ویرایش میشود. می توانید این چالش ها را به صورت مستقیم و آنلاین در ویرایشگر ارائه شده در چندین زبان حل کنید. همچنین می توانید بحث و گفتگویی را برای هر چالش مشاهده کرده و همچنین راه حل های کاربران را ببینید.
LeetCode یک وب سایت محبوب است که لیستی از ۱۹۰ چالش را برای شما فراهم آورده است که با کمک آنها می توانید در مصاحبه های فنی شرکت کنید. میتوان چالش ها را به صورت آنلاین و در یکی از ۹ زبان برنامه نویسی حل کرد. البته شما قادر به مشاهده راه حل های کاربران دیگر نیستید، اما آمار هایی مانند سرعت اجرای کد شما در مقایسه با کد سایر کاربران و ... را دریافت خواهید کرد.
این وب سایت همچنین شامل یک بخش مصاحبه ای Mock است که مخصوصاً برای آمادگی در مصاحبه های شغلی مناسب است، آنها میزبان مسابقات کد نویسی خود هستند و بخشی برای مقالات نیز دارند تا به شما در درک بهتر مشکلات کمک کنند.
SPOJ یک وب سایت محبوب دیگر است که بیش از بیست هزار چالش برنامه نویسی را ارائه می دهد. می توانید کد های خود را در یک ویرایشگر آنلاین ارسال کنید. SPOJ همچنین میزبان مسابقات خود است و زمینه ای را برای کاربران فراهم می کند تا در مورد چالش های کد نویسی بحث کنند. این وب سایت در حال حاضر هیچ راه حل رسمی را مانند بعضی از وب سایت های دیگر ارائه نمی دهند.
CodinGame با وب سایت های دیگر کمی متفاوت است ، زیرا به جای حل کردن چالش های کد نویسی در یک ویرایشگر، در نوشتن کدهای بازی هایی که مستقیماً بصورت آنلاین اجرا میشود، شرکت می کنید. شما می توانید لیستی از بازی های ارائه شده را در اینجا و نمونه ای از آن را در اینجا مشاهده کنید.
اگرچه این وب سایت با وب سایت های ذکر شده در بالا کاملا متفاوت است، اما هنوز هم در بین برنامه نویسانی که در حل چالش های بازی لذت میبرند، محبوب است.
لطفا شکیبا باشید ...