Jak zacząć naukę Javy
Wielokrotnie zdarzało mi się słyszeć pytanie - "jak najlepiej zacząć naukę Javy"? Co zwykłem odpowiadać w takiej sytuacji? Coś w stylu "yyy... uuuu... może od... Thinking in Java?"
Właściwie to nie wiem co polecić. O "Thinking in Java" mówiłem tylko i wyłącznie dlatego, że jest to jedyne konkretne źródło jakie znam; choć sam tej książki nie czytałem - zbyt rozlazła jak dla mnie. A skąd ja sam się uczyłem? Yyyy... uuuu... sam nie wiem jak to było. Trochę tu, trochę tam.
A co wy odpowiadacie na takie pytanie? Zapewne każdy z was od czasu do czasu takie pytanie gdzieś słyszy. Jak najlepiej zacząć naukę Javy?
A co wy odpowiadacie na takie pytanie? Zapewne każdy z was od czasu do czasu takie pytanie gdzieś słyszy. Jak najlepiej zacząć naukę Javy?
15 komentarzy:
Należy zaczynać od pomysłu. Język jest narzędziem, ale żeby je opanować trzeba mieć pomysł na jego wykorzystanie.
Moja nauka Javy na uczelni opierała się o wykorzystanie wiedzy z metod numerycznych na zasadzie "zróbcie to w Javie". Po zapoznaniu się z podstawami (składania i JavaDoc) już samodzielnie zacząłem zgłębiać zagadnienia związane z OOP.
No cóż, generalnie nie spotkałem się z książką opisującą Jave od podstaw. Wszystkie zakładały, że czytelnik zapoznał się z jakimś językiem. Zacząłem od Head First Java (niestety jej polskie tłumaczenie jest stare i traktuje o Javie 1.4). Bardzo dobrą książką dla mnie okazała się być "Java. Podstawy." (autorzy: Horstmann, Cornell) - głównie ze względu na bardzo dużą ilość porównań do C++, z którym miałem wcześniej do czynienia - no i polskie tłumaczenie (wyd. Helion) traktuje o Java 6, więc jesteśmy na bieżąco :)
Naukę totalnych podstaw można zacząć od javabat.com - zbioru zadań do wykonania - nie trzeba mieć nawet IDE (a wręcz nie powinno się mieć - za dużo podpowiada na początkowym etapie nauki).
W takim wypadku wiele zależy od tego "skąd" dana osoba "pochodzi" tj. czy miała już styczność z programowaniem, czy też chce zacząć od Java'y.
W drugim przypadku polecił bym raczej zacząć od jakiegoś prostszego języka (pacal, php, perl, python) tylko po to żeby głównie załapać "co to jest" programowanie, zrozumieć pętle, zmienne, zakres zmiennych, funkcje i rekurencje do tego można potem dołożyć mały kurs obiektowości.
Jeżeli natomiast ktoś jest zaprawiony w bojach (i kumaty) to polecał bym znalezienie pierwszego lepszego kursu java'y w necie, zaznajomienie się z ogólną składnią i gramatyką, a potem klepanie własnych małych programików i zgłębianie wiedzy w dokumentacji ;)
Thinking in Java jest tutaj http://www.linuxtopia.org/online_books/programming_books/thinking_in_java Bruce Eckel pisze bardzo nie wygodnie. Amerykanin, który świetnie zna Javę i się przemądrza. Takie odnoszę wrażenie. Rodział i około 300 stron pisania o tym jak wspaniała jest Java. Książkę tą polecam przed snem. Można bardzo szybko zasnąć. Jak pisze @Kamil Head First to są słabe lektury. Dobre dla początkujących. Eckel za bardzo skupia się na szczegółach. Po czym w dalszej części książki pisze, że są one mało wykorzystywane - to świetnie... Ja polecam książki O'Reilly oraz Apress.
Pozdrawiam :)
Pierwsze zaczął bym od nauki C++ "SYMFONIA C++" autora Jerzego Grębosza, a następnie prawdopodobnie zaczął bym od przeczytania "Java Podstawy Wydanie VIII"
A ja bam zaczął od czegoś nowszego jak C# (.NET). Jeśli .NET się nie spodoba, zawsze można przesiąść się na Jave :P
Ja zacząłem od dwutomowej serii Core Java, a potem już po trochę doczytywałem i douczałem się z różnych miejsc, głównie Thinking in Java i Head First Java. No ale wiadomo, że poza czytaniem trzeba pisać, pisać, pisać. Najlepiej coś dla siebie, bo wtedy człowiek ma najlepszą motywację :)
Shameless plug :) : opis jak wyglądała nauka Javy u mnie
a ja właśnie jestem w trakcie nauki javy i na początku miałem duży dylemat którą książkę wybrać - Thinking... czy Java.Podstawy. Zdecydowałem się jednak na tą drugą i potem dokupiłem drugi tom Java.Techniki Zaawansowane... Ale dalej nie wiem czy to był dobry (lepszy) wybór w stosunku do Thinking...
Co do "Symfonii C++" to rzeczywiście dla początkującego programisty jest to dobra pozycja. Właściwie to jest to pierwsza książka z której uczyłem się programować.
Pamiętam że zaczynałem od Basica jeszcze w podstawówce, potem był Pascal i właśnie C++ z "Symfonią C++".
Z Javą poznałem się na studiach, jak już dosyć dobrze wiedziałem o co w programowaniu chodzi, więc może dlatego nie potrzebowałem żadnej specjalnej książki a wiedza przyszła dość łatwo, sama.
Co do Ciebie Jacku C i twojego .NETa, to... kiedyś dorośniesz do Javy :)
hmm, ale odpowiedź powinna też zależeć od tego co ktoś chce robić [web czy desktop], prawda?
Javy uczyłem sięjako drugiego języka po C. Nauczyłem się... z totoriali na stronie Javy: http://java.sun.com/docs/books/tutorial/ .
Ja zacząłem od Thinking ..., przegryzłem się przez całą książkę, i nikomu nie życzę więcej takich doświadczeń. Polecam Head First Java potem Java Core - podstawowy + zaawansowany, oczywiście z przerabianiem przykładów.
Czy odpowiedź powinna zależeć od tego czy chcemy robić WWW czy "Desktop"? Hmmm... moje zdanie jest takie, że początek nauki jest od tego niezależny. Język zawsze taki sam a i pojęcie wypada mieć i o tym i o tym, więc warto liznąć wszystkiego. Zwłaszcza jeśli ktoś nastawia się na "Desktop" to powinien liznąć też co nieco WWW. Z moich doświadczeń wynika, że w Javie to jednak robi się głównie interfejsy WWW (albo jakieś B2B) a stosunkowo najmniej aplikacji "tradycyjnych". Szansa, że WWW będzie nas omijać jest moim zdaniem niewielka.
Ja zacząłem od Thinking in Java ;-)
Też jestem za opcją Symfonia c++ a potem jak się załapie OOP można zacząć Java Core od Horstman'a albo Thinking in Java Eckel'a.
Ale jak tu znaleźć książkę z zadaniami, ćwiczeniami? Cos w stylu książek z ćwiczeniami C, C++ Deiannoy'a ?
Prześlij komentarz