konto usunięte

Temat: Java - ćwieczenia

Witam.

Niedawno w końcu udało mi się wygospodarować czas żeby poważnie przysiąść do javy (póki co SE) i poduczyć się jej. Brakuje mi jednak pomysłów jak można by poćwiczyć zdobyte do tej pory umiejętności, a przy okazjo żeby to były praktyczne przykłady. Stąd moje pytanie do Was: znacie może jakieś strony/książki, z których można by czerpać zadania do poćwiczenia umiejętności ?

Jedyne co znam to http://www.pythonchallenge.com/ ale to trochę nie ten język no i są to chyba zadania bardziej na logikę niż przydatne w codziennej(przyszłej) pracy.

ps.
Mam też dylemat czy dalej rozwijać się najpierw w kierunku androida czy java ee, jak myślicie co może być bardziej przydatne patrząc przyszłościowo i z perspektywy kogoś w sumie nowego w programowaniu, ale bardzo chętnego do nauki :)

konto usunięte

Temat: Java - ćwieczenia

Jedyne co znam to http://www.pythonchallenge.com/ ale to trochę nie ten język no i są to chyba zadania bardziej na logikę niż przydatne w codziennej(przyszłej) pracy.


Dobry temat :) najlepiej samemu kombinować - ja mogę dodać, że w zacytowanym fragmencie się mylisz. Większość języków programowania ma podobną logikę, podobne pętle.
Ze swojej autopsji wiem, że właśnie na tym idzie się mocno nadziać - bo jak nie ćwiczysz albo nie zakodujesz tego raz na zawsze (poprzez ćwiczenia) to możesz się wyłożyć ;) np: pamiętasz wszystkie rzutowania danych liczbowych, i przy których jest konwersja stratna a przy których nie ? :)
Lub czy pamiętasz, że char to w zasadzie int ;) ? Takich pytań jest sporo.
Sam chętnie poczytam kto podsunie jakiś ciekawą stronkę z takimi ćwiczeniami.
ps.
Mam też dylemat czy dalej rozwijać się najpierw w kierunku androida czy java > ee, jak myślicie co może być bardziej przydatne patrząc przyszłościowo i z > perspektywy kogoś w sumie nowego w programowaniu, ale bardzo chętnego do
nauki :)

Java EE zdecydowanie :) - tylko nie zachłyśnij się Java i pakietem swing bo będzie twarde lądowanie ;)

konto usunięte

Temat: Java - ćwieczenia

Marcin W.:
Mam też dylemat czy dalej rozwijać się najpierw w kierunku androida czy java ee, jak myślicie co może być bardziej przydatne patrząc przyszłościowo i z perspektywy kogoś w sumie nowego w programowaniu, ale bardzo chętnego do nauki :)

Myślę, że ciekawiej może być pójść w kierunku androida. Ma zdecydowanie szybszy "flash-to-bang" - musisz znać dobrze jedną technologię i API. Po 1-2 miesiącach będziesz robić już jakieś aplikacje (coraz ciekawsze) i będziesz szybko widział efekty swojej pracy (znacznie podniesiesz swoje skille Javowe).

W JEE od razu zasypie cię stos technologii (HTML, JS, Java, servlety, pewnie weźmiesz jakiś framework dodatkowo) - zanim się we wszystkim połapiesz minie trochę czasu (przy androidzie będziesz już wtedy kończył swoją pierwszą mini aplikacyjkę).

To z perspektywy kogoś nowego. Patrząc przyszłościowo to pewnie lepiej póki co iść w JEE (więcej pracy na dzień dzisiejszy). Z drugiej strony praca przy androidzie pozwoli Ci stać się lepszym developerem Javy, a to jest i tak podstawa w JEE.
Mateusz Herych

Mateusz Herych Arch Linux TU,
Student PK

Temat: Java - ćwieczenia

Cześć,

Jeżeli dopiero zaczynasz swoją przygodę z programowaniem, to polecam zacząć właśnie od takich "logicznych" zadań, które zaznajomią Cię z działaniem algorytmów i najważniejszych struktur danych. Nauczysz się jakiej struktury danych/kolekcji najlepiej użyć w danej sytuacji. W tym celu - http://pl.spoj.pl/ - pamiętaj, że nie musisz być super wymiataczem w tego typu zadaniach, wcale nie musisz rozwiązywać zadań z kategorii 'trudne' z czasem ~0.00 - ale warto się zaznajomić.
Druga rzecz, to projektowanie. Na rynku dostępnych jest wiele książek dotyczących czy to wzorców projektowych, czy to inżynierii oprogramowania w ogóle - mógłbym Ci z tego miejsca polecić Head First - Design Patterns - ale musisz sam ocenić, czy taka forma książki (baardzo oryginalna jak na tę tematykę) Ci odpowiada.
Musisz nauczyć się szacować, jakie komponenty Twojej aplikacji koniecznie muszą być łatwo rozszerzalne, aby późniejsze zmiany czegokolwiek nie pociągały za sobą masy pracy. Oszczędzi to w przyszłości czasu i Twoim klientom.

I najważniejsze(!) Nie podchodź do tematu tylko pod kątem opłacalności od strony zawodowej. Czy to Android, czy JEE, czy jeszcze inny sektor - jeżeli będziesz robić coś dobrze, to z pracą problemów mieć nie będziesz. Rób więc to, co bardziej Ci się podoba. Pasja jest bardzo ważna, bez niej ciężko być dobrym.

