< 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] random-data generators readability as management standard defects exposing lack of defined importance of 2nd maintenance benefit from positive effects from private vs. public programs professional development, importance to structures, importance of warning sign, as a reading as a skill reading plan for software developers records, refactoring recursion alternatives to [See control structures, recursive] checklist defined factorials using Fibonacci numbers using guidelines for key points maze example safety counters for single routine guideline sorting example stack space concerns terminating refactoring 80/20 rule adding routines algorithms arrays backing up old code bidirectional class associations boolean expressions case statements checklists for 2nd checkpoints for class cohesion indicator class interfaces classes 2nd 3rd 4th code tuning, compared to collections comments on bad code complex modules conditional expressions constant values varying among subclass constructors to factory methods data from uncontrolled sources data sets, related, as indicator data types to classes data-level 2nd defects, fixes of defined designing code for future needs Don't Repeat Yourself principle duplicate code indicator error-prone modules expressions global variables GUI data if statements interfaces 2nd 3rd key points listing planned steps literal constants loops 2nd maintenance triggering middleman classes misuse of null objects objects one-at-a-time rule overloaded primitive data types parallel modifications required indicator parameters 2nd 3rd PPP coding step public data members queries reasons not to records redesigning instead of reference objects resources on reviews of risk levels of routines 2nd 3rd 4th safety guidelines 2nd setup code size guideline statement-level 2nd strategies for subclasses 2nd superclasses system-level 2nd takedown code testing to do lists for tools for tramp data ugly code, interfaces to unidirectional class associations unit tests for variables warnings, compiler references (&), C++ regression testing defined diff tools for purpose of reliability cohesive routines defined religious attitude toward programming eclecticism experimentation compared to harmful effects of layout styles becoming managing people software oracles reports requirements benefits of [See prerequisites, upstream, requirements development] business cases for change-control procedures checklists for 2nd coding without communicating changes in completeness, checklist configuration management of 2nd defined development approaches with development process effects on dumping projects errors in, effects of functional, checklist good practices table for importance of key point for nonfunctional, checklist performance tuning quality, checklist rate of change, typical resources on developing stability of 2nd testing for time allowed for resource management architecture for cleanup example restrictive nature of design restructuring tools retesting return statements checklist [See control structures, returns as] guard clauses key points multiple, from one routine readability resources for reusability architecture prerequisites defined reviewer role in inspections reviews code reading dog-and-pony shows educational aspect of every line of code rule formal inspections, compared to formal, quality from informal, defined iteration process, place in refactoring conducting after walk-throughs right shifting risk-oriented integration robustness architecture prerequisites assertions with error handling correctness, balanced against defined 2nd rounding errors routines abstract overridable [See classes, functions in; classes, methods of; classes, procedures in; classes, routines in] abstraction benefit abstraction with object parameters 2nd algorithm selection for 2nd alternates to PPP black-box testing of blank lines in boolean test benefit calculation to function example calls, costs of checking for errors checklists 2nd 3rd classes, converting to, criteria for cleanup steps code tuning coding from pseudocode cohesion coincidental cohesion commenting 2nd communicational cohesion compiling for errors complexity metric complexity reduction benefit construction step for classes continuations in call lines coupling considerations data states data structures for declarations defined descriptiveness guideline for naming design by contract designing 2nd documentation 2nd downcast objects duplication benefit endline layout error handling considerations errors in, relation to length of event handlers fields of objects, passing to files, layout in functional cohesion functionality from libraries functions, special considerations for hacking approach to header comments for high quality, counterexample high-level comments from pseudocode importance of in keyword creation indentation of inline input-modify-output parameter order interface statements internal design iterating pseudocode key points for 2nd layout of 2nd length of, guideline for limitations, documenting logical cohesion low-quality example mentally checking for errors multiple returns from named parameters in naming 2nd 3rd 4th nested deeply objects, passing to 2nd out keyword creation overridable vs. non-overridable routines overridden to do nothing overriding performance considerations 2nd pointer hiding benefit portability benefit postconditions PPP checklist for preconditions prerequisites problem definition procedural cohesion procedure naming guideline pseudocode writing step public, using in interfaces concern queries, refactoring reasons for creating, list of refactoring 2nd 3rd 4th reliability from cohesiveness removing errors repeating steps returns from, multiple reviewing pseudocode sequence hiding benefit sequential cohesion setup code for, refactoring similar parameters, order for similar, refactoring simple, usefulness of size as refactoring indicator small vs. large 2nd specification example stepping through code strength subclassing benefit temporal cohesion test-first development testing 2nd 3rd tramp data in unused, refactoring valid reasons for creating variable names, differentiating from wrong class, indicator for run time, binding during |
< Free Open Study > |