http://codekata.pragprog.com/2007/01/code_kata_backg.html#more

背景

你如何成为一个伟大的音乐家?它有助于知道理论,了解仪器的机制。它有助于有才华。但最终,伟大来源于实践,运用理论一遍又一遍,使用反馈每次都变得更好。

你如何成为一名全明星运动的人吗?显然,健身和人才帮助。但是,伟大的运动员,每天花几个小时,练习。

但在软件行业,我们采取培训,在理论和开发商把他们直接到深底,工作的一个项目。这就像服用了一批适合孩子们,告诉他们,他们有四个季度击败红人队(嘿,我们通过管理目标,对吧? ) 。在我们的软件上做的工作我们的执业,这就是为什么我们做的工作失误。我们需要找到从行业分割的实践方式。我们需要练习。

CodeKata :
这一切是怎么开始的说明
MoreKata :
有时候, “卡塔”是不太合适的词;空手道使用其他技术来教了。
卡塔

是什么让一个很好的练习?你需要时间不中断,你想尝试一个简单的事情。你需要,因为它需要尝试,因为很多次,很舒服犯错误。您需要每次都去寻找反馈,这样你就可以改进。需要有没有压力:这就是为什么它是很难在一个项目的环境来练习。它有助于保持它的乐趣:让小步前进时,你可以。最后,你会认识一个很好的练习,因为你会出来它知道更多的时候比你走了进去的

卡塔代码是企图把实践这个元素的软件开发。一对打比赛是练习空手道,你重复的形式很多,很多次,使得每个小的改进。后面的代码对打比赛的目的是相似的。每个人都是一个短的锻炼(可能是30分钟到一个小时之久) 。一些涉及编程,并且可以在许多不同的方式进行编码。有些是开放式的,并涉及想着后面的编程问题。这些都是不太可能有一个正确的答案。我每个星期左右,添加一个新的卡塔。投入一些时间在你的手艺和尝试。

如果你想讨论卡塔,这里有一个邮件列表,在这里一个wiki 。但是,请记住,卡塔的点没有到达一个正确的答案。问题的关键是你前进的道路上学习的东西。

KataOne :超市定价。定价看起来容易,但浅尝辄止,有一些有趣的问题需要考虑。
KataTwo :空手道印章。二进制印章算法是相当枯燥的。直到你有使用五种完全不同的技术来实现它。
KataThree :有多大,有多快?快速估计是无价的,当谈到使设计和实现决策。这里有一些问题让你改过的信封。
KataFour :数据需要改写。实现两个简单的数据提取例程,看看他们有多少共同点。
KataFive :布鲁姆过滤器。实现一个简单的基于哈希查找机制,并探讨其特性。
KataSix :字谜。在字典中找到的所有字谜组合。
KataSeven :检阅。什么是我们的代码看起来像经过挑剔的目光,以及我们如何能够使我们的眼睛更加重要?
KataEight :目标。什么样的影响做我们的目标,对我们编写代码的方式?
KataNine :结帐。回到超市。本周,我们将实现一个结帐系统,处理定价计划,如代码“苹果花费50美分,三个苹果花费1.30美元。 ”
KataTen :哈希与类。是否总是正确的使用(例如)类和对象来构建复杂的业务对象,或夫妇简单的结构(如哈希散列)做的工作?
KataEleven :整理出来。只是因为我们需要梳理的东西并不一定意味着我们需要使用传统的排序算法。
KataTwelve :畅销。考虑的前十大畅销书名单为高容量的网络存储的实现。
KataThirteen :计数线。计算代码行数的Java源并不像它看起来那么简单。
KataFourteen :卦。用卦分析生成文本可以让我们体验不同的启发。
KataFifteen :玩弄位。声东击西,发现在某些比特序列模式。
KataSixteen :业务规则。你怎么能驯服野生(和改变)设定的业务规则?
KataSeventeen :更多的业务规则。指定订单的整体处理的规则可以是复杂的,尤其因为他们往往​​需要等待周围的事情发生。
KataEighteen :依赖关系。让我们写一些代码来计算的依赖的东西,如类在程序之间如何传播。
KataNineteen :文字链。编写一个程序,解决了字链拼图(猫 - >摇篮 - >点 - >狗) 。
KataTwenty :克朗代克。试验各种启发式玩游戏克朗代克。
KataTwentyOne :简单列表。玩的简单列表不同的实现。
还有的地方(除了在本博客的评论) ,您可以讨论代码卡塔。

第一个是YahooGroups邮件列表,在PragProg维基第二索引页。

