Posted December 31, 2011
I'll begin by saying that I'm really terrible at programming, and it's been about a year since the last time I touched Java (or any other programming language). Now I've decided to learn some Java somewhat properly, and would like some suggestions for good Java tutorials/books/stuff that'd help me with it.
A year ago, I managed to make a Dr. Mario clone with Java, but the code was a mess. The idea behind object oriented programming has eluded me completely, and I mainly use objects because I'm told to do so, and then I use them as code block libraries that just make the code into more of a mess. My documentation is awful as well, since usually I don't know what I'm doing until I've done it, and then I can't remember what which part did anymore (I guess that's just my lack of planning).
In order to someday graduate, I "need" to pass this one Java course where I'm supposed to make a program that shows I understand object oriented programming, is properly documented and somewhat fully covered by JUnit testing. At this moment, I couldn't fulfill any of those requirements, since I'm not even quite sure how that JUnit testing works and what I'm supposed to do with it (the examples/explanations I've read haven't been very good at making me understand what use it has).
Also, I handled errors in a really general way, because the materials I had only had 2 very general examples and I only knew how to use those 2 (now I've forgotten even those, something about throwing and catching and everyone howling in horror).
I took 2 Java beginner courses in my University, but I was so swamped with other stuff that I couldn't attend the lectures, so I just read the course materials and spent a lot of time programming. Missing the classes is the probable cause to my inability to comprehend anything about Java, or maybe it's that my sister taught me to design webpages using HTML tables when I was a kid and I kept doing it until 2008.
I'm gonna be mega swamped again, so I don't have time to retake the classes.
So basically what I'd need is knowledge about:
-efficient Java programming
-object oriented programming
-Java documentation
-what is up with JUnit anyway (my guess is that I'd need to know Java better to get this)
-error handling
...which, I guess, can be summarized as "basic Java programming".
I've heard that there are some really awful programming books/materials that you're better off not touching, so I figured I'd ask here (and I'd prefer good quality anyway if I'm going to pay for it).
A year ago, I managed to make a Dr. Mario clone with Java, but the code was a mess. The idea behind object oriented programming has eluded me completely, and I mainly use objects because I'm told to do so, and then I use them as code block libraries that just make the code into more of a mess. My documentation is awful as well, since usually I don't know what I'm doing until I've done it, and then I can't remember what which part did anymore (I guess that's just my lack of planning).
In order to someday graduate, I "need" to pass this one Java course where I'm supposed to make a program that shows I understand object oriented programming, is properly documented and somewhat fully covered by JUnit testing. At this moment, I couldn't fulfill any of those requirements, since I'm not even quite sure how that JUnit testing works and what I'm supposed to do with it (the examples/explanations I've read haven't been very good at making me understand what use it has).
Also, I handled errors in a really general way, because the materials I had only had 2 very general examples and I only knew how to use those 2 (now I've forgotten even those, something about throwing and catching and everyone howling in horror).
I took 2 Java beginner courses in my University, but I was so swamped with other stuff that I couldn't attend the lectures, so I just read the course materials and spent a lot of time programming. Missing the classes is the probable cause to my inability to comprehend anything about Java, or maybe it's that my sister taught me to design webpages using HTML tables when I was a kid and I kept doing it until 2008.
I'm gonna be mega swamped again, so I don't have time to retake the classes.
So basically what I'd need is knowledge about:
-efficient Java programming
-object oriented programming
-Java documentation
-what is up with JUnit anyway (my guess is that I'd need to know Java better to get this)
-error handling
...which, I guess, can be summarized as "basic Java programming".
I've heard that there are some really awful programming books/materials that you're better off not touching, so I figured I'd ask here (and I'd prefer good quality anyway if I'm going to pay for it).