Mateusz Mazurek – programista z pasją

Python, architektura, ciekawostki ze świata IT

Felietony/inne Inne Programowanie

Wideo Kurs programowania w Javie

Cześć! Cieszę się, że mnie odwiedziłeś/aś. Zanim przejdziesz do artykułu chciałbym zwrocić Ci uwagę na to, że ten artykuł był pisany kilka lat temu (2014-04-20) miej więc proszę na uwadzę że rozwiązania i przemyślenia które tu znajdziesz nie muszą być aktualne. Niemniej jednak zachęcam do przeczytania.

Cześć, ostatnio pisałem o kursie programowania na Androida, dziś nadal podobne klimaty, mimo że schodzimy z tej platformy mobilnej a wchodzimy na zwykłe systemy operacyjne. Kurs który chciałbym Wam przybliżyć to materiał który wyszedł z pod pióra ludzi pracujących dla strefakursow.pl ;) jest poziom drugi Kursu Java. Zaczniemy klasycznie, od przedstawienia spisu treści:

Wprowadzenie

  • Wstęp
  • Platforma Eclipse IDE
  • Rozpoczynamy pracę w nowym środowisku
  • Omówienie podstawowych zakładek platformy
  • Podstawy personalizacji Eclipse’a

Programowanie wielowątkowe

  • Wątki w języku Java
  • Podstawy sterowania wątkiem
  • Tworzenie wątku – implementacja interfejsu Runnable
  • Tworzenie wątku – rozszerzenie klasy Thread
  • Tworzenie wielu wątków
  • Metody isAlive() i join()
  • Priorytety wątków
  • Synchronizacja – modyfikator synchronized
  • Synchronizacja – konstrukcja synchronized
  • Komunikacja międzywątkowa
  • Zakleszczanie
  • Zawieszanie, wznawianie i zatrzymywanie wątków
  • Uzyskiwanie stanu wątku

Typy wyliczeniowe

  • Podstawy wyliczeń
  • Użycie wyliczeń w instrukcjach if oraz switch
  • Metody values() i valueOf()
  • Wyliczenia Javy jako typy klasowe
  • Wyliczenia dziedziczą po klasie Enum
  • Inny przykład wyliczenia

Opakowywanie

  • Wstęp
  • Opakowywanie typów numerycznych
  • Opakowywanie typu znakowego
  • Opakowywanie typu logicznego
  • Automatyczne opakowywanie – podstawy
  • Automatyczne opakowywanie i metody
  • Automatyczne opakowywanie i wyrażenia
  • Automatyczne opakowywanie – podsumowanie

Adnotacje

  • Wstęp
  • Podstawy tworzenia adnotacji
  • Strategie zachowywania adnotacji
  • Odczytywanie adnotacji za pomocą refleksji
  • Wartości domyślne adnotacji
  • Adnotacje znacznikowe
  • Adnotacje jednoelementowe
  • Niektóre adnotacje wbudowane

Operacje wejścia/wyjścia

  • Wstęp do tematyki operacji wejścia i wyjścia
  • Odczyt danych z konsoli
  • Przykład użycia klasy PrintWriter
  • Podstawy zapisu danych do pliku
  • Podstawy odczytu danych z pliku
  • Przykład kopiowania plików tekstowych
  • Automatyczne zamykanie plików
  • Przykład programu obliczającego wskaźnik BMI

Inne tematy

  • Modyfikator transient oraz volatile
  • Operator instanceof
  • Modyfikator strict
  • Stosowanie asercji

Dodatki

  • Dokumentacja Oracle dla języka Java
  • Dokumentacja dla platformy Eclipse IDE
  • Eclipse Color Themes – uprzyjemniamy środowisko pracy

Pierwszy rozdział to zapoznanie się z Eclipse. Jak widać autorzy zakładają że nie wszyscy przeszli przez poziom pierwszy kursu i na początku przechodzą szybko przez sam edytor – trochę sztuczek jak go spersonalizować np. :) Drugi rozdział to już programowanie, a dokładnie programowania wielowątkowe. Pokazują dwie metody, które służą do stworzenia wątku oraz metody ich synchronizacja, tj. wait(), notify(), notifyAll() i synchronize jako blok i jako słowo kluczowe przy metodzie. Ogólnie fajnie to jest wyjaśnione, przystępnie. Oddzielny filmik poświęcono problemu zakleszczenia. Szkoda że nie powiedzieli ani słowa o nowych metodach synchronizacji, np. o lockach, semaforach czy barierach. Nie było też nic o zmiennych atomowych ani o kolekcjach typu ArrayBlockingQueue czy ConcurrentHashMap. Szkoda, ale może w sumie by to przekraczało zakres tego kursu.

Idąc dalej mamy Enumy – krótko i treściwie. W kolejnej części jest trochę o klasach opakowujących. Troszkę rozwlekle, gdyż dla każdego typu oddzielny filmik.. Ale słucha się przyjemnie. A warto być świadomym tego po co i kiedy zachodzi automatyczne opakowywanie.

Pozytywnym zaskoczeniem było to że jeden z działów to Adnotacje. To temat który zwykle jest dość leciwie opisywany w internecie czy wykładany na uczelniach. Dowiemy się czym są owe adnotacje oraz ich strategia działa, czyli retencja. A skoro są adnotacje to również mamy refleksję, to spory skok poziomu kursu. Po adnotacjach przyszedł czas na strumienie. Zgrabnie przeszli przez niezbyt łatwy temat – szkoda że nie było ObjectOutputStream / ObjectInputStream. Na sam koniec tego rozdziału było coś co nigdy wcześniej nie widziałem – użycie klasy Runtime, czyli uruchomienie aplikacji Javy w konsoli systemowej.

Przedostatni dział to „Inne Tematy”, czyli nieco więcej o bardziej egzotycznych modyfikatorach. A ostatni jest o dokumentacji i opisie tego, w jaki sposób, importując „preferencje” można wczytać niestandardowy theme dla edytora Eclipse. Ufff, zdecydowanie dużo więcej tutaj wiedzy niż w kursie Androida. Polecam wydać te kilkanaście złotych osobom które już umieją napisać kalkulator w Javie + wiedzą czym jest programowanie obiektowe + czym są klasy + jak to wszystko się łączy.

78139112863aafab2c61e2df41de0895

 

 

Tak jak w poprzedniej recenzji zapraszam do zakupu tego kursu, bo warto.

A dla Was wszystkich, mam rabat -20% Kod kuponu: JAVA-mmazur

1396733577_left
Dzięki za wizytę,
Mateusz Mazurek

A może wolisz nowości na mail?

Subskrybuj
Powiadom o
guest

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.

0 komentarzy
Inline Feedbacks
View all comments