Wskocz na Androida lub najpierw naucz się podstaw języka Java? [Zamknięte]

15

Jestem dość biegły w C i znam trochę C ++, ale nigdy nie dotknąłem Javy. Niedawno wpadłem na pomysł aplikacji, która moim zdaniem ma potencjał i chcę ją rozwinąć.

Najpierw planuję system Android, ponieważ nie wymaga komputera Mac / iPhone.

Więc moje pytanie brzmi: czy mogę przejść od razu do nauki programowania na Androida, zbierając składnię Java w miarę potrzeb i potrzebując jej (w końcu nie sądzę, że różni się znacznie od C / C ++), czy powinienem wziąć kilka tygodnie, aby najpierw nauczyć się podstaw języka Java, a następnie zacząć od programowania Androida?

Daniel Scocco
źródło
17
Miyagi mówi: Najpierw naucz się chodzić, a potem naucz się latać Daniel-san.
Joel Etherton
Sprawdź to i pokaż mi swój wielki uśmiech oreilly.com/android/index.html
Chiron
4
Krótka odpowiedź: najpierw poznaj Javę, zanim zaczniesz programować na Androida. Może to wydawać się dość proste dla twojej podstawowej hello worldaplikacji, ale wszystko jest bardziej skomplikowane i będziesz mieć problemy podczas debugowania tylko dlatego, że nie jesteś świadomy niektórych dziwactw. Spróbuję opublikować dłuższą odpowiedź (wskazując kilka błędów debiutujących, które napotykam na SO), kiedy będę miał trochę czasu.
Marvin Pinto,
Chcesz uzyskać trochę biegłości w Javie. Więc poświęć kilka miesięcy na naukę OOP. Java jest językiem obiektowym. Jeśli więc nauczysz się OOP, szybko zrozumiesz java: weź udział w kursie „Master Object Oriented Design” na eliminatecodefear.com - jednym z najlepszych zasobów do nauki praktycznego projektowania obiektowego i programowania z zadaniami HW
Tazo Man

Odpowiedzi:

16

Osobiście sugeruję najpierw zapoznać się z Javą, abyś nie spędzał dużo czasu na przeglądaniu tego i googlowaniu. To zabije twoją produktywność.

A jeśli wolno mi zasugerować kilka książek, to proponuję Head First Android Development i / lub programowanie Androida .

Z drugiej strony, a ponieważ jesteś biegły w C i biegle w C ++, rozwój iOS powinien być naprawdę łatwiejszy do wyboru, ponieważ Objective-C jest minimalnym językiem programowania zbudowanym na C. Ale oczywiście to twoja rozmowa.

Chiron
źródło
Tak, rozważam również iOS. Po prostu nie chciałem kupować Maca, ale myślę, że mógłbym kupić Mini.
Daniel Scocco,
@daniels Tak, rzeczywiście, Mac Minis są zdolnymi, świetnymi i możliwymi do uruchomienia maszynami.
Chiron
Ponadto, ucząc się języka Java, najpierw zapoznasz się z podstawowymi interfejsami API, których i tak będziesz używać w systemie Android.
Kemoda
Czy Head First Android faktycznie jest dostępny inny niż podgląd online (który podobno jest bałaganem)?
Eoin Carroll
11

Myślę, że powinieneś po prostu wskoczyć. Java jest na tyle podobna do C ++, że wszystko, co będziesz musiał pokonać, to garb składniowy. Powinieneś po prostu zdobyć dobre referencje, takie jak dietel, jak programować książkę i po prostu idź. Dowiesz się, czego potrzebujesz, idąc dalej. Twoje doświadczenie w programowaniu pomoże Ci szybciej zacząć tworzyć aplikacje.

Sugerowałbym także Przewodnik po kodach dla Androida i nowo opracowany przewodnik dla programistów Androida

Książka jest warta zakupu, ponieważ autor książki jest bardzo aktywny i może pomóc ci wiele przejść przez krzywą uczenia się.

Mam nadzieję że to pomoże

B Woods
źródło
29
Java is similar enough to C++Co do ... Och, masz na myśli składniowo. Nie, nie jest, chyba że pętle są apogeum twojej kariery.
yannis
„chyba że pętle są apogeum twojej kariery”. To dobra linia :)
Daniel Scocco
2
@ZaphodBeeblebrox: Jak na ironię, jeśli pętle są apogeum kariery, to prawdopodobnie są także perygeum tej kariery.
Joel Etherton
Czy ten „Zajęty przewodnik po koderach” nie jest trochę przestarzały? Ma 4 lata
Konrad Morawski
1
@YannisRizos: C ++ ma jedną formę pisania pętli for, Java ma dwie. Więc nawet osoba C ++ całkowicie skupiona na korzystaniu z pętli for powinna założyć, że zna tylko 50% Java. : D
Viliam Búr
3