我不得不承认,我很紧张做这个。我的希望是,人们会工作的卡塔以讨论它们之前一段时间,多好处来自于小写字母“a -哈! ”一路上时刻。因此,这将是有趣的,看看如何(如果)讨论开发。

发表于上午09时03分|固定链接

CodeKata的更多相关文章

  1. 【转】最牛B的编码套路

    最近,我大量阅读了Steve Yegge的文章.其中有一篇叫“Practicing Programming”(练习编程),写成于2005年,读后令我惊讶不已: 与你所相信的恰恰相反,单纯地每天埋头于工 ...

  2. 最牛B的编码套路 - 呦呦鹿鸣 - 博客频道 - CSDN.NET

    body{ font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI& ...

  3. 给大家推荐PYTHON网站

    有些比较知名的,像 资源汇总的http://bbs.linuxtone.org/forum.php?mod=viewthread&tid=2133 google的https://code.go ...

  4. [No000033]码农网-如何锻炼出最牛程序员的编码套路

    最近,我大量阅读了Steve Yegge的文章.其中有一篇叫"Practicing Programming"(练习编程),写成于2005年,读后令我惊讶不已: 与你所相信的恰恰相反 ...

  5. 最牛B的编码套路

    最近,我大量阅读了Steve Yegge的文章.其中有一篇叫“Practicing Programming”(练习编程),写成于2005年,读后令我惊讶不已:   与你所相信的恰恰相反,单纯地每天埋头 ...

  6. [转载]最牛B的编码套路

    原文地址:http://www.codeceo.com/article/nb-coding-style.html 这篇文章很不错,推荐给大家看. 最近,我大量阅读了Steve Yegge的文章.其中有 ...

  7. 最牛B的编码套路(转)

    转自:http://blog.csdn.net/happydeer/article/details/17023229 最近,我大量阅读了Steve Yegge的文章.其中有一篇叫"Pract ...

  8. 最牛X的编码套路

    最近,我大量阅读了Steve Yegge的文章.其中有一篇叫"Practicing Programming"(练习编程),写成于2005年,读后令我惊讶不已: 与你所相信的恰恰相反 ...

  9. 最牛B的编码套路 【转】

    原文:http://blog.csdn.net/happydeer/article/details/17023229 最近,我大量阅读了Steve Yegge的文章.其中有一篇叫“Practicing ...

随机推荐

  1. D - How Many Answers Are Wrong(hdu 3038)

    总算碰到一道不那么无聊的题了^^ 先说一下题意吧,有两个人一个叫TT的男孩一个叫FF的女孩(名字太随意了吧....),这个叫TT的男孩会经常叫这个女孩一起玩一个游戏,这个有些是这样的,随便写一个数列, ...

  2. 333. Largest BST Subtree

    nlgn就不说了..说n的方法. 这个题做了好久. 一开始想到的是post-order traversal. 左右都是BST,然后自己也是BST,返还长度是左+右+自己(1). 左右其中一个不是,或者 ...

  3. android market 选择

    通过Java包名直接定位到你的App http://market.android.com/details?id=<java包名>或者market://details?id=<java ...

  4. hash定义

    * 若结构中存在关键字和K相等的记录,则必定存储在f(K)的位置上.由此,不需比较便可直接取得所查记录.这个对应关系f称为 散列函数(Hash function),按这个思想建立的表为 散列表. * ...

  5. php 二维数组转换成树状数组(转)

    <?php/** * @param array $list 要转换的结果集 * @param string $pid parent标记字段 * @param string $level leve ...

  6. 那些年不错的Android开源项目(转)

    第一部分 个性化控件(View) 主要介绍那些不错个性化的View,包括ListView.ActionBar.Menu.ViewPager.Gallery.GridView.ImageView.Pro ...

  7. 关于Daydream VR的最直白的介绍

    虚拟现实(Virtual Reality),简称虚拟技术,也称虚拟环境,是利用电脑模拟产生一个三度空间的虚拟世界,提供用户关于视觉等感官的模拟,让用户如同身历其境一般,电脑可以立即进行复杂的运算,将精 ...

  8. Linux: FTP服务原理及vsfptd的安装、配置

    1.FTP 服务的安装# yum install -y vsftpd [root@rusky pub]# ls -l /etc/vsftpd/ total 20 -rw-------. 1 root ...

  9. PHP微信公众号 access_token缓存

    PHP创建access_token.json文件,将access_token 和 生成时间expires 保存在其中, {"access_token":"xxxx&quo ...

  10. ASP.NET 中的定时执行任务

    在一个网站中,设定一些任务能够在后台定时执行. public static void AddTask(int seconds, Action todo) { HttpRuntime.Cache.Ins ...