코딩을 배울 때 기술을 향상시키는 가장 좋은 방법은 코딩 문제를 직접 해결해 보는 것이다. 다양한 유형의 문제와 퍼즐을 푸는 것은 더 나은 문제 해결 방법을 알려주고, 프로그래밍 언어의 복잡성을 배울 수 있다. 나아가 면접을 준비하고 새로운 알고리즘을 배우는 데에도 도움이 된다.
직접 코딩 문제를 풀면서 코딩 실력을 향상시키고 싶다면, 미국 코딩 교육 비영리 조직인 ‘프리코드캠프’(freeCodeCamp)가 소개한 가장 인기 있는 ‘코딩 챌린지 웹사이트 TOP 10’을 방문해 보자. 이번에는 프리코드캠프 선정 ‘코딩 챌린지 웹사이트 TOP 10’ 중 6~10위까지 소개한다.

6. 엑서시즘(Exercism)
엑서시즘은 52개의 다른 프로그래밍 언어에 걸쳐 3,100개 이상의 문제를 제공하는 코딩 챌린지 웹사이트다. 마스터하고 싶은 언어를 선택한 후 컴퓨터에서 바로 코딩 문제를 해결할 수 있다. 각 챌린지를 완료한 후 멘토와 함께 작업한다는 점에서 다른 챌린지 웹사이트와 조금 다르다. 멘토는 온라인에서 답변을 검토하고 필요한 경우 개선할 수 있도록 도와준다. 답변이 승인되고 제출되면 더 많은 과제에 도전할 수 있다.

7. 코드워(Codewars)
코드워는 자체 커뮤니티에서 제출하고 편집한 방대한 코딩 과제 모음을 제공한다. 여러 언어 중 하나로 편집기에서 온라인으로 직접 문제를 해결할 수 있다. 각 과제와 사용자 솔루션에 대한 토론도 볼 수 있다.

8. 리트코드(LeetCode)
리트코드는 기술 면접을 준비하는 데 도움이 되는 190개 이상의 도전 과제 목록을 제공하는 인기 있는 온라인 심사위원 시스템이다. 9가지 프로그래밍 언어 중 하나로 온라인에서 직접 문제를 해결할 수 있다. 다른 사용자의 솔루션을 볼 수는 없지만 다른 사용자의 코드와 비교할 때 코드가 실행된 속도와 같은 자체 솔루션에 대한 통계가 제공된다. 또한 취업 면접 준비를 위한 모의 면접 섹션이 있으며, 자체 코딩 경연 대회를 주최한다. 특정 문제를 더 잘 이해하는 데 도움이 되는 기사 섹션도 있다.

9. 스포제이(SPOJ)
31만5,000명 이상의 등록자와 2만개 이상의 코딩 문제를 제공하는 온라인 심사 시스템이다. 온라인 편집기에서 코드를 제출할 수 있다. 스포제이는 또한 자체 콘테스트를 주최하며 사용자가 코딩 문제에 대해 토론할 수 있는 공간을 제공한다. 하지만 현재 다른 웹사이트처럼 공식적인 솔루션이나 사설을 제공하진 않는다.
10. 코딩게임(CodinGame)
코딩게임은 편집기에서 단순히 코딩 문제를 해결하는 대신 온라인에서 직접 플레이하는 게임의 코드 작성에 실제로 참여할 수 있다. 현재 제공되는 게임 목록과 하나의 예를 볼 수 있다. 이 게임에는 문제 설명, 테스트 사례 및 20개 이상의 프로그래밍 언어 중 하나로 코드를 작성할 수 있는 편집기가 함께 제공된다.
[저작권자ⓒ CWN(CHANGE WITH NEWS). 무단전재-재배포 금지]