Programming Language
First off, I’d like to say that I’m writing these
preliminary posts in a way that I’ll assume you have very little knowledge in
programming. I want this content to provide anyone “walking in off the
street” the knowledge to be able to write their first program with the Java
programming language with as little pain as possible.
So, let’s get started with our first
topic: The 5 basic concepts of any programming language. You might say,
“Why are we talking about any programming language? I thought this was
about Java”. Well, I’ve found that it’s important to remember that a lot
of programming languages are very similar, and knowing what’s common between
all programming languages will help you transition into any other programming
language if you need to! For example, with the Java programming knowledge
I had obtained, it took me less than a month to learn how to program in a
language called Objective C (which is used for iPhone apps). That’s
powerful stuff!
Before we start learning: I’d highly recommend you subscribe to
my free Java email course, over 9,000 beginner programmers have
signed up and they email me almost every day saying how much they love it.
So here are
the 5 basic concepts of any programming
language:
4. Syntax
5. Tools
I recognize
that these words probably look foreign to you, but don’t worry, I’ll do my very
best at taking the mystery out of them. Now, there’s a lot to say about
each of these 5 concepts, so for today’s post I’ll only be talked about item
#1, variables!
What
is a variable?
Variables are the backbone of any
program, and thus the backbone of any programming language. I like to start off
by defining what we’re about to learn, so, Wiki defines a variable as follows:
In computer
programming, a variable is a storage location and an associated symbolic name which
contains some known or unknown quantity or information, a value.
Okay, well, that’s kind of cryptic.
To me, a variable is simply a way to store some sort of information for
later use, and we can retrieve this information by referring to a “word” that
will describe this information.
For example,
let’s say you come to my website www.howtoprogramwithjava.com and the first
thing I want to do, is ask you what your name is (so that I can greet you in a
nice way the next time you visit my website). I would put a little text
box on the screen that asks you what your name is… that text box would
represent a variable!
Let’s say I called that text box ‘yourName’, that would be the symbolic name (or
“word”) for your variable (as described from our wiki definition above).
So now, when
you type your name into the text box, that information would be stored in a
variable called ‘yourName’. I would then be able to come back and say
“What value does
the variable‘yourName’
contain?”, and the program would tell me whatever it was your typed into that
text box.
This concept is extremely powerful in
programming and is used constantly. It is what makes Facebook and Twitter
work, it’s what makes paying your bills via your online bank work, it’s what
allows you to place a bid on eBay. Variables make the programming world
go ’round.
Now, if we
want to get more specific, when it comes to the Java programming language,
variables have different types.
Brace
yourself here, as I’m going to try to confuse you by explaining an important
concept in three sentences. If I were to be storing your name in a
variable, that typewould
be a String. Or, let’s
say I also wanted to store your age, that type would be stored as anInteger.
Or let’s say I wanted to store how much money you make in a year, that type would be stored as a Double.
What the
heck are String, Integer and Double?
Excellent
question! In Java, the programming language wants to know what kind of information you are going to be storing in a variable.
This is because Java is a strongly
typed language. I could teach you about what the
difference is between a strongly typed language and a weakly typed language,
but that will likely bore you right now, so let’s just focus onwhat
a type is in Java and why it’s important.
Typing in Java, allows the programming language
to know with absolute certainty that the information being stored in a variable
will be ‘a certain way’. So like I said, if you’re storing your age, you
would use the Integer type… well that’s because in Java, an Integer means you have a number that won’t
have any decimal places in it. It will be a whole number, like 5, or 20,
or 60, or -60, or 4000, or -16000. All of those numbers would be
considered an Integer in Java.
So what would happen if you tried to
store something that wasn’t an Integer, into an Integer variable, say for
instance the value “$35.38″? Well, quite simply, you would get an error
in the program and you would have to fix it! “$35.38″ has a dollar sign
($) in it, as well as a decimal place with two digits of accuracy. In Java,
when you specify that a variable is of type Integer, you are simply not allowed
to store anything except a whole number.
Specifying
what kind of data that you are dealing with allows the programming language to
use that data in interesting ways. Again, what I say “specifying what kind of
data”, I’m just referring to the type of data.
Let’s dive
into the power of assigning a type to your data.
What
can you do with data types?
Let’s start with a simple example.
Your desire is to add two numbers
together, let’s say the number 22 and the number 3. Java will behave
differently depending on the type of the variable that’s storing this data.
Let me show you what I mean:
If you have
defined your variables to be of type Integer,
then adding 22 and 3 together will result in the Integer 25. Makes perfect sense right? Of
course, this is simple Math.
But what
happens if your variables are not Integers,
but are Strings?
A String in Java is a different kind of data
type and it behaves differently BECAUSE it is a different type of data.
When we
refer to a String in Java (and in many other programming
languages) we are treating the data like it’s just a plain old sentence in the
English language. A String just represents words (or more specifically letters)
all placed in a certain order. That’s all the English language (or any
language) is, a series of characters/letters placed in a certain order to give
meaning to what you’re writing down.
So now I ask
you, what does it mean to add two sentences together? What does it mean to add
twoStrings together?
I’ll show you.
If you were
to have two variables, each defined as Strings and they stored the data “22” and “3”
(respectively), what would happen if we added them together?
We would get
the String: “223”
This might be confusing at first, but it
makes more sense when we use less “misleading” data.
Let’s assume
that in our two String variables, we aren’t storing numbers,
we’re storing words. So in variable 1 we store the String “Hello”, and in
variable 2 we store the String “World”.
Now what happens in your mind if I tell
you to add those two words together?
Hopefully your natural instinct is to say
that the resulting String would be “Hello World”!
That’s all
that’s happening with the Strings “22” and “3”… Java behaves differently
because of thetype of
the variables.
To Java, the String “22” is the same type of data as the String “twenty-two”,
they’re both characters arranged in a specific way.
Now I don’t
want to go into too
much detail about types, as this is better
suited to programming basic concept #3 – Data Structures. So that’s all I
will touch on for now, but no worries, it will all make sense in time!
No comments:
Post a Comment