of Modern Pro-
of writing a
new program is
to make use of
and modern de-
) and object-oriented design (
), as well as graphi-
cal user interfaces (GUIs). Recently, the highly productive "components"
programming associated with rapid application development (
ronments has greatly enhanced the efficiency, sophistication, and depend-
programming. Additionally, modern integrated develop-
ment environments (IDEs) have matured into a powerful and reliable
means of rapidly developing, testing, and debugging complex and sophisti-
cated programs. None of these powerful technologies was available until
the 1990s. Hence, design and construction of modern programs is faster,
safer, and more intuitive. Also very important is the fact that all of the nu-
merical algorithms used in a high-precision ephemeris program -- e.g.,
numerical integrators, nonlinear estimation, etc. -- are now mature tech-
nologies, which was certainly not the case thirty-five years ago.
Consequently, the Newcomb computational back end is written entirely
C++, and development and testing are done entirely within the
environment currently available.
program, we take full advantage of standard
concepts and tech-
niques, including full data encapsulation, template and nested template
classes, polymorphism, and, where necessary, multiple inheritance.
MURISON: MODELING PLANETARY MOTIONS
10 of 20
Figure 7 -- Examples of a graphical user interface (from Newton).