Beautiful Architecture

(avery) #1

cookies
Facebook Platform, 147
coupling
in Messy Metropolis architecture, 29
CPUs
Moore’s law and scaling, 47
creeping featurism
GNU Emacs, 272
CSS classes
Facebook, 139


D
Darkstar (see Project Darkstar)
data
applications in resource-oriented architectures,
102
Facebook Platform, 113
internal organization versus the Web, 90
operations as, 326
types in Akonadi, 296
versus algorithms, 111
data access
defined, xvii
patterns in MMOs and virtual words, 49
structures, 19
data contention
and concurrent execution in Project Darkstar,
54
data servers
KDE, 292
Data Service
Project Darkstar, 53
Data Store
Project Darkstar, 53
data-display tags
FBML, 138, 144
data-execution tags, 138
FBML, 144
database migrations
Lifetouch, 81
decisions
deferring in Design Town project, 37
decorator patterns
performance, 207, 228
deferred classes, 335
deferring
design decisions, 37
delegates (see agents)
dependencies
defined, xvii
modules in Lifetouch, 69
ThreadWeaver, 306
design
changes and unit testing in Design Town
project, 38


rules, 5
time allotted for in Design Town project, 39
versus architecture, 9
Design by Contract-like mechanisms
modularity, 325
Design Patterns: Elements of Reusable Object-
Oriented Software, 349
Design Town project, 33–41
design-only tags
FBML, 139
development cycles
managing, 31
development teams
Conway’s Law, 40
relationships in Messy Metropolis project, 29
turnover, 31
device channels
Xen, 166
device I/O
Guardian operating system, 193
Dijkstra, Edsger, 377
distributed systems
online gaming, 47
distrust
and trust, 156
domain-specific language (DSL), 320
driver domains
Xen, 168
drivers
device channels in Xen, 166
Linux and Xen, 166
virtual drivers, 162
DSL (domain-specific language), 320
duck typing
polymorphism, 363
duplication
in Messy Metropolis project, 31
reducing in Design Town project, 37
Dynabus (see IPB)
dynamic binding, 334
extendibility, 337
polymorphism, 335
dynamic class loading
performance in runtime environments, 239
dynamic resource allocation
processes, 18

E
Eclipse, 275
EDS (Evolution Data Server), 292
Eiffel
object technology, 317
EiffelVision library, 322
Emacs Lisp, 269
emulation

INDEX 395
Free download pdf