[μ€λΈμ νΈ] 7μ₯ 'κ°μ²΄ λΆν΄'
7μ₯μμλ μΆμνμ ν κ°μ§ λ°©λ²μΈ λΆν΄μ μμ¬μ λν΄ λ°°μΈ μ μλ€.
μΆμνλ νλ‘μμ μΆμν(procedure abstraction)μ λ°μ΄ν° μΆμν(data abstraction)λ‘ λλ μ μλλ°
κ°μ²΄μ§ν₯μ νλ‘μμ μΆμνμ΄λ€.
κ°μ²΄μ§ν₯μμλ νμ λ³μλ₯Ό μ΄μ©ν 쑰건문μ λ€νμ±μΌλ‘ λ체νλ€.
-> replace type code with class
μ€κ³μ λ³κ²½μ νμ μΆκ°μ μ€νΌλ μ΄μ μΆκ°λ‘ ꡬλΆν μ μκ³
νμ μΆκ°μ κ²½μ°,
κ°μ²΄μ§ν₯ μ€κ³λ μλ‘μ΄ ν΄λμ€λ₯Ό μμ κ³μΈ΅μ μΆκ°νλ κ²μΌλ‘ μ½κ² λ³κ²½μ΄ κ°λ₯νλ€.
μ€νΌλ μ΄μ μΆκ°μ κ²½μ°,
μμ κ³μΈ΅μ μνλ λͺ¨λ ν΄λμ€λ₯Ό νλ²μ μμ ν΄μΌ νλ κ°μ²΄μ§ν₯μ μ€κ³λ³΄λ€λ μΆμ λ°μ΄ν° νμ μ΄ λ³κ²½μ μ©μ΄νλ€.
μΆμ λ°μ΄ν°λ μ 체 νμ μ λν ꡬν μ½λκ° νλμ ꡬν체 λ΄μ μκΈ° λλ¬Έμ΄λ€.