Home > Programowanie, Recenzje > Codility vs JavaBlackBelt

Codility vs JavaBlackBelt

Jakiś czas temu napisałem, że nie lubię testowania programistów tak jak się testuje kompilatory. Dobry programista nie musi wiedzieć czym różni się i++ od ++i, jednak musi czuć respekt przed takimi niuansami. Szkoda, że ta zasada nie jest znana społeczności JavaBlackBelt.

JavaBlackBelt to platforma do nauki Javy. Zawiera między innymi testy wymyślane przez społeczność programistów. Dzięki nim można wczuć się w rolę kompilatora:

Po co programista ma wiedzieć coś takiego? Żaden programista przy zdrowych zmysłach nie napiszę takiego kodu – intuicyjnie. A jak już napisze, to powinien dostać czarnym pasem po d….

Dlatego nie podoba mi się JavaBlackBelt. Czarnego pasa w karate nie dostaje się za nauczenie się nazw ciosów: “Mawashi Tobi Geri”.

Dlatego spodobał mi się polski program Codility. Dzięki Codility możemy sprawdzić jak programista poradzi sobie z napisaniem prawdziwego programu. Do wyboru mamy kilka języków programowania w których trzeba rozwiązać zadania algorytmiczne. Webowa aplikacja skompiluje podane rozwiązanie i sprawdzi wyniki przy pomocy testu jednostkowego. Genialne J.

Należy jednak pamiętać, że testy są zawsze pewnym uproszczeniem. Prawdziwych programistów poznaje się w pracy nad projektami a nie podczas rozwiązywania testów i zagadek algorytmicznych.

Categories: Programowanie, Recenzje Tags:
  1. November 13th, 2009 at 23:25 | #1

    Nic dodać, nic ująć. Sama prawda. Mimo wszystko chciałbym spróbować się z tym Codility.

  2. Artur
    March 1st, 2010 at 03:24 | #2

    nie rozumiem obawy; Codility jako centrum oceny kandydatow ma robic za sito odsiewajace dyletantow. Jak jesteś kadrowym i na 1 stanowisko zgłasza się 15 osób (i wybór tej z największymi cyckami nie jest możliwy lub sensowny) to Codility służy oszczędzeniu komuś wielu godzin pracy na skrócenie listy kandydatów do takiej długości, by był sens przesłuchać i sprawdzić ich na żywca.

  3. Piotr Nowicki
    March 10th, 2010 at 19:28 | #3

    A ja tu widzę “doskonały przykład”, że finally jednak może się nie wykonać ;]
    To taka uwaga do wszystkich książek dla początkujących, w każdej czytałem, że będzie zawsze wykonana ;]

  4. March 10th, 2010 at 21:43 | #4

    1.
    “Doskonały przykład” wygląda inaczej: blok try { } catch. W try wywołanie kodu natywnego. Kod natywny narusza ochronę pamięci. Czy catch się złapie???

    2.
    Ostatnio rozmawiałem z nauczycielem angielskiego. Podał doskonałą definicję egzaminu FCE. Zdanie egzaminu FCE nie oznacza że mówi się dobrze po angielsku, ale oznacza – że nie mówi się źle. Chyba podobnie jest z BlackBelt. A Codility to inna bajka, jeszcze lepsze narzędzie do testowania.

  1. No trackbacks yet.

Subscribe without commenting