编程已经成为几乎每一个人类所知的行业的重要组成部分,有助于组织和维护大型系统并成为不可替代的一部分。所以越来越多的人开始了他们的旅程。

你可以从 互动平台 或者从 书本 开始学习编 —- 无论哪种,找出一种最合适最容易的来学习。不过,有时,这还不够,我们想要练习一些新的东西。

编程很多都和创造力有关的,你能够想出新的和有趣的想法。但有时,因大量的时间都用来处理相同的问题,使得我们忘记了创造力。我不太确定这是否是编程挑战这样的平台产生的原因,但它们确实有助于你需要思考自己的东西来编程。

我们认为编程挑战的有益之处:

  • 学习新的做事方法
  • 练习一种新的编程语言
  • 找到解决问题的关键点
  • 使大脑敏锐和专注
  • 有趣

在我追求最后的编程挑战时,我收集了几个很好的资源,我相信它将对你独自的编程旅程或者学习和探索计算机科学领域都是很有帮助的。

首先,这是几个编程挑战的网站列表,但因其被多个媒体曝光而被追捧,社区建议多开发几个编程挑战网站供大众浏览体验。谢谢!

Topcoder

你可以赚真正的钱,社区有近百万的开发人员对其支持,所以我很确信在这里能够发现大量的挑战项目。我这么说是因为我相信一些初学者编程爱好者可能会发现topcoder相当困难。

可以参加每日和每周编码挑战,他们都是极其困难的,必须要有非常强的思维能力才能完成。但这是值得的,因为在结束的时候你就可以加到你的简历里了。

HackerEarth

HackerEarth 提供 SaaS 应用程序对参与者的技术和逻辑技能进行自动评估。作为一个开发者聚集和筛选平台,它也可以帮助公司找到优秀人才。

他们常常都有新增挑战,你可以提前几周注册;在正式参与前你可以预先了解和做准备。就像 Topcoder,它也是个高质量的网站,并提供有难度的挑战,这将在你以后的职业生涯中会使用到。

Coderbyte

Coderbyte 是 Kickstarter 资助的项目 (即使它和 Kickstarter 的其他项目存在竞争),主要针对初学者和中级程序员。

Daniel Borowski 在2012年发起,然后逐渐成长到由一些喜欢在空闲时间解决程序问题的程序员组成的社区来管理。

如果有什么不懂的地方你也可以问问题,社区非常的活跃,所以你很可能得到你想要的答案,非常多的人喜欢 Coderbyte,并且我看到都是它的正面评价。

Project Euler

Project Euler可能是世界上最受欢迎的编程挑战网站,从它最初的启动,已经过去的10年,已经累积了几十万的活跃用。每周你都能得到一个新添加的挑战,但是我很确定帮你将花非常多的时间来解决之前的450+的问题。

当然啦,他们也没有那么的困难;其涉及到批判性思维和解决问题,旨在帮助你成长和学习更多关于你使用的语言。这些都是和你的工作有关的,要确保你完全明白你在做什么。

你可以从这里了解到更多关于 Project Euler 的信息: Wikipedia, Reddit, Stack OverflowGoogle Code.

我发现还有它的Andriod客户端. 自取

Daily Programmer

我们将加入我个人最喜爱的项目之一:Reddit 的 Daily Programmer 栏目。如果你想要学习更多编程技能和解决问题的能力,这里将是一个非常精彩的讨论板的一角。我认为根据目前的状况,你每周可以解决三个独立的问题。

更不必说,已经有几百个挑战项目了。你创建的每个提交都可能收到社区成员们的评论,所有你的处理方法将得道多方的意见和回复。

强烈推荐。

Codility Train

你可以预先定义和思索挑战项目,然后用多种编程语言进行提交。他们都是按难度进行排序的,这里有40-50个挑战题目。

每个都有详细说明最终程序应该做什么我还有告诉你的是,每一个都是有时间限制的,所以不能偷懒哦!

SPOJ

Sphere Online Judge是一个由成千上万的编码挑战组成的社区,你可以一整天的泡在上面解决问题,它支持你能想到的大多数编程语言,其背后有个强大的社区,在这个社区论坛里一般都能得道有效的帮助。

CodeChef

Directi 创建 CodeChef 这个挑战之路,可以吸引社区开发人员,其提供一个平台来练习、竞争和改进,它是由大量的问题组成,你也可以浏览其他人解决这些挑战项目的源代码。

CodeEval

如果你想要想雇主和其他开发者展示你的编程技能,你可以加入 CodeEval,你可以在几个不同的地区参与比赛,但主要是构建一个产品/应用,作为回报你将得到金钱奖励。你参与解决的编程挑战项目,可以将其添加到你的简历,从而给你的潜在雇主一个良好的第一印象。

它主要是帮助开发者展示他们自己工作领域的经验,或者让他们看起来像很擅长做这样的工作一样。

HackerRank

我立刻就喜爱上 HackerRank 是缘于它有部分挑战是关于 人工智能 的。这点是非常 Cool的,并且给高级程序员一些把玩的东西。他有很多公司支持,比如 Y Combinator 和 SVAngel 。 绝对漂亮的一群黑客在这里工作。

Talentbuddy

Talentbuddy是一个友好的地方,你可以用愉快的面试方式锻炼你的解决问题的能力。我认为你会发现社会方面的网站有点烦人,但总能学到一些真正给力的课程,甚至有一些MongoDB的内容可供练习–总是很乐意看到高级的挑战!

Codewars

Codewars有相当好的方式来编码挑战,认真的对待他们的艺术品吧,我本想找到合适的词来描述它,但这里有一个Codewars提供的很棒的十分钟介绍视频(https://www.youtube.com/watch?feature=player_embedded&v=ma87XyWKeQc)。

我想你将爱上它,许多社区开发人员已经这样做了。

Rosalid

他是一个更特殊一点的方法,但他是一个极好的方式来解决和了解编程问题。 Rosalid 提供了一些生物信息学方面的编程挑战,你可以按你自己的步调来解决这些问题。

FightCode

你可以编写你自己的机器人,然后用它们挑战社区的其他人。它是一个 “快乐编码” (code-and-play) 这类的平台,但的对于那些只想编程的人或者可能仅仅想要找一些乐子的人都是有用的。试试文档找点感觉。

Outofbrain

一个web应用程序,可以帮助你改善你的代码和提升解决问题的能力,用到了人工智能技术。

编程挑战有助于训练大脑

我想这篇文章的标题有点俗气,但是我们要训练什么呢;如果不是大脑?他们都来自于这里,这一切来自于那里,所以我们不妨试试。我认为这是一个非常坚实的列表,考虑到…

把所有这些放在一起,你就能得到几千个独特的编程挑战,我真怀疑你最多只能完成这里的1%,但它仍然值得一试。

是什么帮助你挑战自己,这其中之一属于自己的最爱吗?可能你用的不在这个列表里,在评论部分与社区的成员分享他们爸!

其他:

  • http://testdome.com
  • http://www.midgr.com
  • http://checkio.org
  • http://www.programmingpraxis.com
  • http://www.codecombat.com

原文:http://codecondo.com/coding-challenges/