文档介绍:Download at
Motivation fo r Distributi on
Concurrent Object-Oriented
Benets of puting:
Net w o rk Programming with C++
{ Collab o ration ! connectivit y and interw o rking
{ P erfo rmance ! multi-p ro cessing and lo calit y
Douglas C. Schmidt
{ Reliabili t y and availabil i t y ! replication
W ashington Universit y , St. Louis
{ Scalabili t y and p o rtabilit y ! mo dula rit y
{ Extensibilit y ! dynamic conguration and recon-
guration
.ed u/ s chmi dt/
******@ u
{ Cost eectiveness ! op en systems and resource
sha ring
1
2
Caveats
Challenges and Solutions
OO and C++ a re not a panacea
Developing ecient , robust , and extensible
distributed applications is challenging
{ Ho w ever, when used p rop erly they help minimi ze
\accidental" complexit y and imp rove soft w a re qual-
{ . , must plex topics that a re less
it y
p roblematic o r not relevant fo r non-distributed and
non-concurrent applications
Advanced OS features p rovide additional func-
tionalit y and p erfo rmance, . ,
Object-o riented OO techniques and C++
language features enhance distributed soft-
{ Multi-threading
w a re qualit y facto rs
{ Multi-p ro cessing
{ Key OO techniques ! design patterns and frame-
w o rks
{ Synchronization
{ Key C++ language features ! classes , inheritance ,
dynamic binding , and pa rameterized t yp es
{ Explicit dynamic linking
{ Key soft w a re qualit y facto rs ! mo dula rit y , exten-
{ Sha red memo ry
sibilit y , po rtabilit y , reusabilit y , reliabil i t y , and co r-
rectness
{ Communication p roto cols and IPC mechanisms
3
4
Download at
Soft w a re Development
T uto rial Outline
Environment
Outline k ey challenges fo r developing dis-
The topics discussed here a re la rgely inde-
tributed applications
p endent of OS, net w o rk, and p rogramming
language
Present an OO design and implemen