Chcesz pisać lepszy kod? Zainteresuj się ćwiczeniami kata.
Co w ogóle oznacza to słowo?
Kata to nazwa zestawu technik ze sztuk walki, które wykonuje się setki razy, żeby osiągnąć perfekcję w każdej z nich. Każde kolejne kata jest inne niż poprzednie. Za każdym razem dochodzi jakaś nowe kopnięcie, cios, którego wcześniej adept sztuk walki nie znał. Tak samo sprawa ma się z kata programistycznym. Jest to proste ćwiczenie, którego realizacja powinna zając od kilkunastu minut do kilku godzin. Ma ono na celu przećwiczenie nowego języka, nowej techniki i rozbudowanie umiejętności algorytmicznych. Oczywiście to czy skorzystasz z czegoś nowego podczas rozwiązywania takiego zadania zależy od Ciebie. Jednak wykonywanie kata korzystając ciągle z tych samych metod, nie przyniesie tak dobrych wyników jak eksperymentowanie, szukanie nowych rozwiązań. Tak więc, jeżeli pracujesz na co dzień z kodem obiektowym, spróbuj wykonywać kata w języku funkcyjnym.
Gdzie można znaleźć kata? Polecam odwiedzić https://www.codewars.com. Po założeniu konta dostaniesz dostęp do kilku tysięcy kata, które można rozwiązywać w kilku językach. Po rozwiązaniu problemu jest także opcja porównania rozwiązań z innymi użytkownikami. Jak wygląda przykładowe kata z codewars? Na przykład tak:
Write a function that takes an (unsigned) integer as input, and returns the number of bits that are equal to one in the binary representation of that number. Example: The binary representation of 1234 is 10011010010, so the function should return 5 in this case.
Do tak zdefiniowanego kata należy napisać kod, który przechodzi takie testy jednostkowe:
1 |
|
PS. Nie korzystaj z metody bitCount ;)