Java Reference
In-Depth Information
Incidentally...
Unlike automobiles and food blenders, software products don't wear
out. As applications, programming languages, and operating systems
become more refined and stable, customers have less reasons for in-
vesting in new versions and updates. For this reason, software compa-
nies are always in search of features that enhance their products in
order to re-capture the interest of their customers. Object-oriented
languages have been eagerly adopted by software vendors, not only
because of their features, but also for purely commercial reasons.
From Problem to Solution
A computer program is a machine-coded solution to a problem in the
real-world. Programming projects usually start with the definition of a
problem, or a problem-set. The resulting software product is a group of ma-
chine instructions that solve this problem. The art of programming facili-
tates the transit from the real-world problem-set to the machine-coded
solution-set. In this wide sense programming consists of the analysis, de-
sign, coding, and testing of a software product.
Over the years many methods have been developed to facilitate the
transition from a real world problem to a coded solution. Assemblers,
high-level programming languages, CASE tools, software analysis and de-
sign schemes, formal specifications, and scientific methods of program
testing are all efforts in this direction.
One of the first efforts at making programs easier to develop and more
dependable was called structured programming. Structured programming
techniques were based on fostering programs with a modular structure,
clean flow, and a logical design. The results were faster development,
more dependable execution, and easier maintenance. For many years the
structured programming model was prevalent in the software industry.
But structured programming is a program development methodology.
It does not deal with the real-world problem at the origin of every soft-
ware project. We can say that structured programming focuses on the so-
lution-set of a software project. But interpreting, defining, and modeling
the problem-set is one of the major stumbling blocks of software develop-
ment. The object-oriented approach focuses on this problem set. It uses
mechanisms well known to science, such as features classification and in-
heritance. The object of the program corresponds to the objects of the
real world.
Search WWH ::




Custom Search