Znajomość składni języka programowania to dopiero początek. Programista w swojej codziennej pracy wykorzystuje szereg narzędzi, które pomagają mu w pracy. Na tej stronie zebrałem artykuły, które związane są z narzędziami i dobrymi praktykami, które warto stosować na co dzień.
Narzędzia
Dodatkowo koniecznie musisz znać system kontroli wersji. Proponuję Ci zacząć od Git’a, który jest standardem w branży. Kurs Gita dostępny na Samouczku powinien Ci pomóc go poznać.
Dobre praktyki
Bez tego się nie obejdzie. Jeśli chcesz tworzyć kod, który będzie łatwy w utrzymaniu, możliwy do rozszerzenia i testowania stosuj dobre praktyki opracowane przez bardziej doświadczonych programistów. Ta lista zawiera artykuły, które opisują takie praktyki.
W niektórych sytuacjach rysunki pokazujące system/rozwiązanie problemu. Właśnie wtedy może Ci się przydać znajomość podstaw UML.
Testowanie kodu
Testowanie kodu to temat rzeka. Na początek polecam Ci artykuły, które opisują tematykę testów jednostkowych i bibliotekę JUnit:
Jak poznasz już bibliotekę pomagającą w pisaniu testów jednostkowych koniecznie musisz poznać podejście Test Driven Development. W artykule tym na przykładzie pokazuję jak TDD wygląda w praktyce. Część zadań z rozmów kwalifikacyjnych, które dostałem od Czytelników także rozwiązałem używając TDD:
Wzorce projektowe
Nie bez znaczenia są także wzorce projektowe. Na blogu opisałem kilka z nich. Do zrozumienia diagramów użytych w artykułach dotyczących wzorców musisz poznać podstawy notacji UML. Artykuły poniżej zawierają dokładny opis, przykłady zastosowania i implementację poszczególnych wzorców projektowych:
Co dalej?
Skoro udało Ci się już poznać kilka użytecznych narzędzi i dobrych praktyk warto je wykorzystać. Proponuję Ci rozpoczęcie swojego projektu lub przećwiczenie ich w trakcie rozwiązywania zadań. Oba te tematy poruszam na blogu. Znajdziesz tu projekty realizowane od początku do końca jak i zadania dla programistów z przykładowymi rozwiązaniami.
Kolejnym krokiem może być także poszerzenie swojej wiedzy związaną z teorią informatyki.
Leave a Comment