The term "software" was first used in this sense by
John W. Tukey in 1958. In computer science and software
engineering, computer software is all computer programs.
The concept of reading different sequences of instructions into
the memory of a device to control computations was invented
by Charles Babbage as part of his difference engine. The theory
that is the basis for most modern software was first proposed by
Alan Turing in his 1935 essay “Computable numbers with an
application to the Entscheidungsproblem”.
Practical computer systems divide software systems into three major
classes: system software, programming software and
application software, although the distinction is arbitrary,
and often blurred.
System software helps run the computer hardware and
computer system. It includes operating systems, device drivers,
diagnostic tools, servers, windowing systems, utilities and more.
The purpose of systems software is to insulate the applications
programmer as much as possible from the details of the
particular computer complex being used, especially memory
and other hardware features, and such accessory devices as
communications, printers, readers, displays, keyboards, etc.
Programming software usually provides tools to assist a programmer
in writing computer programs and software using different
programming languages in a more convenient way. The tools include
text editors, compilers, interpreters, linkers, debuggers, and so on.
An Integrated development environment (IDE) merges those tools into a
software bundle, and a programmer may not need to type multiple commands
for compiling, interpreter, debugging, tracing, and etc., because the
IDE usually has an advanced graphical user interface, or GUI.
Application software allows end users to accomplish one or more
specific (non-computer related) tasks. Typical applications include
industrial automation, business software, educational software,
medical software, databases, and computer games.
Businesses are probably the biggest users of application software,
but almost every field of human activity now uses some form of application
software.
The History of Programming Lanuguages
Ada Lovelace translated Italian mathematician Luigi Menabrea's memoir on Charles Babbage's newest proposed machine, the Analytical Engine, during a nine-month period in 1842-1843. She has been recognized by some historians as the world's first computer programmer.
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 soon discovered that programming in assembly language required a great deal of intellectual effort and was error-prone.
Some important languages that were developed in this time period include:
1943 - Plankalkül (Konrad Zuse)
1943 - ENIAC coding system
1949 - C-10
In the 1950s the first three modern programming languages whose descendants are still in widespread use today were designed:
FORTRAN, the "FORmula TRANslator”
LISP, the "LISt Processor“
COBOL, the COmmon Business Oriented Language
Another milestone in the late 1950s was the publication, by a committee of American and European computer scientists, of "a new language for algorithms"; the Algol 60 Report .
Algol 60 was particularly influential in the design of later languages, some of which soon became more popular. The Burroughs large systems were designed to be programmed in an extended subset of Algol.
Some important languages that were developed in this time period include:
1951 - Regional Assembly Language
1952 - Autocode
1954 - FORTRAN
1958 - LISP
1958 - ALGOL 58
1959 - COBOL
1962 - APL
1962 - Simula
1964 - BASIC
1964 - PL/I
The period from the late 1960s to the late 1970s brought a major flowering of programming languages. Most of the major language paradigms now in use were invented in this period:
Simula, invented in the late 1960s by Nygaard and Dahl as a superset of Algol 60, was the first language designed to support object-oriented programming.
Smalltalk (mid 1970s) provided a complete ground-up design of an object-oriented language.
C, an early systems programming language, was developed by Dennis Ritchie and Ken Thompson at Bell Labs between 1969 and 1973.
Prolog, designed in 1972 by Colmerauer, Roussel, and Kowalski, was the first logic programming language.
ML
The 1960s and 1970s also saw considerable debate over the merits of "structured programming", which essentially meant programming without the use of GOTO. This debate was closely related to language design: some languages did not include GOTO, which forced structured programming on the programmer. Although the debate raged hotly at the time, nearly all programmers now agree that, even in languages that provide GOTO, it is bad style to use it except in rare circumstances. As a result, later generations of language designers have found the structured programming debate tedious and even bewildering.
Some important languages that were developed in this time period include:
1970 - Pascal
1970 - Forth
1972 - C
1972 - Smalltalk
1972 - Prolog
1973 - ML
1978 - SQL
The 1980s were years of relative consolidation. C++ combined object-oriented and systems programming.
Some important languages that were developed in this time period include:
1983 - Ada
1983 - C++
1985 - Eiffel
1987 - Perl
1989 - FL (Backus)
The 1990s: the Internet age
The rapid growth of the Internet in the mid-1990s was the next major historic event in programming languages. By opening up a radically new platform for computer systems, the Internet created an opportunity for new languages to be adopted. In particular, the Java programming language rose to popularity because of its early integration with the Netscape Navigator web browser, and various scripting languages achieved widespread use in developing customized applications for web servers.
Some important languages that were developed in this time period include:
1990 - Haskell
1990 - Python
1991 - Java
1993 - Ruby
1995 - PHP
2000 - C#
Hiç yorum yok:
Yorum Gönder
Not: Yalnızca bu blogun üyesi yorum gönderebilir.