Początki programowania w Javie – od czego rozpocząć naukę?

Początki programowania w Javie – od czego rozpocząć naukę?

Java jest językiem obiektowym, więc podejście do jej nauki powinno być inne niż w przypadku C++ czy Pythona.

Pierwszy etap – podstawy Javy

Java jest językiem obiektowym, więc podejście do jej nauki powinno być inne niż w przypadku C++ czy Pythona. Zakładając, że Java jest pierwszym językiem programowania warto na początku dowiedzieć się czym w ogóle jest obiektowość. Absolutną koniecznością jest znajomość takich pojęć jak właśnie obiektowość, klasa, obiekt, hermetyzacja, dziedziczenie, polimorfizm.

Taka wiedza pozwoli nam zrozumieć czemu trzeba napisać kilka linijek, żeby tylko wypisać cokolwiek na strumień wyjścia. Absolutną podstawą są też takie elementy składniowe jak pętle, instrukcje warunkowe, tablice, switche. Trzeba znać podstawowe typy danych, ale zapamiętywanie zakresu ich wartości jest oczywiście bezsensowne.

Drugi etap – rozszerzenie wiedzy o obiektowości

Teraz przyszedł czas na oswojenie się z pojęciami klasy i obiektu. To odpowiednia pora na pojęcia takie jak konstruktor (funkcja wywoływana podczas tworzenia obiektu) i przeciążanie go. Należy napisać jakąś klasę dziedziczącą i przetestować jak wtedy zachowują się konstruktory. To dobry moment na spróbowanie możliwości polimorfizmu, mechanizm kompozycji.Przy okazji warto dowiedzieć się jak działa wirtualna maszyna Javy, jak działa garbage collector.

Trzeci etap – początek projektu, poznawanie podstawowych klas, klasy abstrakcyjne i interfejsy

Po oswojeniu się z podstawowymi pojęciami związanymi ze światem obiektowym przyszła odpowiednia pora na klasy abstrakcyjne, słowo kluczowe “final” oraz “static”, interfejsy. To jest również odpowiedni moment do rozpoczęcia pisania własnego projektu. Oczywiście podczas jego powstawania będzie się pojawiało wiele trudności i konieczne będzie wyszukiwanie informacji.

Na obecnym etapie powinniśmy zacząć poznawać podstawowe wbudowane klasy Javy. Powinny to być np. klasy opakowujące podstawowe typy (Integer, Double itd.) oraz takie klasy jak Math (na tym przykładzie łatwo zrozumieć klasy statyczne), Arrays, Object (z której niejawnie dziedziczą bezpośrednio lub pośrednio wszystkie klasy).

Czwarty etap – bardziej nowoczesne elementy języka Java

Być może problemy motywujące do znalezienia rozwiązania pojawią się już w trakcie pracy nad projektem. Tablice mogą okazać się niewystarczające do przechowywania danych i pojawi się naturalna potrzeba poznania kolekcji. Należy rozumieć podstawowe różnice pomiędzy jej typami, wiedzieć czym różni się ArrayList od LinkedList. To również odpowiedni moment na wyrażenia lambda, strumienie, typ wyliczeniowy, typ generyczny, może również podstawowe adnotacje.

Piąty etap – wybór dalszej ścieżki rozwoju

Jeżeli zrozumieliśmy i wykorzystaliśmy w praktyce powyższe elementy języka Java, przyszła pora na obranie dalszej ścieżki rozwoju. Moim zdaniem bardzo naturalnym pomysłem będzie teraz dokonanie wyboru pomiędzy aplikacjami webowymi a mobilnymi. Ktoś inny może chcieć pozostać przy aplikacjach desktopowych. W tym pierwszym przypadku naturalną częścią rozwoju będzie zagłębienie się w ekosystem Springa, poznanie Hibernate, podstawy HTMLa i CSSa. W tym drugim i trzecim przypadku pozostaniemy bliżej wiedzy nabytej do tej pory.

Dodaj komentarz