DEV Community

Discussion on: Java Developers, What's in Your Toolkit?

Collapse
 
jmfayard profile image
Jean-Michel πŸ•΅πŸ»β€β™‚οΈ Fayard • Edited

Language: Kotlin
Frontend: Angular/Typescript
Desktop app: tornado FX
IDE : Jetbrains IDEA
build system: gradle
Server side: spring boot, http4k, ktor, GraphQL

A word of caution: "catching up with Android development" is a full time job or more, I wouldn't recommend it as a side thing

Collapse
 
awwsmm profile image
Andrew (he/him)

Yeah I meant it more as "trying to get a flavor for" Android development. Maybe make a small app or two to understand the process. Do you know of any good resources?

Collapse
 
jmfayard profile image
Jean-Michel πŸ•΅πŸ»β€β™‚οΈ Fayard

Avoid at all costs the official Android documentation, it's bad.

I would recommend those tutorials
raywenderlich.com/

Thread Thread
 
awwsmm profile image
Andrew (he/him)

Thanks, Jean-Michel! And thanks for the discussion with Corey! I'll check out the resources you recommended as well as developer.android.com (taking the latter with a grain of salt).

Collapse
 
johnson_cor profile image
Corey Johnson

I would honestly recommend just working through the developer.android.com/ tutorials; they give you a good overview of how things work! Patience is key though, it takes a while to really grasp how everything works together

Thread Thread
 
jmfayard profile image
Jean-Michel πŸ•΅πŸ»β€β™‚οΈ Fayard

As I said, I would actually recommend avoiding that resource.

I take seriously this honest admission by Diane Hackborn that the Android team doesn't really know or care how you should build your app

cnblogs.com/jarvisyin/p/6361184.html

Thread Thread
 
johnson_cor profile image
Corey Johnson

I think it's great that you're providing other resources, but I don't quite understand why you would knock the official documentation since there are resources there that aren't just tutorials. I know it's not perfect, but it can be a good starting point to investigate things further. I've looked at reywenderlich in the past and found their tutorials really helpful.

Thread Thread
 
jmfayard profile image
Jean-Michel πŸ•΅πŸ»β€β™‚οΈ Fayard • Edited

I feel that the android documentation is preaching a lot of bad things, in particular all the examples still tell you to put your logic inside God Activities, Fragments, Context, ...

I also feel that they are not talking about lots of good libraries, just because they do not come from them, but do talk about a lot of bad libraries, just because they come from them.

I was probably too harsh, do read the parts of the developer.android.com that are good, like Room for example. But always keep a critical mind and use other sources as well. Learn Kotlin from Jetbrains for example.

Thread Thread
 
johnson_cor profile image
Corey Johnson

I agree that often times they recommend particularly unhelpful resources. The worst offender in my opinion is the networking libraries. I have NO idea why they do not recommend okhttp and retrofit. Maybe one day they'll open source their docs so the community can help maintain them

Thread Thread
 
jmfayard profile image
Jean-Michel πŸ•΅πŸ»β€β™‚οΈ Fayard

It's simple,
Retrofit and okhttp do not come from them so they don't document it.
AsyncTask and IntentService do come from them so they document it.

It makes sense from their perspective, but from the perspective of someone learning how to build the app, you end up not learning about the right thing.

Collapse
 
johnson_cor profile image
Corey Johnson

What do you mean; Android doesn't change that fast. \s

Once I took a 6 month break from Android development and literally everything had changed. Fragments were now considered a compat library class, ViewModels and live data were king, and there was this looming nightmare for existing projects called AndroidX