목차
선언과 초기화를 가까이로 옮기기. 타이딩 의 하나.
“
When you come across code that separates the declaration (with a possible type) and initialization, it’s harder to read. By the time you get to the initialization, you’ve forgotten some of the context of what the variable is for. —Tidy first? A personal exercise in empirical software design
목차 관련 글 One pile “To regain clarity, the code must first be mooshed together so new, easier-to-understand parts can then be extra…” New interface, old implementation “A personal exercise in empirical software design” Explaining comments “Then you'd better explain any biology context in the code, even if it seems obvious to you.” Reading order “A personal exercise in empirical software design” Guard clauses “A personal exercise in empirical software design” Extract helper “The refactoring-aware among you will recognize "Extract method" in this tidying.” 죽은 코드 “A personal exercise in empirical software design” Explicit parameters “A personal exercise in empirical software design” Separate tidying “A personal exercise in empirical software design” First, After, Later, Never “A personal exercise in empirical software design 2부 중에서 발췌, 요약.” Chunk statements “This one wins the prize for simplest tidying.” 의식에 관한 케임브리지 선언 “While it is indisputable that all vertebrates, including fish and reptiles do possess the neurological substrat…” Explaining variables “A personal exercise in empirical software design” Cohesion order “A personal exercise in empirical software design에서는 "당장 결합도coupling를 낮출 수 없는 상황이라면 응집도cohesion라고 높여둬라"고 조언.” Roles of variables framework “Fixed value: A variable whose value does not change after initialization plays the role of a fixed value.” 경험적 소프트웨어 설계 “A personal exercise in empirical software design” Explaining constants “A personal exercise in empirical software design” 설계를 언제 할까 “The loud debates in software design seem to be about what to design.” Wastes of software development “People aren't the only things that move - various artifacts move also.” Software aspects of strategic defense systems “The nature of research in software engineering, and why the improvements that it can effect will not be suffici…”