A computer program is a set of instructions that you write to tell a computer what to do. Programmers do not use machine language when creating computer programs. Instead, programmers tend to use high-level programming languages.

Programmers write instructions in programming languages. Some of these are directly understandable by computers, and others require intermediate translation steps. Computer languages that are in use today can be divided into three general types:
• Machine Languages
• Assembly Languages
• High-Level Languages
A computer can directly understand only its own machine language. As the “natural language” of a particular computer, machine language is defined by the computer’s hardware design.

Machine languages are machine dependent. Machine languages generally consist of streams of numbers. Programmers began using English-like abbreviations to represent the computer’s basic operations. These abbreviations formed the basis of assembly languages.

Translator programs called assemblers convert assembly-language programs to machine language. Although it is clearer to humans, computers cannot understand assembly-language code until it is translated into machine language. Assembly languages still require many instructions to accomplish even the simplest tasks. To speed up the programming process, high-level languages were developed. Each high-level language has its own syntax and limited set of vocabulary that is translated into machine code by a compiler. In addition to understanding syntax, a programmer must also understand programming logic.

Programs called compilers convert high-level-language programs into machine language. High-level languages look almost like everyday English and contain common mathematical notations. Visual Studio is one of the world’s most popular high-level programming languages.

Object technology have properties such as color, size and weight. Object technology perform actions such as moving, sleeping or drawing. A class specifies the general format of its objects, and the properties and actions available to an object depend on its class. Objects are reusable software components that model items in the real world. Object-oriented programs are easier to understand, correct and modify. The C language gained widespread recognition as a development language for the UNIX operating system. C++ was developed by Bjarne Stroustrup in the early 1980s at Bell Laboratories. C++ provides capabilities for object-oriented programming (OOP).

Developers use Java to create web pages with dynamic content, to build large scale enterprise applications, to enhance the functionality of web servers, and to provide applications for consumer devices. In 2000, Microsoft announced C#. The C# programming language was designed specifically for the .NET platform. Like C#, Visual Basic.

Procedural programming languages focused on actions (verbs) rather than objects (nouns). Object-oriented languages more naturally reflects the way in which we perceive the world.