
Code Climate
Ciekawe narzędzie, które robi automatyczny przegląd kodu i prezentuje wyniki w zbiorczym raporcie. Dodatkowo generuje jeden liczbowy wskaźnik jakości kodu. Można to łatwo wykorzystać przy przeglądaniu i dodawaniu nowego kodu do repozytorium. Sprawdzając czy wskaźnik wzrośnie czy zmaleje, mamy szybką informację czy dodawany kod poprawia czy pogarsza obecną bazę.
Code Climate jest bezpłatny dla projektów opensource. Można dodać repozytorium Githuba bezpośrednio przez aplikację webową. Po kilku minutach możemy już przejrzeć raport. Istnieje też wersja do uruchomienia z linii poleceń, ale nie miałam póki co możliwości przetestować.
W każdym bądź razie Code Climate wydaje się idealnym narzędziem dla uczestników "Daj się poznać".
Raport z mojego projektu na pierwszy rzut oka nie wyglądał najlepiej. Gdy weszłam w szczegóły okazało się, że najwięcej problemów zostało znalezionych w plikach związanych z Bootstrapem. Po wyłączeniu tej części kodu z raportu, ogólne wyniki znacznie się poprawiły. Zostało kilka fragmentów oznaczonych jako słabsze - głównie tam, gdzie coś się powtarza albo gdzie kod został porzucony na rzecz innego rozwiązania. To bardzo duży plus, bo pozwala to automatycznie sięgnąć do zapomnianych lub nieskończonych miejsc i podjąć decyzję o ich posprzątaniu.
Postępy projektowe
Znów wyruszyłam w głąb 'django_quiz', czyli pakietu Django, którego używam do tworzenia quizów. Nie jestem zadowolona z jakości tego rozwiązania, ale nie znalazłam żadnej gotowej, rozbudowanej paczki. Zanurzyłam się w przeglądanie kodu i testowaniu biblioteki. Niestety prawie nie posiada dokumentacji, nawet takiej wygenerowanej automatycznie. Duża część logiki jest spakowana w widokach. Faktycznie nigdy w swoich projektach nie miałam rozbudowanej tej części Djangowej aplikacji, co dodatkowo utrudnia mi zrozumienie, ale jest ciekawą nauką.
Koniec końców odkryłam, że biblioteka faktycznie zapewnia statystyki ze wszystkich quizów. Jednak nigdzie poza samym kodem, nie można znaleźć adresu lub opisu w jakiej formie są one zapisywane. Niemniej do moich celów powinno zupełnie wystarczyć.
Dopisałam też możliwość generowania quizów z randomowym zestawem pytań, co wydaje się fajną opcją na start. Nigdy nie lubię stron i aplikacji, które zarzucają mnie treścią i możliwościami, ale zupełnie nie mam pojęcia gdzie zacząć w tym gąszczu opcji.
Walka z biblioteką znów dała mi do myślenia. Czy powinnam wyrzucić tą aplikację i napisać własny kod? Co będzie trwało dłużej - napisanie własnego rozwiązania od podstaw czy dopasowywanie cudzej biblioteki. Poza nadpisaniem szablonów, dotarłam już do nadpisywania widoków i zastanawiam się czy na tym się skończy. Swoją drogą w historii wielu innych projektów widać, jak wiele umiera, gdy główny autor przestaje się nimi interesować. Biblioteka z której korzystam, ma kilka czekających pull-requestów i całkiem aktywną grupę dyskutującą na GitHubie. To jednak za mało, żeby utrzymać dobry kierunek projektu i go rozwijać. Potrzeba kogoś, kto weźmie na siebie odpowiedzialność i poprowadzi całość do przodu. Zwłaszcza z wizją i planem.
Podsumowując czuję postępy, chociaż projekt wymaga jeszcze wielu udoskonaleń i prawdopodobnie przemyślenia dodatkowych aspektów.
0 Komentarze