d2jsp
Log InRegister
d2jsp Forums > Off-Topic > Computers & IT > Programming & Development > Online Java Courses > Free?
Add Reply New Topic New Poll
Member
Posts: 915
Joined: Nov 4 2017
Gold: 16,241.00
Jul 11 2020 01:54pm
Does anyone have any useful links to help get better with Java programming? I just finished my first year, but I'm not too sure if my school is teaching enough/at a good pace, and I would like to get a bit ahead.

I just finished programming basic GUI, but the pandemic kind of made it an awkward semester and it was more self-learning.

I think my next classes include OOP and Data Structures? I tried basic Python stuff the past month and would like to get back to Java for the next semester.

Any resources will be appreciated and thanks in advance!
Member
Posts: 1,204
Joined: Jan 3 2009
Gold: 1,772.00
Jul 13 2020 01:23am
I wouldn't bother with Java GUI. It is extremely outdated. OOP and Data Structures, on the other hand, were the most useful courses I ever had. If you've already had a year of Java, try implementing simple data structures on your own. For example, try to understand what a "linked list" is and implement it yourself in Java. After that, find an already implemented linked list and compare.
Member
Posts: 915
Joined: Nov 4 2017
Gold: 16,241.00
Jul 13 2020 06:49am
Quote (Elldorin @ Jul 13 2020 03:23pm)
I wouldn't bother with Java GUI. It is extremely outdated. OOP and Data Structures, on the other hand, were the most useful courses I ever had. If you've already had a year of Java, try implementing simple data structures on your own. For example, try to understand what a "linked list" is and implement it yourself in Java. After that, find an already implemented linked list and compare.


Okay, thanks for the information! I'll focus on those two classes when the time comes.
Member
Posts: 17,374
Joined: Jul 6 2007
Gold: 12,143.67
Jul 18 2020 02:12pm
Unfortunately have to agree about OOP. If you are already syntactically familiar with Java and you find yourself struggling it's likely because working in an OOP paradigm is disorienting.

DS/A will be useful finding a job for technical interviews, and understanding how they work under the hood is important, but keep in mind that it's likely you will never have to implement them yourself.

Above all, the most important thing to learn is that reading programs will always be more challenging than writing them, and so if you have a chance to contribute to an existing codebase, knowing what questions to ask is the most valuable skill.

All that said, I find it much easier to reason about declarative programs, so if you're able to implement aspects of functional design into your Java programs they'll be easier to read, test, and maintain.
Member
Posts: 1,367
Joined: Aug 11 2019
Gold: 91,307.78
Jul 18 2020 02:46pm
Quote (Elldorin @ Jul 13 2020 03:23am)
I wouldn't bother with Java GUI. It is extremely outdated. OOP and Data Structures, on the other hand, were the most useful courses I ever had. If you've already had a year of Java, try implementing simple data structures on your own. For example, try to understand what a "linked list" is and implement it yourself in Java. After that, find an already implemented linked list and compare.


This.

As for courses try to snag free ones from "udemy" I reddit r/learnprogramming posts what courses are free.
This seems useful https://online-learning.harvard.edu/course/cs50-introduction-computer-science?delta=0

I like this guy for data structures: https://www.youtube.com/channel/UCmJz2DV1a3yfgrR7GqRtUUA

This is the best site I know to practice for interviews: https://leetcode.com/ (can create a free account and practice data structures)
(again practice linked lists, hashtables, search algorithms, sort algorithms, greedy algorithms etc....) don't just watch videos. Find problems and code them practically without having to look them up. Until you can achieve this point you haven't learned the concept fully.

If have anymore questions feel free to DM me.

This post was edited by voidqueen on Jul 18 2020 02:55pm
Member
Posts: 915
Joined: Nov 4 2017
Gold: 16,241.00
Jul 18 2020 10:42pm
Noted! I'll study and practice OOP/Data Structures immensely

Thanks for the guidance guys, and I'll be sure to check out the links, voidqueen
Member
Posts: 1,204
Joined: Jan 3 2009
Gold: 1,772.00
Jul 19 2020 04:46am
Quote (Nereaux @ 18 Jul 2020 23:12)
Unfortunately have to agree about OOP. If you are already syntactically familiar with Java and you find yourself struggling it's likely because working in an OOP paradigm is disorienting.

DS/A will be useful finding a job for technical interviews, and understanding how they work under the hood is important, but keep in mind that it's likely you will never have to implement them yourself.

Above all, the most important thing to learn is that reading programs will always be more challenging than writing them, and so if you have a chance to contribute to an existing codebase, knowing what questions to ask is the most valuable skill.

All that said, I find it much easier to reason about declarative programs, so if you're able to implement aspects of functional design into your Java programs they'll be easier to read, test, and maintain.



I agree with everything you said, but even though I've never had to implement any of the data structures I studied in that course in the "real world", it was the course that taught me how to think like a programmer. I would go as far as to say that it was the most important course overall (maybe my lecturer was good).

Furthermore, if you implement a simple data structure like linked list, you will see OOP in practice. We actually had both courses run simultaneously.
Member
Posts: 17,374
Joined: Jul 6 2007
Gold: 12,143.67
Jul 20 2020 10:19am
Quote (Elldorin @ Jul 19 2020 03:46am)
I agree with everything you said, but even though I've never had to implement any of the data structures I studied in that course in the "real world", it was the course that taught me how to think like a programmer. I would go as far as to say that it was the most important course overall (maybe my lecturer was good).

Furthermore, if you implement a simple data structure like linked list, you will see OOP in practice. We actually had both courses run simultaneously.


Sure, maybe I didn't clarify well enough regarding DS/A, what I meant to say is that the process of solving challenging problems is the key takeaway along with being able to recognize patterns and identify the right tool for the right job, much more so than if you can write quicksort from memory or write an interface for a priority queue.

@op, I guess what we are all trying to say is that you shouldn't get hung up on the language details of java, since that's likely not where you're running into friction, because you can always Google the syntax.
Member
Posts: 1,478
Joined: Jan 19 2016
Gold: 0.00
Aug 3 2020 10:49pm
Quote (BlackMarketMime @ Jul 11 2020 12:54pm)
Does anyone have any useful links to help get better with Java programming? I just finished my first year, but I'm not too sure if my school is teaching enough/at a good pace, and I would like to get a bit ahead.

I just finished programming basic GUI, but the pandemic kind of made it an awkward semester and it was more self-learning.

I think my next classes include OOP and Data Structures? I tried basic Python stuff the past month and would like to get back to Java for the next semester.

Any resources will be appreciated and thanks in advance!


in all honesty, most programming classes are self learning. have you checked out thenewboston on youtube? he has some pretty good video tutorials.
Go Back To Programming & Development Topic List
Add Reply New Topic New Poll