Redd said:
Yeah I have begun going through some Java tutorials on the internet because I am rather concerned about it. I will definitely see what I can learn over break.
Hopefully, that will help you out a great deal. Pick a couple small "projects" for break and try to get them working. Like, say, a short "Guess what number I'm thinking of?" game, where you get "higher" and "lower" clues from the computer until you guess correctly. Or something that reads in some text you enter, and prints it out backwards. That sort of low-level simple task.
Fortunately, you're not planning on being a programmer, so it's not vital to you to know how strings are stored compared to floating point numbers, or the other nuances that are good to know if you're pursuing a career in programming.
Redd said:
1. The recommended pre-requisite knowledge did not seem particularly large, but I do not really know what any of those listed things are. Are they particularly difficult concepts?
Not really. The trick is really to think in those terms. The classic example is "write a program to sort this list of numbers". If you give that problem to a human, they just sort of "do it". But when you write a program to do that task, you suddenly have to break it into small steps, like "IF statement A is true, THEN do something, ELSE do something else". Similarly, things like "Repeat this step starting at point D".
Each one of the concepts they mention is just a different type of thing that a computer can do, like "IF, THEN, ELSE", or "LOOP X TIMES" or "PERFORM A NAMED TASK USING X AS INPUT". Specifically:
- variables
Learn how to establish variables (the type of variable (integer, string, character, floating point number, etc), the starting/default values of them, and how to reference them in code)
- expressions
Learn how to change the value of a variable
- loops
There are a lot of types of loops. Such as "perform this task until statement A is true", or "do this task X times"
- conditions
Things like IF(X) THEN DO (Y) ELSE DO (Z)
- arrays
These are special types of variables, akin to a data set in mathematics. So, you may have an array of integers, an array of characters, an array of floating point numbers, etc. In other words, know how to reference variables that aren't your standard X = 12 types of variables, but instead are X = [12, 15, 97, 22, 10]
- methods
Similar to "functions" in mathematics. For a given set of inputs, perform a function F(x) on it. So you might have (for example) a function that finds the mathematical median of a set of numbers, or does some other task-- particularly a task that you may want to use frequently.
Redd said:
a math professor next semester who told me to skip the intro class if "I knew what a mouse and a monitor were"
Granted, I have no idea what the course is like-- depends where they end the curriculum for the intro level course. It might be more basic than I'm imagining it, but it's hard to say.
For the record, our "final" project for our intro level course was to make a VERY basic word processor. You'd enter something like "I 52", and then "Hello Bob", and it would insert "Hello Bob" into the text that it already had, at position 52. Similarly, there was a delete command, a "print" command to display the whole text, and probably some other simple functions. All on the command line, of course-- no windowed applications or anything.
DaveE