Sprawne poruszanie się po dokumentacji

0

Witam.
Im dłużej uczę się Javy (czyli krótko), tym bardziej widzę, że wiedza z zakresu programowania w danych języku jest (równocześnie) bardzo ograniczona jak i nieskończona do nauki. Podstawy są ograniczone, można szybko nauczyć się teorii i ćwiczyć, jednak robienie fajniejszych programów wymaga korzystania z rzeczy, które nie są opisane w książkach/kursach (bądź tylko "liźnięte"). Chodzi mi konkretnie o korzystania z licznych gotowych rozwiązań w wbudowanych w Jave (biblioteki , klasy i ich metody).
Przechodząc do sedna, moje pytanie brzmi: jak się sprawnie poruszać po tych klasach/bibliotekach? "Wykucie się" ich nie wchodzi raczej w grę, szczególnie, że raczej szkoda czasu na naukę czegoś co przyda się np. raz w roku (jakaś konkretna metoda z klasy). Staram się korzystać z https://docs.oracle.com/, ale sprawia mi to niesamowitą trudność, również zrozumienie tego co czytam, nie wspominając o wyszukiwaniu czego akurat potrzebuje.
Na niektórych filmikach instruktażowych Javy, widzę jak np. prowadzący film wchodzi w czasie filmu w dokumentacje używanej metody w programie na którym pisze (konkretnie intellij). Również szukam i nie wiem jak to robi. Czy coś dodatkowo trzeba do intellij zainstalować?
Nie wiem czy formułuje moje pytanie dość jasno, ale mam nadzieje, że tak.
Fajnie jakby również jakaś osoba ucząca się języka od podstaw jak ja, wypowiedziała się, jak sobie radzi z takim problemem.
Pozdrawiam

2

Jest jeszcze dział z tutorialami https://docs.oracle.com/javase/tutorial/
Czy wkuwanie dokumentacji ma sens? Moim zdaniem nie, bynajmniej nie całej. Kilka rzeczy i tak zapamiętasz: np. equals i hashcode. Z drugiej strony na rozmowach kwalifikacyjnych możesz mieć pytania o działanie jakichś mechanizmów a to jest tylko w dokumentacji, np. różnica między ArrayList i LinkedList.
Na pytanie o poruszanie się po dokumentacji ciężko odpowiedzieć. Ja najpierw zadawałem sobie pytanie o to, co chcę zrobić. Otwierałem listę pakietów i patrzyłem czy tam jakiś opis pasuje do mojego problemu, np. https://docs.oracle.com/javase/7/docs/api/overview-summary.html . Niektóre mogę mówić niewiele, np. java.nio, ale od czego są tutoriale https://docs.oracle.com/javase/tutorial/essential/io/fileio.html

1

W IntelliJ to skrót CTRL+Q.

1

Gdy chce coś zrobić i nie wiem jak, formułuję problem możliwie ściśle i krótko i wpisuję w Google wraz z nazwą języka (ewentualnie biblioteki, frameworka). Zwykle linki do stack overflow są najbardziej pomocne.

3

Był taki kiedyś żart:

Co powinien wiedzieć student?

  • Student powinien wiedzieć wszystko.
    Co powinien wiedzieć magister?
  • Magister powinien wiedzieć wszystko ze swojej dziedziny.
    Co powinien wiedzieć doktor?
  • Doktor powinien wiedzieć wszystko ze swojej specjalizacji.
    Co powinien wiedzieć dr hab?
  • Dr hab powinien wiedzieć, w której książce, co się znajduje.
    Co powinien wiedzieć docent?
  • Docent powinien wiedzieć, gdzie jest biblioteka.
    Co powinien wiedzieć profesor?
  • Profesor powinien wiedzieć, gdzie są docenci.

Podobnie jest z tymi wszystkimi API. Przynajmniej u mnie, im dłużej pracuję tym mam mniejszą wiedzę o konkretnych klasach, natomiast coraz większą wiedzę o szerszych konceptach. Raczej skup się na kilku kluczowych API (na początku kolekcje i pewnie Time API), wyłap najważniejsze rzeczy (czym się różni Set, Map i List, oraz metody z Collection) i tyle. Reszta przyjdzie z praktyką.

Jeśli chodzi o to, jak czytać to najłatwiej CTRL+N i nazwa klasy. Javadoci zaczynasz czytać gdy nie do końca wiesz, czego szukasz (np. jakiego lock'a użyć).

2

Polecam Ctrl+click oraz zeal.

1 użytkowników online, w tym zalogowanych: 0, gości: 1