在過去的幾個星期裏,我聽說過一種叫'代碼卡塔'的現象。當我說得對,它意味着一次又一次編碼練習。它有什麼意義?它是否提高了你設計更好的軟件的能力?如果是,爲什麼這樣做?什麼是代碼卡塔,它有什麼好處?
回答
第二個鏈接指向一個很好的解釋 - 謝謝。 –
@羅蘭德 - 我同意,真正的解釋性鏈接。我發現這個鏈接的一些動手 - http://tddkatas.codeplex.com/ –
Codeplex存儲庫移動到Github:https://github.com/garora/TDD-Katas –
這是我第一次聽說過這一點,所以一個快速谷歌之後,這是我的直覺反應:
代碼卡塔不一遍又一遍重複的練習。而是關於不斷擴展您的「舒適區」,以便您可以成長爲一名開發人員。
只是在你知道如何做的項目上工作並不會幫助你。您需要嘗試解決您在第一次嘗試時很可能會失敗的項目。
最終目標是,如果您不斷嘗試,失敗,再試一次,再次失敗等,遲早會成功。當你這樣做時,你已經掌握了一些新的知識,併成爲一個更好的開發者。
足夠重複這將顯然提高你的技能。
(很抱歉,如果這是一個有點腦轉儲)
我喜歡你的轉儲,吉姆:)感謝您的解釋 – ep3static
這主要不是提高你的設計技能,而是要提高生產力在你選擇的IDE的方式。
一遍又一遍地重複熟悉的任務可以讓您注意並利用IDE快捷方式和功能,您以前不知道如何從您的時間中刪除幾秒鐘。它也將幫助你找到任何不必要的步驟,你可以將它們從日常習慣中解脫出來。
我們在我的公司嘗試了其中的一些,我們的想法是開發一個簡單的遊戲(顯然是一些邏輯,我們不知道該怎麼做)。我們都會盡力去做,然後我們會盡可能地改進它,直到我們認爲我們有最好的方式做事,然後我們可能會在一週後再次見面,並比較我們的結果。看看不同的人如何提出不同的解決方案,並且每個人都從經驗中學習,這很有趣。也許不是一個正確的卡塔,但我們總是嘗試和彎曲這些東西的東西,我們會發現有用的:)
- 1. Cakephp,它有什麼好處?
- 2. Assert() - 它有什麼好處?
- 3. 什麼是代碼的好處
- 4. 什麼是'不可驗證的代碼',爲什麼它不好?
- 5. 這個typedef是什麼意思,它有什麼好處?
- 6. `cache_line_align_`的作用是什麼?它有什麼好處?
- 7. 什麼是newproxy,它有什麼用處?
- 8. nVidia Tesla卡有什麼好處嗎?
- 9. '[]'之間的代碼是什麼?它有什麼作用?
- 10. jQuery FancyBox,它有什麼好處?
- 11. Z Shell「autoload」builtin - 它有什麼好處?
- 12. Django inlineformsetfactory - 它有什麼好處?
- 13. 元編程,它有什麼好處?
- 14. 屬性後臺 - 它有什麼好處?
- 15. Lucene SpanQuery - 它有什麼好處?
- 16. Flex + Java EE它有什麼好處?
- 17. 問號的重要性是什麼?這段代碼的好處是什麼?
- 18. 爲什麼要使用websocket,使用它有什麼好處?
- 19. 什麼代碼更好
- 20. 什麼是TrafficStats的好處?
- 21. Struts的好處是什麼
- 22. 什麼是CIDR的好處?
- 23. 什麼是PowerShell的好處?
- 24. 是什麼代碼是什麼意思?
- 25. 元組有什麼好處?
- 26. StringBuilders有什麼好處?
- 27. 粘液有什麼好處?
- 28. AJAX有什麼好處?
- 29. 「svn:externals」有什麼好處?
- 30. cURL有什麼好處?
欲瞭解更多信息,請參閱此問題:http://stackoverflow.com/questions/1432485/coding-katas-for-practicing-the-refactoring-of-legacy-code – willoller
我聽說Robert C. Martin已經對此進行了博客話題:http://blog.objectmentor.com/articles/2009/11/21/whats-all-this-nonsense-about-katas –