2009-11-17 46 views
14

trong vài tuần qua tôi đã nghe nói về một hiện tượng gọi là 'code-kata'. Khi tôi làm đúng, nó có nghĩa là viết mã một bài tập lặp đi lặp lại. Điểm của nó là gì? Nó có cải thiện khả năng thiết kế phần mềm tốt hơn của bạn không? Nếu có, tại sao nó làm như vậy?Mã-kata là gì và nó tốt cho cái gì?

+0

Để biết thêm thông tin, hãy xem câu hỏi này: http://stackoverflow.com/questions/1432485/coding-katas-for-practicing-the-refactoring-of-legacy-code – willoller

+0

Tôi đã nghe nói rằng Robert C. Martin đã viết blog về điều này topic: http://blog.objectmentor.com/articles/2009/11/21/whats-all-this-nonsense-about-katas –

Trả lời

6

tôi thu thập một loạt các tài liệu tham khảo của mình: http://slott-softwarearchitect.blogspot.com/2009/08/code-kata-resources.html

Điều quan trọng nhất trong số này là http://codekata.pragprog.com/

+0

Điểm liên kết thứ hai đến một lời giải thích tốt - cảm ơn. –

+0

@Roland - Tôi đồng ý, liên kết thực sự giải thích. Tôi tìm thấy liên kết này cho một số thực hành - http://tddkatas.codeplex.com/ –

+0

Kho lưu trữ Codeplex được chuyển đến Github: https://github.com/garora/TDD-Katas –

8

Đây là lần đầu tiên tôi đã nghe những điều này, vì vậy sau một google nhanh chóng, đây là phản ứng ruột của tôi:

Mã Kata không lặp đi lặp lại một bài tập hơn và hơn nữa. Thay vào đó là việc liên tục mở rộng "vùng thoải mái" của bạn để bạn có thể phát triển như một nhà phát triển.

Chỉ cần thực hiện các dự án mà bạn biết cách thực hiện sẽ không giúp bạn. Bạn cần phải thử và giải quyết các dự án mà bạn rất có thể sẽ thất bại trong lần thử đầu tiên của bạn.

Mục tiêu cuối cùng là nếu bạn liên tục thử, thất bại, hãy thử lại, thất bại lần nữa, v.v, sớm hay muộn bạn sẽ thành công. Khi bạn làm, bạn đã nắm vững một số kiến ​​thức mới và trở thành một nhà phát triển tốt hơn.

Việc lặp lại đủ điều này rõ ràng sẽ cải thiện kỹ năng của bạn.

(Xin lỗi nếu đó là một chút của một bãi chứa não)

+0

Tôi thích bãi chứa của bạn, Jim :) Cảm ơn bạn đã giải thích – ep3static

0

Nó không phải chủ yếu để nâng cao kỹ năng thiết kế của bạn, chứ không phải nó là một cách để nâng cao năng suất của bạn trong IDE bạn đã chọn.

Lặp lại thao tác quen thuộc lặp đi lặp lại cho phép bạn xem và tận dụng lợi thế của các phím tắt IDE và các tính năng mà trước đó bạn không biết phải cạo giây. Nó cũng sẽ giúp bạn tìm thấy bất kỳ bước không cần thiết mà bạn đưa ra khỏi thói quen để bạn có thể cắt chúng ra khỏi thói quen của bạn.

0

Chúng tôi đã thử một vài trong số này tại công ty của tôi, suy nghĩ của chúng tôi là phát triển một trò chơi đơn giản (rõ ràng là có một chút logic mà chúng tôi không biết cách làm). Chúng tôi sẽ tiếp tục cải thiện nó cho đến khi chúng tôi nghĩ rằng chúng tôi có cách tốt nhất để làm mọi thứ, sau đó chúng tôi sẽ gặp lại sau một tuần và so sánh kết quả của chúng tôi . Thật thú vị khi thấy những người khác nhau đến với các giải pháp khác nhau như thế nào và mọi người học hỏi từ kinh nghiệm. Có lẽ không phải là một kata thích hợp, nhưng chúng tôi luôn cố gắng và uốn cong những điều cần một cái gì đó chúng ta sẽ thấy hữu ích :)

Các vấn đề liên quan