Index_C

 < Day Day Up > 



C

C/C++ programming, 369

arrays, 115

data types and unsafe referencing, 98

error handling methods, 159–161

header files, 374, 375

makefile utility, 378–379

private inheritance, 324

source file names, 374

stateless methods, 375

templates, 131

try-catch blocks, 161

Cache, definition, 409

Calculator program, 150

Car class program, 284–285, 336–337

Casting errors, runtime data type tags and, 102–105

CExec object, 37

CGI, 30–31, 409

Chat program, 400–406

client, 403–406

GUI, 403

server, 400–403

Checked exceptions, 167–169, 171–172, 409

Child thread, definition, 409

Class

extension, 141, 316, 341, 344

inappropriate or incorrect use, 344–346

inner, 376–378

naming conventions, 370

scope resolution modifiers, 376

template program, 131

ClassCastException, approaches for handling, 155–159, 162

Classification, 303, 306, 316–320, See also Inheritance

abstract classes, 341–344

choice for object design, 333

cohesion and coupling, 331

composition vs., 324, 327–328, 331, 347

compatibility with program implementation, 354, 357

"is-a" and "has-a" checks, 347–348

multiple types or roles, 352–353

mutable object types, 348, 351

type simply represents a role, 351–352

definition, 409

drawbacks, 317–320

"is-a" or "has-a" relationships, 333, 335, 341, 347–348

utility objects, 324, 328

CLASSPATH, 379–380

Client, 388

Client/server program, 388–389

chat program, 400–406

Club program, 345–346

COBOL, 386

Cohesion, 330–331, 409

Collection classes, 119

Common gateway interface (CGI), 30, 409

Common Object Request Broker Architecture (CORBA), 14, 129–130, 387, 390

Competitive synchronization, 10–11, 231, 409

Complete synchronization, 13, 51, 410

Complexity, 329

Components, 1, 2, 12–14

animator implementation, See Animator

button object example, 13–14

characteristics of, 13

concurrent program design methodology, 71–76

deadlock, 55–61, See also Deadlock

definition, 410

exception handling, 153–154, See Exceptions

generic, 131–132, 410, See also Reuse

passive objects, 79

potential problems, 13–14, See also Deadlock; Race conditions

reuse, See Reuse

Composition, 303, 306, 320–324

aggregation, 338–340

Amphibious Vehicle Design program, 353

association, 339–340

car class program, 336–337

choice for object design, 333

classification vs., 324, 327–328, 331, 347

compatibility with program implementation, 354, 357

"is-a" and "has-a" checks, 347–348

multiple types or roles, 352–353

mutable object types, 348, 351

type simply represents a role, 351–352

club program, 345–346

cohesion and coupling, 331

costs, 323–324

delegation, 338

Employee Modeling program, 348–351

"has-a" or "is-a" relationships, 333, 335, 338, 347–348

object history and, 351

Concurrency

definition, 9, 11, 410

incidental, 15

Concurrent Ball program, 297–298, 326–327

Concurrent components, 1, 2, 12, 410, See Components

Concurrent programming, 1, 11–12, See also Components; Synchronization; Threads; specific applications, methods

combined techniques, 261–262

animator controller, 262, 287–298

first-in/first-out binary semaphore, 261–262, 263–269

gas station simulation, 262, 277–287

readers/writers problem, 262, 267–277

concurrent components, See Components

contrasting with procedural programs, 22–24

defined in terms of asynchronous activity, 9, 11

definition, 6–7, 11, 410

distributed systems, See Distributed programming

further reading, 17–18

hacking strategy, 42

nondeterminism, 40–41

objects in, 12

operating system environments, 17–18

partial ordering, 27

program availability, 16

reasons for using, 3–6, 14–15

safety, 42, 47–48, See Program safety

simple execution model, See Simple virtual machine (SVM) model

system modeling, 17

timing constraints, 16

types of and applications, 14–17

Concurrent programming, program creation procedure, 69

bounded buffer, 70

control objects, 69, 76–78

defining objects and relationships, 69, 70–71

design active objects, 69, 71

design passive objects, 69, 71–74

gas station simulation problem, 80–86

implementing passive objects as monitors, 69, 74–76

problem description, 69, 70

producer/consumer problem, 70–78

Confinement, 274–276, 410

Context switch, 29, 34–38, 51

definition, 36, 410

Control objects

concurrent programming model, 69, 76–78

definition, 410

gas station simulation, 82

ControllerImp class program, 290–292

ControlPanel class program, 293–294

Cooperative synchronization, 10, 11, 231

animator implementation, 231, 232–235, 240

definition, 410

"entire run method" synchronization, 237–240

example with race condition, 243–248

further reading, 259

move method, 247–248

notification objects, 248–253, See Notification objects

"partial method" synchronization, 240, 243

random sleep times, 235

thread coordination

using long sleep times, 235–237

using wait and notify, 237–240

Coordination language, 18

CORBA, 14, 129–130, 387, 390, 406

Coupling, 330–331, 410

Critical section, definition, 410



 < Day Day Up > 



Creating Components. Object Oriented, Concurrent, and Distributed Computing in Java
The .NET Developers Guide to Directory Services Programming
ISBN: 849314992
EAN: 2147483647
Year: 2003
Pages: 162

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net