|
General Programming Fundamentals
|
The process of language translation
By reading this chapter first, you’ll
get the basic flavor of what it is like to program with objects in
C++, and you’ll also discover some of the reasons for the
enthusiasm surrounding this language. This should be enough to
carry you through Chapter 3, which can be a bit exhausting since it
contains most of the details of the C language.
The user-defined data type, or
class, is what
distinguishes C++ from traditional procedural languages. A class is
a new data type that you or someone else creates to solve a
particular kind of problem. Once a class is created, anyone can use
it without knowing the specifics of how it works, or even how
classes are built. This chapter treats classes as if they are just
another built-in data type available for use in programs.
Classes that someone else has created are
typically packaged into a library. This chapter uses several of the class
libraries that come with all C++ implementations. An especially
important standard library is iostreams, which (among other things)
allow you to read from files and the keyboard, and to write to
files and the display. You’ll also see the very handy
string class, and the vector container from the
Standard C++ Library. By the end of the chapter, you’ll see
how easy it is to use a pre-defined library of classes.
In order to create your first program you
must understand the tools used to build applications.
|
|
Read more...
|
|
|
General Programming Fundamentals
|
System Description and Specification
The engineer’s first task is
understanding the system, the second one is specifying it, and the
third one is building it. Analysis must precede specification since
it is impossible to define or describe what is unknown.
Specification must precede construction, since we cannot build what
has not been defined. The first two tasks (understanding and
defining the system) can be quite challenging in the software
development field, particularly regarding small- to medium-size
projects.
|
|
Read more...
|
|
|
General Programming Fundamentals
|
Fundamentals of Systems Engineering
In this chapter we attempt to provide a technical overview of some
topics from the field of software
engineering, stressing those that would be
most useful to the working developer. The contents are an
arbitrary
selection of the topics that would be most
useful to the working analyst, designer, or programmer,
operating
in the context of a smaller software
project. We have avoided speculative discussions on the respective
merits
of the various software engineering
paradigms. The purpose of this chapter is to serve as an
informational
background and to set the mood for the
more practical discussions that follow. The discussion excludes
object
orientation since Part II is devoted
exclusively to this topic.
|
|
Read more...
|
|
|