As you may know, our computers, our phones, our game consoles (... in short, all the electronic gadgets that surround us) carry out programs. The programs give instructions to these devices and tell them what to do, what to display, which calculate.
Video games are programs, tho kinda complex, which calculate the position of items to be displayed on the screen, 2D or 3D, which make them move, act with artificial intelligence, etc..
But it's not just games! Think of all the programs you run on your computer, simple text editor such as Notepad to antivirus, through the spreadsheet, web browser and media player! These are all programs.
Want to learn how to create you, too? Lucky band, the lineup has never been so accessible today. Previously, he had patience to achieve the simplest programs, but now technology has evolved and allows us to build complex programs fairly easily.
Oh, do not think it's won so far! There are many things to learn, and some areas (such as network communications between programs) may require more advanced knowledge. But anyway, you're spoiled for choice for learning to program, and that's a good thing for you.
Programming languages
To program, is to talk like a computer program, you must learn how to use a programming language.
In fact, you can not tell the computer "Open up a window displays the menu and write this in the window." He obviously does not.
The computer and all electronic gadgets (cell phones included) contain only very simple instructions: add, move data in memory, etc..
You may have heard that a computer could not understand a sequence of 0 and 1, which correspond to the passage of electric current in the machine (0 = no current, 1 = current present).
These 0 and 1 have the sense if they are assembled. For example,
0100101101101111010001 means "Calculate 3 + 1". This is
the binary language.
so what language should we learn first?
this is the question every beginner inevitably asks: "What language is best?", "What language is ideal for beginners in programming?", "I want to make a game, what do I need to learn ?.
I'll tell you a secret: there is a [URL="http://en.wikipedia.org/wiki/List_of_programming_languages"]tremendous amount of programming languages[/URL]. All these languages allow you, in theory, do whatever you want (or almost
) on your machine. Some are easier to learn than others and some are (much) more used than others.
Some programming languages most famous and most used:
- C
- C++
- Objective-C
- Java
- C# .NET
- VB .NET
- Python
- Ruby
Sites like [URL]http://langpop.com/[/URL] offer comparative use of language. Java, C, C + + and PHP are among the most commonly used.
This is information to take with tweezers, which are nevertheless interesting.
as are many others (sorry for all those I have not been mentioned
) but if you already hold those that would be fine!
What is important is that you can learn to program in any of these languages. Some are easier to pick up, others more difficult, but you can in all cases choose the one you want.
based on What criterion i choose my language?
We can classify languages according to their "level". There are:
- A high-level languages are easy to write, it takes few lines of code to achieve a result. These languages are motivating and allow you to quickly program, although they hide a bit the complexity and reality of things.
Examples: Java, Python, Ruby, C #. ... NET - A low-level languages: the more complex, they need to understand a bit about how your machine works for use. However, they allow you to advance your knowledge of the machine.
Examples: C, C + +, Objective-C ...
Note:It is actually possible to program at a very low level: it is the assembler. This language is a very basic translation of the binary.
Today, hardly anyone assembly program on a computer, but the assembler is still used in small embedded components (used mainly in industry).
o one might think it's best to start with a high level language, but this is not a rule. Personally, I started learning C (which is a low-level language) and I'm doing very well.
There are actually two approaches among teachers in programming: start with a high-level language, or start with a low level language. Everyone has valid points:
- A high-level language is faster easier and fun, but it glosses over "why it works like this." The computer is seen as a black box, we do not want too know what is happening inside.
- A low level language is a bit harder to learn, it takes longer to achieve the same things, but one learns and understands the inner workings of the machine.