Struggling with intro to CS, need some guidance

I’m taking the first intro course (Java), I’m struggling when it comes to labs and homework.
I don’t know to memorize codes, and I don’t know how to study CS in general.

Also, the class seems messy. We were given tasks that we have never learned before. There’re some guidance, but not much. Most of the time I do my lab work and homework by googling “what are the codes to draw a X” or “how to change X to Y”, etc. Is this the correct way to learn CS? And is CS supposed to be 80% self-taught?

Can anyone give me some guidance on how to study CS or memorize codes? I really appreciate it.

If you try to learn CS by memorizing, you aren’t going to have a fun or sucessful time.

CS in general is about problem solving: there’s no textbook that will help you solve every problem: part of what you’re learning is how to solve problems in general. Getting guidance but new and unseen tasks will be every CS class you take.

As far as self-taught, you should see the material and similiar problems before you see them in lab and homework, but you will learn the most with homeworks and labs for sure. I don’t consider that self-taught though - you should be seeing similiar things in class - not the exact specifics, but something close.

When it comes to googling, that’s very common - every langauge has differnet libraries and syntax - everyone looks those up - what should be the same is the capabilities of each langauge, and you should know enough to be able to search in the right places quickly, or google the right thing. Those are the things you will come to memorize without effort - that langauges of this type do x, y, and z.

The best study strategy is to do practice problems / projects / labs - you won’t be able to study CS by memorization.

I agree with @PengsPhils on all those points.

Also, (this holds for any class) if you find yourself struggling with something, go to office hours! The professor/TA can not only help you with the content, but help you figure out how to think about the problems and study effectively for CS. Studying CS is different than a lot of other subjects, especially if you’ve never encountered it before; they likely know the types of problems students run into and how to help.