Czy istnieje kanoniczna książka do nauki języka Java jako doświadczony programista? [Zamknięte]

28

Jestem programistą platformy .NET od około 5/6 lat. Nigdy nie zajmowałem się profesjonalnym programowaniem w Javie i ostatni raz, kiedy naprawdę go dotknąłem, prawdopodobnie wróciłem na studia. Trochę bawiłem się językiem Scala, ale nic poważnego. Ostatnio zaproponowano mi całkiem fajną pracę, ale używając Javy zamiast .NET. Myślę, że potrafię poradzić sobie z moim obecnym zestawem umiejętności, co oznacza, że ​​już wiem, jak dobrze programować i znam języki, takie jak C # i C ++ itp. Tak więc składnia i wszystkie inne języki nie są tak naprawdę problemem. Potrzebuję naprawdę dobrego podręcznika i książki o tym, jak myśleć w Javie. Każdy język / Framework / Stack próbuje rozwiązać pewne problemy i jestem pewien, że Java nie jest inna.

Jakie są świetne książki Java, bez których po prostu nie możesz żyć? Czy są jakieś książki mówiące o najważniejszych częściach Javy, które należy zrozumieć przede wszystkim?

Na marginesie, zajmę się głównie tworzeniem stron Java. Niezupełnie w 100% na temat tego, jakiego rodzaju rzeczy używają do trwałości, frameworku, serwera itp.

Nodey The Node Guy
źródło
2
Przechodzenie ze stosu .NET do stosu Java z punktu widzenia sieci będzie piekłem. Będziesz bardzo tęsknić .NET. Jthis, jthat, jthingamgig. Tylko moja opinia weź to za to, co jest warte.
@Sergio: Nie to, co chciałem usłyszeć !!! LOL
Nodey The Node Guy
1
@Sergio - Steven, dla Twojej wygody bardzo się nie zgadzam. Java ma swoje problemy, ale myślę, że najlepiej działa w przestrzeni internetowej.
Nicole
1
patrz tutaj: stackoverflow.com/questions/75102/…
Matthieu
1
Prawdopodobny duplikat - programmers.stackexchange.com/questions/32591/…
ChrisF

Odpowiedzi:

19

Dla porównania sugerowałbym użycie oficjalnych produktów Sun (obecnie Oracle), takich jak samouczki i JavaDocs. Pomimo tego, że są przeznaczone dla nowicjuszy, często są tak dobrze zorganizowane, że ekspertowi łatwo jest znaleźć to, czego potrzebują.

Effective Java firmy Bloch to świetna książka do zrozumienia mniej trywialnych aspektów (w szczególności ogólnych).

Dodatkowe materiały prawdopodobnie zależą od używanego stosu Java - J2EE, Spring, GWT, zestaw narzędzi Gui itp.

Uri
źródło
11

Programista Java z certyfikatem Sun

SCJP dla Java 6

Ja bardzo polecam tę książkę jako kompletny get-you-up-and-systemem przewodnika dla już właściwy dewelopera.

To pytanie jest bardzo podobne do pytania Najlepszy sposób na naukę Java, jeśli masz już tło OOP, takie jak ActionScript 3? gdzie powiedziałem:

Wspomniałeś, że nie chcesz książki, która omawia rzeczy, które już znasz. Bardzo polecam SCJP for Java 6 Study Guide . Dostałem tę książkę (wersja Java 5) do studiowania do testu, i mimo że już wiedziałem i pracowałem z Javą w pełnym wymiarze godzin, nie znieważyłem mojej inteligencji, nawet jeśli przejrzałem podstawowe podstawy języka.

Mimo że byłem już kompetentny, nauczyłem się ważnych szczegółów na temat języka w całej książce, w tym szczegółowych informacji na temat słów kluczowych dostępu, polimorfizmu, a także przeciążonego priorytetu metody, który stał się znacznie ważniejszy po dodaniu leków generycznych i automatycznego boxowania.

Stamtąd możesz faktycznie przystąpić do testu (choć przy 200-300 $, cokolwiek to jest teraz, lepiej byłoby, gdyby pracodawca mógł go sfinansować). Test następnego poziomu, SCJD (D dla programisty), faktycznie wymaga wdrożenia podstawowego programu z zapleczem i interfejsem, co byłoby świetnym sposobem na uzyskanie podstawowego, małego (20-40 godzin), dobrze- zdefiniowany projekt, na którym można obciąć zęby.

Nicole
źródło
1
Jako osoba, która czyta tę książkę od deski do deski, naprawdę ją polecam, zawiera ona wiele wewnętrznych informacji o Javie, których nigdy wcześniej nie widziałem w książce bez frustracji dla początkującego, nie będąc książką dla absolutnie początkujący w programowaniu, każdy z dobrą znajomością programowania może bez problemu przeczytać tę książkę
Mahmoud Hossam
@Fobia - trudno opisać, jak może być dobra zarówno dla początkujących, jak i weteranów, ale tak jest, prawda?
Nicole,
tak, BARDZO
Mahmoud Hossam
9

Skuteczna Java Joshua Bloch jest koniecznością. Interesująca dyskusja na temat niektórych nietrywialnych części języka.

Słyszałem też dobre rzeczy o Goetz „Java Concurrency in Practice”, ale sam tego nie czytałem.

Richard Miskin
źródło
5

Jeśli chcesz zostać świstem współbieżnym, zalecamy Goetz et. glin. Współbieżność Java w praktyce . Jeśli chcesz wznieść się na wyższy poziom oświecenia współbieżnego, Sztuka programowania wieloprocesorowego Maurycego Herlihy jest na najwyższym poziomie i zawiera znaczny kod Java. (Zobacz także dyskusję SO ... zauważ, że to pytanie zostało zamknięte, ale odpowiedzi są nadal przydatne)

andersoj
źródło
Niedawno przeczytałem tę książkę, która głęboko wpłynęła na moje zrozumienie.
Nodey The Node Guy
Wszystkie 3 linki, które podałeś, nie zawierają danych, ostatnie 2 są martwe, pierwszy jest w budowie.
Jesteśmy Borg,
Możesz zaoferować sugerowane poprawki ... ale zająłem się pierwszymi dwoma; ostatni, który zostawiłem, ponieważ odwołuje się do pytania o przepełnieniu stosu, które jest zamknięte / usunięte, ale nadal możesz zobaczyć wystarczającą liczbę punktów brownie, a odpowiedzi są nadal interesujące.
andersoj
4

Nie musi specjalnie zajmować się tworzeniem stron internetowych, ale moim zdaniem „Effective Java” Joshua Blocha jest obowiązkowa:

Link do Amazon

ftr
źródło
0

Podobnie jak odpowiedź Uri, idź na oficjalne dokumenty słoneczne i Effective Java, aby głębiej poznać język.

Następnie idź od razu z dokumentami do zabawy i książkami, takimi jak książka do zabawy e-book , książka do nauki , tutaj masz przykładowy rozdział

nie ma sensu uczyć się o standardowym stosie tworzenia stron internetowych j2ee (wiesz, spring, struts, tomcat, jsf itp.), ponieważ gra ma zupełnie inne podejście do tworzenia stron internetowych ... jeśli przejdziesz do hibernacji jako trwałości framework Polecam rzucić okiem na dokumenty hibernacji

opensas
źródło