Space Inviders - J2ME, Podstawy

0

Witam,
Chciałem/Postanowiłem nauczyć się pisać w J2EM (od tak, żeby na urządzeniach mobilnych nie kuleć). Programowania troszeczkę liznąłem. Moje pytanie brzmi jak się za to wziąć. Java składa się z wielu klas i wiele rzeczy jest podane na talerzu.
Moja wizja projektu wyglądała jako lista dynamiczna z obiektami statek i pocisk + wątki rysujecie to - po lekkim zapoznaniu się z J2SE (i mały projekciku) zauważyłem, że tam nie trzeba wszystkiego robić samemu jak w c/c++ . Z tego co poczytałem, Java zrobi większość za mnie. Czy mógłbym prosić o ukierunkowanie mnie na konkretne klasy i standardy, których używa się dzisiaj? Czego użyć, o czym poczytać itd.?

P.S. Zależy mi na jakiejś podstawowej animacji, jakimś GUI (na samym początku) w stylu "podaj imię" itp.

Pozdrawiam i dzięki za pomoc.

0

Napiszę lekko nie na temat, ale polecam omijać JavęME z daleka. To w zasadzie już trup, a pisanie w JavaME czegoś nietrywialnego to samobójstwo. Polecam wziąć się za Androida, zwłaszcza biorąc pod uwagę fakt, iż jeśli zrobisz fajną gierkę pod Androida to pewnie robotę znajdziesz od ręki i to dobrze płatną i będzie duża szansa, że ta robota nie będzie frustrująca.

0
Wibowit napisał(a):

Napiszę lekko nie na temat, ale polecam omijać JavęME z daleka. To w zasadzie już trup, a pisanie w JavaME czegoś nietrywialnego to samobójstwo. Polecam wziąć się za Androida, zwłaszcza biorąc pod uwagę fakt, iż jeśli zrobisz fajną gierkę pod Androida to pewnie robotę znajdziesz od ręki i to dobrze płatną i będzie duża szansa, że ta robota nie będzie frustrująca.

Mogłby ktoś jeszcze wypowiedzieć się na powyższe?

Pozdrawiam

0

Wibowit ma rację. Dzisiejsze urządzenia mobilne to głównie Android/iOS więc warto wybrać coś z tego.

0
bolson napisał(a):

Wibowit ma rację. Dzisiejsze urządzenia mobilne to głównie Android/iOS więc warto wybrać coś z tego.

Android jest chyba wzorowany na javie - jak bardzo on rożni się od zwykłej javy ME? tylko nazwami klas, metod, a ideologia jest taka sama, czy jest to coś zupełnie coś innego?

0

JAVA to JAVA. Ideologia pisania aplikacji na urządzenia mobilne/desktop/web jest inna ale język pozostaje ten sam. Kwestia wykorzystanych bibliotek.

0
bolson napisał(a):

JAVA to JAVA. Ideologia pisania aplikacji na urządzenia mobilne/desktop/web jest inna ale język pozostaje ten sam. Kwestia wykorzystanych bibliotek.

Właśnie o te biblioteki mi chodzi. Cała trudność tak naprawdę opiera się na tym, żeby je poznać. Tutaj moje pytanie, czy one się tak bardzo między sobą różnią ? (J2ME vs Android) Czy są to niewielkie różnicę a la nazwy

1

Język Java jest już w obecnie siódmej wersji, a z każdą wersją ciągną się jakieś zmiany (generalnie wstecznie kompatybilne).

JavaME jest oparta na bardzo starej wersji języka Java, bez genericsów i assertów dla przykładu. Android jest oparty na Javie 5 albo 6 (w zasadzie różnica pomiędzy tymi wersjami nie jest znaczna w praktyce). JavaME oparta jest chyba o (nawet okrojone?) JDK 1.1, a więc biblioteka standardowa jest mocno uboga. Mało która świeża biblioteka Javowa jest kompatybilna z JavaME. Z drugiej strony Android jest na tyle kompatybilny z JavąSE 5 czy 6, że bardzo duża ilość świeżych bibliotek działa na Androidzie.

Biblioteki specyficzne dla platformy i sposób pisania:
JavaME, JavaSE i Android to trzy różne bestie i programuje się je w zdecydowanie inny sposób.

0

Można zrobić tak jak autorzy Minecrafta: Robić grę (lub cokolwiek) tak aby wszystko co możliwe opierać na własnym kodzie (i niezależnych bibliotekach, które można włączyć do projektu). Wtedy każda technologia tworzenia GUI czy grafiki stanie się wymiennym modułem - a jego wymiana będzie wymuszała nakład pracy tak mały jak to możliwe. Pracy na początku więcej, ale korzyści spore, a przenośność niemal nieskończona. Nawet jeżeli sobie sztywno założysz, że podstawowym GUI będzie jakiś podzbiór Swinga, a grafiką coś na kształt AWT, to brakujące elementy nie wspierane przez jakąś platformę będziesz musiał sobie po prostu napisać bazując na tym co na konkretnej platformie już jest.

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