Bawiłbym się Javą przez kilka dni, żeby zobaczyć, czy ci się spodoba, a potem po prostu skoczyć w prawo, nie ma lepszego sposobu na naukę niż brudzenie rąk.

Twoje doświadczenie w programowaniu pomoże ci. Istnieje wiele dobrych stron z samouczkami, które mogą ułatwić Ci korzystanie z Androida i Java, po prostu spróbuj google. Przede wszystkim CIESZ SIĘ!

Wata cukrowa
źródło
3
Dodam, że prawdopodobnie możesz uciec od 1-2 dni solidnego wysiłku na tym froncie lub sięgnąć po książkę, taką jak Head First Java (istnieje również nazwa Java dla programistów C ++, jak pamiętam). Kluczem jest pamiętać, że Android! = Java, używasz dużo tej samej składni, ale to inna maszyna wirtualna, która uruchamia kod, niektóre rzeczy są dozwolone / ograniczone, inne nie są itp.
Martijn Verburg
2

czy powinienem poświęcić kilka tygodni, aby najpierw nauczyć się podstaw języka Java, a następnie zacząć od programowania na Androida?

Biorąc pod uwagę, że kierujesz reklamy na Androida, warto po prostu wybrać ich oficjalny samouczek z zakresu Pierwsze kroki i rozpocząć naukę. Jeśli po drodze jest konieczne / pożądane studiowanie języka Java, można się spodziewać, że zostanie to wspomniane w tym samouczku.

Według moich wspomnień wczesne wersje samouczków na Androida były w akceptowalnej jakości. Przez jakiś czas nie pracowałem z tym.

komar
źródło
0

Odpowiadając na dość stary wątek, ale musiałem, ponieważ żadna z odpowiedzi ani komentarzy nie uwypukliła tego, co uważam za bardzo ważny punkt, tj. „Nauczenie się programowania obiektowego (OOP)”. Zwłaszcza w świetle tego, co napisał OP: -

... całkiem biegły w C i znający trochę C ++, ale nigdy nie dotknął Javy ...

Może to oznaczać, że umiejętności programowania obiektowego (i potencjalnie projektowania) OP mogą wymagać wsparcia. Przynajmniej tak się stało w moim przypadku i powiedziałbym bardzo podobne oświadczenie.

Sugeruję nauczenie się tego, co nazywa się „Core Java”, i stanie się biegłym, a wtedy przejście na programowanie na Androida wydawałoby się znacznie łatwiejsze. Zaletą tego podejścia jest to, że Java wymusza OOP, w następujący sposób -

  • Czysty (jak w sensie purytańskim)
  • Łatwy do uchwycenia (jak w prostocie)
  • Jedyny sposób (zamiast mieć alternatywę inną niż OOP)

Ponadto „Core Java” można nauczyć się dość szybko dla kogoś, kto już dość dobrze zna C / C ++.

icarus74
źródło
0

Postanowiłem przejść od razu do Androida i nauczyć się Java. Rozpoczęcie jest zwykle łatwe - możesz uzyskać Narzędzia dla programistów Androida z witryny dla programistów Androida, gdzie znajdziesz również tutoriale, które pomogą ci zrobić pierwsze kroki.

Jednak bez odpowiedniej znajomości języka Java rozwój Androida wkrótce staje się przytłaczający (przynajmniej tak się stało dla mnie). Na szczęście istnieją tutoriale dla tych, którzy chcą nauczyć się języka Java wyłącznie na potrzeby programowania w systemie Android . Można je znaleźć tutaj (są one przeznaczone dla osób, które znają już inny język, np. C ++ / VisualBasic / itp.).

Jednym ze sposobów sprawdzenia, czy masz wystarczającą wiedzę, aby rozwijać się w Androidzie, jest zarejestrowanie się w Android MOOC (takim jak ten ) i sprawdzenie zadań . Logika tego podejścia jest następująca: ponieważ celem jest tworzenie Androida, możesz od razu spróbować. W ten sposób uświadomisz sobie, co możesz zrobić i czego jeszcze musisz się nauczyć. Ponadto zawsze możesz poświęcić trochę czasu na doskonalenie swoich umiejętności Java.

Powodzenia w wybieraniu najbardziej efektywnego dla Ciebie sposobu!

Lilly M.
źródło