Wątek przeniesiony 2017-11-15 12:18 z Edukacja przez somekind.

Ścieżka rozwoju, po przerobieniu podstaw języka

0

Witajcie,
To mój pierwszy post na Waszym forum zatem proszę o wyrozumiałość.
Pomyślałem sobie, że chcę się przekwalifikować i póki co zacznę się uczyć w domu. Przerobiłem książkę Hosrtmanna Java.Podstawy, stworzyłem kilka prostych programów i pojawia się pytanie co dalej. Fascynuje mnie ogrom możliwości, ale nie mam pojęcia za co się teraz brać.
Spring, hibernate, Android Studio, Maven itd. wszystko to mi się na dzień dzisiejszy cholernie miesza, frameworki, narzędzia itd.
Podrzuci ktoś jakąś ścieżkę rozwoju czy coś w tym stylu? W jaką stronę mogę teraz pójść.

Drugie pytanie, skoro Java SE ma ok. 5000 klas skąd mam wiedzieć, których użyć akurat w moim problemie? Jak szukać, jak poznać te które powinienem?
Czytać całą dokumentację to chyba zbyt grubo :D

Pozdrawiam.

1

Co do wymienionych narzędzi/frameworków, każdego z nich możesz uczyć się oddzielnie, chociaż na początku znajomość narzędzi do budowania i zarządzania zależnościami znacznie przyśpiesza development.
Dlatego też zacząłbym na Twoim miejscu od Maven/Gradle, podstawy - czyli tak żebyś był w stanie zbudować projekt z podstawowymi zależnościami.
Następnie warto dowiedzieć się co to jest Dependency Injection, Inversion of Control. Tutaj zależnie od platformy, w przypadku weba Spring Core, bądź Dagger w przypadku Androida.
Następnie zależnie od zainteresowań, jeżeli web to warto poznać Spring MVC, framework do tworzenia aplikacji webowych opartych o Servlety oraz Hibernate, który pozwala na łatwą integrację z bazą danych (ORM). Do tych rzeczy jest masa tutków w necie i przystępne kursy Artura Owczarka na YT.

Co do drugiego pytania, są tacy którzy przeczytali całą dokumentację (i sporo więcej, certyfikat sam się nie zdobędzie). Natomiast wydaje mi się że przeczytanie dobrej książki o Javie oraz kilka tutoriali pozwolą Ci poznać najważniejszą część API Javy i swobodnie w niej pisać, natomiast gdy natrafisz na jakiś problem/będziesz potrzebował jakiegoś konkretnego elementu, wtedy wystarczy zajrzeć do dokumentacji (stąd też warto umieć się po niej poruszać). Oczywiście wujek Google również zawsze chętnie pomoże i zachęcam do korzystania z niego. To naprawdę potężne narzędzie które bardzo ułatwia pracę pracę programisty i nie tylko!

1

To zależy w jakim obszarze chcesz się rozwijać. Jak webdev no to Spring + Hibernate + Maven/Gradle na początek zdecydowanie wystarczy, pewnie spokojnie na kilka miesięcy :) Jak mobilki no to Java na Androida + ew. Kotlin, poznanie całego ekosystemu Androida też wymaga czasu. Przede wszystkim kodowanie i wyszukiwanie informacji jak można rozwiązać dany problem np. na stackoverflow.

0

Dziękuję Wam za pokierowanie, ale mam jeszcze małe wątpliwości.
Jestem na etapie pisania dektopowych prostych programów. Przejrzałem rozdział dot. swinga, ale skoro nie jest on w użytku to od razu przeszedłem do nauki JavaFX z tutoriali i teraz buduję sobie swoją prostą, ale ciekawą apkę. Tylko czy to mi jest potrzebne?

Chcę się skupić na aplikacjach webowych i pytanie czy JavaFX nie koliduje z tym? Czy odpuścić i przechodzić do Springa? (Maven mam opanowany, chociaż są głosy, że Gradle się teraz używa).

Z góry dziękuję.

PS: Zadaję takie pytania, bo nie chcę tracić czasu. Zrobiłem ten błąd zalegając na zgłębianiu swinga. Teraz wolę zebrać więcej informacji.

PS#2: Czy jest sens na tym etapie uczyć się budowy strony www? Mam taki problem, że wszystko mnie interesuje i wszystko bym chciał na raz.

0

Do Javy i frameworka potrzebna też jest znajomość git, html5, javascript lub jakiegoś frameworka. To nie jest C, że nauczysz się go i możesz w czystym pisać.

0

Przecież frameworki mają swoje przeznaczenie.

Np. android sdk/NDK - appki na androida.
Spring - webówki backend

Jak będziesz wiedział jaki problem rozwiązujesz to znajdziesz narzędzie, ale nie wiedzą co chce się osiągnąć nie znajdziesz narzędzi.

1

Jak sam zauważyłeś, nie wszystko na raz. Jeżeli już zacząłeś z JavaFX to pobaw się nim, zawsze to jakiś dodatkowy projekt na Githubie. Natomiast jeżeli dobrze odseparujesz logikę biznesową swojej aplikacji, to jest szansa że będziesz mógł wykorzystać "mięsko" w jej wersji webowej. Popatrz sobie na MVC pattern.

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