Powodzenia.
Krzysztof Skrzypczak

Krzysztof Skrzypczak Senior Java
Developer

Temat: Java - ćwieczenia

Ja uważam, że najpierw powinieneś nauczyć się PORZĄDNIE Javy. A skąd ?? Najpierw kup literaturę, polecam Java 2 Podstawy a potem Java 2 Techniki zaawansowane. Przerób to wszystko. Napisz aplikację (nie wiem, czy studiujesz, ale możesz napisać na podstawie zdobytej wiedzy pracę inżynierską bądź magisterską). Potem wejdź w szczegóły, czyli poznaj trochę wiedzy sprawdzanej na certyfikacjach np. Oracle. Zapamiętasz jakieś 30% - 50%, ale to jest bardzo dużo, jeżeli chodzi o wrażenie na rozmowie kwalifikacyjnej.

Adroid czy JEE ?? No nie wiem, czy JEE jest takie oczywiste. Jest na pewno trudniejsze do nauki ze względu na ilość składowych technologii, ale Android może być czarnym koniem Javy. Świat dąży do minimalizacji, JME się nie sprawdziło, Android zaczyna panować na rynku telefonów komórkowych. Technologicznie wyprzedza Mac'a, Symbiana, Windowsa, dzisiaj jest fenomenem.

Ja w tym momencie idę w JEE (też jestem początkującym programistą), ale jak sobie kupię telefon z Androidem, to zagłębię się w tą technologię nawet z głupiej ciekawości.

konto usunięte

Temat: Java - ćwieczenia

Popieram mojego imiennika w 100%

Od siebie dodam jeszcze parę rzeczy - pisz nawet głupie pętle analizuj co się dzieje, breakuj sobie je, continue.
Spróbuj nadpisać metody sortujące tablice, ćwicz z tworzeniem 3 tablicy o zawartości tablic t1[n1] i t2[n2] i takie tam - to ważne.
Ze swoich potyczek wiem, że najłatwiej zrobić błąd w rzeczach oczywistych, na które nie zwracasz uwagi.
 Np. bitowe XOR (^) i zadanie typu
int a=10; //1010
int b=5; //0101
i co będzie wynikiem typu (byte) a^b.
Dodatkowo pobaw się StringBuilder i StringBuffer i spróbuj pobawić się z zadaniami typu:

String x = "Hello";
StringBuilder c = new StringBuilder(" World");

String d= x+c;
System.out.println(d);


I wiele wiele innych to są tylko przykłady - daję CI wytyczne po kilku testach wiedzy, tak samo pamiętaj o np:
 char = 'p'; 
to tak naprawdę int bo to ma odpowiednik w tablicy unicode

Wybieraj firmy, które mają długi test (np 60 pytań z 2-3 technologii Javowych) w postaci np pytania:
Gdy używasz POST to którą metodę w servlecie nadpisujesz:

A) doGet(HttpServletRequest request, HttpServletResponse response)
B) doPost(HttpRequest request, HttpResponse response)
C) doGet(HttpServlet request, HttpServlet reposnse)
D) doPost(HttpServletRequest request, HttpServletResponse response)



Dlaczego o tym piszę? Bo spotkałem się z naprawdę debilnymi pytaniami i wyjaśnij paru osobom np dlaczego garbaty ma dzieci proste ;)

Nie a tak szczerze, bo jak jest dużo pytań z narastającą skalą trudności typu:

Java: bardzo łatwe, łatwe, trudniejsze , trudne, bardzo trudne,certyfikacyjne
JSP: bardzo łatwe, łatwe, trudniejsze, trudne,bardzo trudne, certyfikacyjne

TO jak okaże się że np: Java
bardzo łatwe - ok
łatwe - błąd
trudne- ok
bardzo trudne - błąd
certyfikujące- OK

JSP:

bardzo łatwe - OK
łatwe- OK
trudne - błąd
bardzo trudne- OK
certyfikujące OK

To taka osoba widzi, że aha no tak tutaj się walnął (Java, łatwe) ale zrobił wiele tamtych trudnych dobrze, to niedopatrzenie albo zły dzień.

A co będzie jak masz 10 pytań, które są czasami tak cholernie głupie, że nijak ma się to do rzeczywistości? Co wtedy sobie myśli o osoba która zobaczy, że po 1-2 pytania z Javy typu:
łatwe- OK
trudniejsze - BŁĄD
co sobie pomyśli?

Przepraszam za długą wypowiedź, ale jeszcze raz podkreślę może najważniejsze - zajmij się Java + J2EE (JSP, servlety) i ćwicz ćwicz ćwicz nie pchaj się dalej póki nie wiesz, nie przerobiłeś tego dokładnie bo to nie ma sensu (widzę z własnego doświadczenia) , lepiej opanować Java SE i J2EE dobrze, niż mieć szczątkową wiedzę z wszystkiego.

Pozdrawiam.

konto usunięte

Temat: Java - ćwieczenia

Dziękuję Wam wszystkim bardzo za odpowiedzi :)Wiem, że oczywiście częste ćwiczenia są najlepszą drogą dlatego właśnie poza własnymi pomysłami szukałem też jakichś zadań w necie.

W javie najbardziej mnie przeraża mnogość tych wszystkich frameworków i technologii, no ale może jak już będę się czuł pewnie z SE (ewentualnie Androidem) to reszta przestanie wydawać się taka straszna :)

Następna dyskusja:

Programista JAVA pilnie pos...




Wyślij zaproszenie do