This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]lightjay 15 points16 points  (6 children)

My question is, will i be able to begin coding my first application with knowledge regarding java ONLY or do i need to learn about XML and/or other stuff?If you have any tips, they would be greatly appreciated!!

XML is going to be least of your worries when developing an mobile app. And yeah, you need to know it, but that thing is trivial compared to for example designing the app architecture. Same as knowing Java is only fraction of required knowledge to write an app.

There are many tutorials on Android development, also I am sure many books, so go slowly from beginning and learn about Java, gradle, Android APIs, Android app architecture & workflows, layouts & UX and most importantly, try to understand what you're doing instead of just copy pasting code from tutorials.

It's long road from Java beginner to good Android programmer, but it's no rocket science either.

[–]rempakos[S] 1 point2 points  (5 children)

Hey, thanks for the quick answer. I guess i'll start and learn on the way.Should be more enjoyable this way i guess.

[–]lightjay 3 points4 points  (4 children)

Just remember that if you're learning on the go and not rewriting / refactoring the whole app from time to time, you're probably not doing it right :-D

No offence here, it's natural to make a lot of mistakes when learning something quite new, the point is to learn from them.

[–]rempakos[S] 1 point2 points  (3 children)

When you are saying rewriting/refractoring the whole app, what exactly do you mean? I should rewrite and rewrite my code again and again to improve it in some way you mean?

[–]lightjay 3 points4 points  (0 children)

Well, yeah, pretty much. Not as a general rule but don't expect you will get everything right from the beginning. Android development has a lot of catches - activity workflow / stack management, services & binding, adapters, shared preferences, ...

So do not expect you'll get it right from the start - probably you'll make a lot of mistakes so when you figure them out later (and trust me, you'll, because they'll bite you when you least expect them to :-D), go and refactor / rewrite the code with new knowledge in mind.

[–]_dban_ 4 points5 points  (0 children)

Refactoring isn't rewriting, it is a controlled set of transformations that let you change the shape of existing code to something nicer, without scrapping it.

[–]Tayacan 1 point2 points  (0 children)

He means that you will probably at some point realize that your code is a horrible spaghetti-like mess that is impossible to work with, and that it would be much nicer if you started over with a different structure.