ꡬ쑰μ νλ‘κ·Έλλ°μμ μμ λͺ¨λμ λ¨Όμ κ°λ°νκ³ μ¬κΈ°μ μ¬μ©νλ ν?λͺ¨λλ€μ κ°λ°ν΄ λκ°λ λ°©λ². EdsgerDijkstraμ Niklaus Wirthκ° μ΄ λ°©λ²μ λμ€νμν¨ κ²μΌλ‘ μ λͺ
νλ€.
μ¬μ€, TestDrivenDevelopmentλ Refactoringμ μλΉ λΆλΆλ μ΄μ°λ³΄λ©΄ StepwiseRefinementμ μ°μ₯μ μ μλ€.
see also:
- ScheduledWalk/μμ² : 1002κ° RandomWalk2λ₯Ό StepwiseRefinementλ‘ μ κ·Όν μ
- EightQueenProblem2Discussion : EightQueenProblem, EightQueenProblem2μ μ μ©ν΄ 보면 λ§μ κ²μ λ°°μΈ μ μλ€.
Niklaus Wirth κ΅μμ Program Development by Stepwise Refinement(1971, CACM 14.4) (http://www.acm.org/classics/dec95/ )μ EdsgerDijkstraμ Stepwise Program Constructionμ κΌ¬μ€μ₯ μ½μ΄λ³΄κΈΈ λ°λλλ€. μ μ°ν μμ¬μ κΈΈμ΄ λ¨λ μ λͺ
ν λ
Όλ¬Έλ€μ΄κ³ , μ¬κΈ° μκ°λ SRμ Structured Programmingμμ ν΅μ¬μ μν μ νμ΅λλ€. λΉμ μ, μ΄ μ¬λμ΄ μ¬μ©ν stepwise refinementμ μμνλ μ΄λ€ "μΌλ°μ λ¬Έμ μ κ·Όλ² λ° λμμΈ λ°©λ²"μ κ°κ³ μμ΅λκΉ? μ΄ κΈμ μ½κ³ λ€λ₯Έ λ¬Έμ μ stepwise refinementλ₯Ό μ μ©ν΄ 보μμμ€. Functional Programmingμ΄λ OOPμλ μ μ©ν μ μμ΅λκΉ? μ΄ κΈμ μ½κ³ , λ μ€μ€λ‘ μ€νμ ν΄λ³΄κ³ 무μμ λ°°μ μ΅λκΉ? μ΄ stepwise refinementμ λ¨μ μ 무μμ΄κ³ , μ΄λ₯Ό 극볡νλ λ°©λ²μ 무μμΌκΉμ? --κΉμ°½μ€.