Structured Programming  «Prev  Next»
Lesson 3 Programming Fundamentals Requirements
Objective Learn what you need to take this course.

Programming Fundamentals Requirements

Platform support

You can take this course on Windows or UNIX platforms.


Programming languages are used to facilitate communication about the task of organizing and manipulating information, and to express algorithms precisely. Some authors restrict the term "programming language" to those languages that can express all possible algorithms. Sometimes the term "computer language" is used for more limited artificial languages.

In this course you will be writing programs using the Java programming language.
To complete the programming exercises in the course you will need to install the Java 2 Software Development Kit, available at no cost from Oracle.
The course will guide you through the installation of this software.
In the next lesson, you will learn about course resources.

History of Programming Languages

In the 1940s, the first recognizably modern electrically powered computers were created. The limited speed and memory capacity forced programmers to write hand tuned assembly language programs. It was eventually realized that programming in assembly language required a great deal of mental effort and was difficult to program in.
The first programming languages designed to communicate instructions to a computer were written in the 1950s.
John Mauchly's Short Code, proposed in 1949, was one of the first high-level languages ever developed for an electronic computer. Unlike machine code, Short Code statements represented mathematical expressions in understandable form. However, the program had to be translated into machine code every time it ran, making the process much slower than running the equivalent machine code. Alick Glennie developed Autocode in the early 1950s which was used at the University of Manchester from 1952. The Manchester Mark 1 ran programs written in Autocode which used a compiler to automatically convert the language into machine code. The first code and compiler was developed in 1952 for the Mark 1 computer at the University of Manchester and is considered to be the first compiled high-level programming language.

Our civilization runs on software and most engineering activities involve software, but most programs do not run on things that look like a PC with a screen, a keyboard, a box under the table, but in aircrafts, ships, communication, phones, energy systems. There is a lot more to computing than games, word processing, browsing, and spreadsheets. What is programming?
Literally, is the action or process of writing computer programs. To me, is problem solving using algorithms. A few terms related to programming:
  1. Programming paradigm: a pattern that serves as a school of thoughts for programming of computers
  2. Programming technique: related to an algorithmic idea for solving a particular class of problems. For example, 1) divide and conquer or 2) program development by stepwise refinement
  3. Programming style: the way we express ourselves in a computer program. Relates to elegance (or lack of elegance)
  4. programming culture: The totality of programming behavior, which often is tightly related to a family of programming languages