How do I create a computer program?
This page does not provide step-by-step instructions for creating a program as the steps differ based type of program the programming language used.
Anyone interested in developing software, such as a program or application, game, or online service, must start by learning a programming language. There are hundreds of programming languages and creating a new software program requires more training and more time than one page can provide. Therefore, this page is a general overview to help point you in the direction to get started. An important beginning step is to have a plan for what program you want to develop. For instance, a plan would include the purpose of the program, game, or service, and the features you want to include. Be thinking of what your plan is as you continue reading.
Picking the language
As we noted above, there are many different programming languages. The programming language is what decides the rules and structure (syntax) of your program. Deciding which language to learn can be challenging by itself. Creating a program with many features and functions often requires you to be fairly proficient in one or more programming languages.
That being said, basic understanding of the concepts of pretty much any programming language helps get you started. Our listing of programming languages includes examples of the various types of software each language can create. Here are a few of our recommendations.
Computer Hope recommendations
Deciding on your programming language depends on what type of program or script you would like to create. For example, Java and Visual Basic are both popular because both are a good way to learn programming fundamentals fairly easily. Other popular languages include C, C++, and C#, which create games, applications, drivers, operating systems, and many of the software programs.
Deciding on an editor
An editor is any program that allows you to write computer code. They range from simple, like a basic text editor, to advanced software, such as Adobe Dreamweaver, Eclipse, JDeveloper, or Microsoft Visual Studio. Fortunately, any program can be written in a text editor, which means you can get started for free. As you get more comfortable with a programming language, using a more advanced editor is recommended, as it can make coding and testing the code more efficient.
Computer Hope recommendations
For Windows users, we suggest an editor such as Notepad ++ because it is free and supports syntax highlighting. If you're on a Mac, you can use their free editor named TextEdit. Also, it is good to keep in mind that visual programming languages, like Visual Basic, include the editor and compiler in the same tool used to create programs.
Most computer programming languages are high-level programming languages, meaning they are easy for you to understand, but impossible for a computer to understand. For the computer to "read" your program, it must be compiled or have an interpreter. Your choice of programming language is the deciding factor on whether or not you'll need a third-party program to compile or interpret it.
For example, Eclipse is an interpreter that takes a program written in Java and "translates" it into code understood by a computer. Other languages, like Perl, are interpreted, meaning they do not need to be compiled. These languages only require that they are installed on the computer or the server that is running the script.
Learning the language
After you have decided on a programming language, editor, and compiler, you are ready to program. For most users, the easiest way to start is with the famous "Hello World!" program. After you have run your program that prints "Hello World!" to the screen, the next step is to learn the language's syntax. To do so, you need to understand the following concepts:
- A statement is a single line of code.
- Understand how to declare variables.
- Create conditional statements (e.g., if, elsif, and else).
- Learn about data structures like a string, array, or hash.
- Perform loops (e.g., do, for, foreach, goto, and while).
- Learn about packaging common code into routines.
- Understand escape sequences.
- How to make comments or temporarily disable parts of the code.
- Learn more about algorithms.
- Understand regular expressions.
See our programming terms for a full list programming-related terms.
As you run into questions, an Internet search can answer most of them. Books written for your programming language or programming courses are great ways to develop your skills further.