좔상 데이터 νƒ€μž…

데이터(data)λž€?

ν”„λ‘œκ·Έλž¨μ—μ„œ λ°μ΄ν„°λž€ 처리의 λŒ€μƒμ΄ λ˜λŠ” λͺ¨λ“  것을 λ§ν•œλ‹€. μ •μˆ˜, μ‹€μˆ˜, λ¬Έμžμ—΄ λ˜λŠ” μ—¬λŸ¬ 가지 νƒ€μž…μ΄ 합쳐진 것일 μˆ˜λ„ μžˆλ‹€.

데이터 νƒ€μž…

λ°μ΄ν„°μ˜ 집합과 μ΄λŸ¬ν•œ 데이터에 μ μš©ν•  수 μžˆλŠ” μ—°μ‚°μ˜ 집합을 λ§ν•œλ‹€.

  • ex) cμ–Έμ–΄μ—μ„œ int 데이터 νƒ€μž…μ€
    • 데이터 : {..., -2, -1, 0, 1, 2, ...}
    • μ—°μ‚° : {+, -, *, /, %}

좔상 데이터 νƒ€μž…

μƒˆλ‘œμš΄ 데이터 νƒ€μž…μ„ 좔상적(/μˆ˜ν•™μ , abstract)으둜 μ •μ˜ν•œ 것이닀.

μžλ£Œκ΅¬μ‘°λž€ 이런 좔상 데이터 νƒ€μž…μ„ ν”„λ‘œκ·Έλž˜λ° μ–Έμ–΄λ‘œ κ΅¬ν˜„ν•œ 것이닀.

좔상 데이터 νƒ€μž…μ˜ μ •μ˜(λͺ…μ„Έ)

  • 데이터 νƒ€μž…μ— μ†ν•˜λŠ” 데이터 객체의 μ •μ˜. μ§‘ν•©μ˜ κ°œλ…μ„ μ‚¬μš©ν•˜μ—¬ μ •μ˜ν•œλ‹€.
  • 연산을 μ •μ˜ β†’ μ—°μ‚°μ˜ 이름, λ§€κ°œλ³€μˆ˜, μ—°μ‚°μ˜ κ²°κ³Ό, μˆ˜ν–‰ν•˜λŠ” κΈ°λŠ₯ λ“±

좔상 데이터 νƒ€μž…μ˜ κ΅¬ν˜„

  • 세뢀사항이 μ•„λ‹Œ μΈν„°νŽ˜μ΄μŠ€λ§Œ μ‚¬μš©ν•˜κΈ° λ•Œλ¬Έμ—, κ΅¬ν˜„μ€ 이후에 변경될 수 μžˆλ‹€.
    β†’ 정보은닉
  • 전체 ν”„λ‘œκ·Έλž¨μ„ λ³€κ²½ κ°€λŠ₯성이 μžˆλŠ” κ΅¬ν˜„μ˜ μ„ΈλΆ€ μ‚¬ν•­μœΌλ‘œ λΆ€ν„° λ³΄ν˜Έν•˜λŠ” 것이닀.
  • κ΅¬ν˜„μœΌλ‘œλΆ€ν„° λͺ…μ„Έμ˜ 뢄리가 좔상 데이터 νƒ€μž…μ˜ 쀑심 아이디어이닀.

νŠΉμ„±

  • μœ μ €λŠ” ADTκ°€ μ œκ³΅ν•˜λŠ” μ—°μ‚°λ§Œ μ‚¬μš©ν•  수 μžˆλ‹€.
  • μœ μ €λŠ” ADTκ°€ μ œκ³΅ν•˜λŠ” μ—°μ‚°μ˜ λͺ…μ„Έλ₯Ό 이해해야 ν•œλ‹€. β†’ μ–΄λ–»κ²Œ μ‚¬μš©ν•˜λŠ”μ§€λ₯Ό μ•Œμ•„μ•Ό ν•œλ‹€.
  • μœ μ €λŠ” ADT λ‚΄λΆ€μ˜ 데이터에 직접 μ ‘κ·Όν•  수 μ—†λ‹€. λ‚΄λΆ€μ˜ 데이터λ₯Ό 보호 β†’ μΊ‘μŠν™”
  • μœ μ €λŠ” 데이터가 μ–΄λ–»κ²Œ μ €μž₯λ˜λŠ”μ§€λŠ” λͺ¨λ₯΄λ”라도 μ‚¬μš©μ€ κ°€λŠ₯ν•˜λ‹€
  • λ‹€λ₯Έ μ‚¬λžŒμ΄ ADT의 κ΅¬ν˜„μ„ λ³€κ²½ν•˜λ”λΌλ„ μΈν„°νŽ˜μ΄μŠ€κ°€ λ³€κ²½λ˜μ§€ μ•Šμ•˜μœΌλ©΄ μœ μ €λŠ” 같은 λ°©μ‹μœΌλ‘œ ADTλ₯Ό μ‚¬μš© κ°€λŠ₯ν•˜λ‹€.

ADTλŠ” 객체지ν–₯ ν”„λ‘œκ·Έλž¨ 언어에 λ§Žμ€ 영ν–₯을 μ£Όμ—ˆλ‹€.

Reference

  • <Cμ–Έμ–΄λ‘œ μ‰½κ²Œ ν’€μ–΄μ“΄ 자료 ꡬ쑰 2판> 생λŠ₯좜판, 천인ꡭ, κ³΅μš©ν•΄, ν•˜μƒν˜Έ 2014, p.17 ~ 20
profile
πŸ’ͺ πŸ₯© 🍺 ✈ πŸ’»

0개의 λŒ“κΈ€