index_D

 < Free Open Study >   


Index


[SYMBOL] [A] [B] [C] [D] [E] [F] [G] [H] [I] [J] [K] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W]

daily build and smoke tests
     automation of
     benefits of
     broken builds 2nd
     build groups
     checklist
     defined
     diagnosis benefit
     holding area for additions
     importance of
     morning releases
     pressure
     pretest requirement
     revisions
     smoke tests
     unsurfaced work
data
     architecture prerequisites
     bad classes, testing for
     change, identifying areas of
     combined states
     defined state
     defined-used paths, testing
     design
     entered state
     exited state
     good classes, testing
     killed state
     legacy, compatibility with
     nominal case errors
     test, generators for
     used state
data dictionaries
data flow testing
data literacy test
data recorder tools
data structures
data transformations for code tuning
    array dimension minimization [See data, code tuning]
     array reference minimization
     caching data
     floating point to integers
     indexing data
     purpose of
data types
    "a" prefix convention [See data, types; variables, types of]
     BCD
     change, identifying areas of
     checklist
     control structures, relationship to
     Currency
     definitions
     iterative data
     key points for
     naming 2nd 3rd
     overloaded primitives
     refactoring to classes 2nd
     resources on
     selective data
     sequential data
     t_ prefix convention
     variables of, differentiating from
data-level refactoring 2nd
databases
     performance issues
     SQL
     subsystem design
days-in-month, determining
deallocation
     goto statements for
     pointers, of 2nd 3rd
Debug.Assert statements
debugging
    binary searches of code [See defects in code, fixing; tools, debugging]
     blindness, sources of
     breakpoints
     breaks, taking
     brute-force
     changes, recent
     checklist
     comments, misplaced
     common defects lists
     compilers as tools for 2nd
     confessional debugging
     costs of 2nd
     debugger tools 2nd 3rd 4th [See also debugging aids]
     defects as opportunities
     defined
     Diff tool
     execution profilers for
     expanding suspicious regions
     experience of programmers, effects of
     finding defects 2nd
     fixing defects
     guessing
     history of
     hypothesis testing 2nd
     incremental approach
     ineffective approach to
     key points
     line numbers from compilers
     lint tool
     listing possibilities
     locating error sources
     logic checking tools
     multiple compiler messages
     narrowing code searches
     obvious fixes
     performance variations
     project-wide compilers settings
     psychological considerations
     quality of software, role in
     quotation marks, misplaced
     readability improvements
     recommended approach
     reexamining defect-prone code
     resources for
     Satan's helpers
     scaffolding for
     scientific method of
     self-knowledge from
     source-code comparators
     stabilizing errors
     superstitious approaches
     symbolic debuggers
     syntax checking 2nd 3rd
     system debuggers
     test case creation
     testing, compared to
     time for, setting maximums
     tools for 2nd 3rd 4th [See also debugging aids]
     understanding the problems
     unit tests
     varying test cases
     warnings, treating as errors
debugging aids
    C++ preprocessors [See debugging, aids to; debugging, defensive]
     case statements
     early introduction recommended
     offensive programming
     planning removal of
     pointers, checking
     preprocessors
     production constraints in development versions
     purpose of
     stubs
     version control tools
decision tables
declarations
     2nd 3rd [See variables, declaring]
     const recommended
     declare and define near first use rule
     define near first use rule
     final recommended
     formatting
     implicit declarations
     multiple on one line
     numerical data, commenting
     order of
     placement of
     pointers 2nd
     using all declared
Decorator pattern
defects in code
    classes prone to error [See errors, coding]
     classifications of
     clerical errors (typos)
     Code Complete example
     construction, proportion resulting from
     cost of detection
     cost of fixing
     databases of
     detection by various techniques, table of
     distribution of
     ease of fixing defects
     error checklists
     expected rate of
     finding, checklist
     intermittent
     misunderstood designs as sources for
     opportunities presented by
     outside of construction domain
     percentage of, measurement
     performance issues
     programmers at fault for
     readability improvements
     refactoring after fixing
     scope of
     self-knowledge from
     size of projects, effects on
     sources of, table
     stabilizing
