Boom! We’re learning to program! Let’s start writing some sweet applications!
Hold up, wait a minute.
We have to start at the beginning… The whole “learn to walk before you run” thing. Actually, this post is more about learning to crawl than walk.
I know it’s not fun or glamorous, but some basic programming fundamentals will go a long way to helping solidify your foundation before trying to build a big house.
Let’s go over a few basic words that will be thrown around like empty promises by a politician during election year!
Let’s say we’re writing some C++ code. Technically C++ code, before being compiled, is just a text file that doesn’t really do anything on its own. Because of this, you could technically write C++ code in Note Pad if you wanted to (but that would be quite difficult, so don’t do that). We use these things called IDEs or Integrated Development Environments to write our code (most of the time).
Wikipedia’s definition of IDE: Software application that provides comprehensive facilities to computer programmers for software development.
Some examples of IDEs would be Visual Studio, Code Blocks, or Eclipse. These are programs that help assist you in writing your code. They help you start projects by creating necessary files and folder structures, help organize newly created objects, and even help you write your code with auto complete and linting.
Oh, look at that… I’ve already used our next word! Linting.
Wikipedia’s definition of Lingting: Refers to tools that analyze source code to flag programming errors, bugs, stylistic errors, and suspicious constructs.
Basically, linting will help point our the error of your ways! Just like that wonderful elementary school teacher that would rack your knuckles with a ruler whenever you weren’t paying attention… (minus the pain). When you first start programming, this can be very helpful. I know that I’ve forgotten a ; too many times to count and my IDE usually lights up and points out the error to me because it has a linter built in. As a new developer, this is definitely an important thing to know about.
So we’ve used our IDE to start writing code and the linter has helped us catch our errors. What do we do to get our text files (source code) to become a program we can run and test?
This is where the compiler comes in.
Wikipedia’s definition of Compiler: Computer software that transforms computer code written in one programming language (source code – C++ in this case) into another programming language (assembly language, object code, or machine code).
I can’t really expound much on Wikipedia’s definition. They point it out pretty clearly. The compiler takes source code and converts it to code that the computer can understand.
Putting it all together:
Most IDEs come with a built in compiler and linter. See how important this information is? So far, everything we’ve discussed is required (or very helpful) to write the most basic of programs.
Say we’re writing a C++ application and the source file is called SecretsOfTheUniverse.cpp. Say this is extremely ground breaking information and we need to give this application to a friend so they can unlock the secrets of the universe just as we have.
If we just gave them the .cpp file, they wouldn’t be able to do anything with it other than open it up and see the source code. But what if they don’t know C++ and they can’t decipher what the code is doing?
We would use a compiler to “build” our application which would generate a SecretsOfTheUniverse.exe file. We can take this .exe file and give it to our friend to run on his Windows based machine. When he double clicks it, it will run the application, revealing the secrets of the universe!
As I mentioned, this is some very basic information, but it’s information worth knowing. I know that when I tried to jump into learning programming by finding free tutorials online, a lot of them start out assuming you know some basics. I’m trying to help bridge the gap from extreme beginner to “I at least know what you meant when you said IDE.”
Good luck out there fellow knowledge seekers!