defensive programming
     assertions
     assumptions to check, list of
     barricades
     checklist
     debugging aids
     defined
     error handling for
     exceptions 2nd
     friendly messages guideline
     graceful crashing guideline
     guidelines for production code
     hard crash errors guideline
     important errors guideline
     key points for
     logging guideline
     problems caused by
     quality improvement techniques, other
     robustness vs. correctness
     security issues
     trivial errors guideline
     validating input
defined data state
defining variables
Delphi, recoding to assembler
DeMorgan's Theorems, applying
dependencies, code-ordering
    checker tools [See sequences, code, order of]
     circular
     clarifying
     concept of
     documentation
     error checking
     hidden
     initialization order
     naming routines
     non-obvious
     organization of code
     parameters, effective
design
     abstractions, forming consistent
     accidental problems
     BDUF
     beauty
     bottom-up approach to design
     business logic subsystem
     capturing work
     central points of control
     change, identifying areas of
     changes, management of
     characteristics of high quality
     checklists 2nd
     classes, division into
     collaboration
     communications among subsystems
     completion of, determining
     complexity management
     construction activity, as
     contract, by
     coupling considerations
     database access subsystem
     defined
     diagrams, drawing
     discussion, summarizing
     divide and conquer technique
     documentation overkill
     documentation, as
     emergent nature of
     encapsulation
     enough, determining
     essential problems
     extensibility goal
     formality of, determining
     formalizing class contracts
     goals checklist
     good practices table for
     hierarchies for
     high fan-in goal
     IEEE standards
     information hiding 2nd
     inheritance
     iteration practice
     key points
     leanness goal
     level of detail needed
     levels of
     loose coupling goal
     low-to-medium fan-out goal
     maintenance goals
     mental limitations of humans
     metrics, warning signs from
     nondeterministic nature of 2nd
     object-oriented, resource for
     objects, real world, finding
     packages level
     performance tuning considerations
     portability goal
     practices 2nd
     prioritizing during
     prototyping
     resources for
     restrictive nature of
     reusability goal
     routines, of
     sloppy process nature of
     software system level
     standard techniques goal
     standards, IEEE
     stratification goal
     strong cohesion
     subsystem level
     system dependencies subsystem
     testing for implementation
     tools for
     top-down approach
     tradeoffs
     UML diagrams
     user interface subsystem
     visual documentation of
     wicked problem nature of
     Wikis, capturing on
destructors, exceptions with
detailed-design documents
developer testing
development processes
development standards, IEEE
diagrams
     heuristic design use of
     UML
Diff tools 2nd
direct access tables
    advantages of [See table-driven methods, direct access]
     arrays for
     case statement approach
     days-in-month example
     defined
     design method for
     flexible-message-format example
     fudging keys for
     insurance rates example
     keys for
     object approach
     transforming keys
disassemblers
discipline, importance of
discourse rules
disposing of objects
divide and conquer technique
division
Do loops [See also loops]
documentation
     abbreviation of names
     ADTs for
     bad code, of
     Book Paradigm for
     capturing work
     checklists 2nd
     classes
     control structures
     CRC cards for
     dependencies, clarifying
     design as 2nd
     detailed-design documents
     external
     Javadoc 2nd
     key points
     names as 2nd 3rd
     organization of data
     parameter assumptions
     pseudocode, deriving from
     resources on
     routine parameter assumptions
     routines
     SDFs
     self-documenting code
     size of projects, effects of
     source code as
     standards, IEEE
     style differences, managing
     UDFs
     visual, of designs
     why vs. how
dog tag fields
dog-and-pony shows
DoNothing() macros
DRY (Don't Repeat Yourself) principle
duplication
     avoiding with routines
     code as refactoring indicator

 < Free Open Study >   


Code Complete
Code Complete: A Practical Handbook of Software Construction, Second Edition
ISBN: 0735619670
EAN: 2147483647
Year: 2003
Pages: 334

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