πŸ“•[μ±…] 쏙쏙 λ“€μ–΄μ˜€λŠ” ν•¨μˆ˜ν˜• μ½”λ”© - 21,22

rivolt0421Β·2023λ…„ 4μ›” 6일
0

πŸ“•μ±…

λͺ©λ‘ 보기
13/26

233p ~ 252p

μš”μ•½

πŸ˜‡
파트 2 μ—μ„œ ν•  것 : "일급이 μ•„λ‹Œ 것을 μ°Ύκ³  그것을 μΌκΈ‰μœΌλ‘œ λ°”κΏ” 보기"

πŸ˜‡
μ½”λ“œμ˜ λƒ„μƒˆ λ§‘λŠ” 법 (ν•¨μˆ˜ 이름에 μžˆλŠ” 암묡적 인자λ₯Ό ν¬μ°©ν•˜λŠ” 법)

  1. ν•¨μˆ˜ μ—¬λŸ¬κ°œκ°€ λΉ„μŠ·ν•œ κ΅¬ν˜„μ„ μ§€λ‹ˆκ³  있고,
  2. 'ν•¨μˆ˜ 이름'이 κ΅¬ν˜„μ˜ 차이λ₯Ό λ§Œλ“œλŠ” ν˜•νƒœλΌλ©΄
  3. 각 ν•¨μˆ˜λ“€μ˜ ν•¨μˆ˜ μ΄λ¦„μ—μ„œ μ„œλ‘œ λ‹€λ₯Έ 뢀뢄이 암묡적 μΈμžμ΄λ‹€.

두 κ°€μ§€μ˜ λ¦¬νŒ©ν„°λ§μœΌλ‘œ ν•΄κ²° κ°€λŠ₯

  1. 암묡적 인자λ₯Ό λ“œλŸ¬λ‚΄κΈ°. 즉, λͺ…μ‹œμ  인자둜 λ°”κΎΈκΈ° ➑️ 였늘의 주제
  2. ν•¨μˆ˜ 본문을 콜백으둜 λ°”κΎΈκΈ° (λ‹€μŒ ν¬μŠ€νŒ…μ—μ„œ.)

πŸ˜‡
"암묡적 인자λ₯Ό λ“œλŸ¬λ‚΄κΈ°" 단계

  1. ν•¨μˆ˜ 이름에 μžˆλŠ” 암묡적 인자λ₯Ό ν™•μΈν•œλ‹€.
  2. λͺ…μ‹œμ μΈ 인자λ₯Ό μΆ”κ°€ν•œλ‹€.
  3. ν•¨μˆ˜ 본문에 ν•˜λ“œ μ½”λ”©λœκ°’μ„ μƒˆλ‘œμš΄ 인자둜 λ°”κΎΌλ‹€.
  4. ν•¨μˆ˜λ₯Ό ν˜ΈμΆœν•˜λŠ” 곳을 κ³ μΉœλ‹€.

πŸ˜‡
λͺ…μ‹œμ μΈ 인자둜 전달할 수 μžˆλŠ”, λ³€μˆ˜λ‚˜ 배열에 담을 수 μžˆλŠ”, 즉 μ–Έμ–΄ μ–΄λ””μ„œλ‚˜ μ‚¬μš©κ°€λŠ₯ν•œ 것 -> 일급
(κ·Έ λ°˜λŒ€λŠ” 암묡적인, 담을 수 μ—†λŠ”, μ•„λ¬΄λ°μ„œλ‚˜ μ‚¬μš©ν•  수 μ—†λŠ”.)

κ·Έλž˜μ„œ "암묡적 인자λ₯Ό λ“œλŸ¬λ‚΄κΈ°" λ¦¬νŒ©ν„°λ§λ„ κ²°κ΅­, 암묡적인 이름을 인자둜 λ„˜κΈΈμˆ˜ μžˆλŠ” μ–΄λ–€κ²ƒμœΌλ‘œ λ°”κΎΈλŠ” κ³Όμ •. 즉, μΌκΈ‰μœΌλ‘œ λ°”κΎΈλŠ” κ³Όμ •.

πŸ˜‡
μžλ°”μŠ€ν¬λ¦½νŠΈμ—μ„œ 일급(first-class)κ°€ μ•„λ‹Œ 것

  1. μˆ˜μ‹ μ—°μ‚°μž
  2. 반볡문
  3. 쑰건문
  4. try/catch 블둝

μΌκΈ‰μœΌλ‘œ ν•  수 μžˆλŠ” 것

  1. λ³€μˆ˜μ— ν• λ‹Ή
  2. ν•¨μˆ˜μ˜ 인자둜 λ„˜κΈ°κΈ°
  3. ν•¨μˆ˜μ˜ λ¦¬ν„΄κ°’μœΌλ‘œ λ°›κΈ°
  4. λ°°μ—΄μ΄λ‚˜ 객체에 λ‹΄κΈ°

πŸ˜‡
e.g.
λŸ°νƒ€μž„ 검사 λ°©λ²•μœΌλ‘œ ν•„λ“œλͺ…(μΌκΈ‰μœΌλ‘œ μ „λ‹¬λœ)이 μ˜¬λ°”λ₯Έμ§€ ν™•μΈν•˜λŠ” λ™μž‘.
API의 λ³€κ²½μœΌλ‘œ μ›λž˜ ν•„λ“œλͺ…을 μƒˆλ‘œμš΄ ν•„λ“œλͺ…μœΌλ‘œ λ‚΄λΆ€μ—μ„œ λŒ€μΉ˜μ‹œμΌœμ£ΌλŠ” λ™μž‘.

  • 이것듀은 ν•„λ“œλͺ…이 일급이기 λ•Œλ¬Έμ— ν•  수 μžˆλŠ” 것.
  • μΌκΈ‰μ΄λΌλŠ” 말은 κ°μ²΄λ‚˜ 배열에 담을 수 μžˆλ‹€λŠ” 뜻.
  • μ–Έμ–΄μ˜ λͺ¨λ“  κΈ°λŠ₯을 ν™œμš©ν•΄ ν•„λ“œλͺ…을 μ²˜λ¦¬ν•  수 μžˆλ‹€.

πŸ˜‡
μ–΄λ–€ 문법이든 일급 ν•¨μˆ˜λ‘œ λ°”κΏ€ 수 μžˆλ‹€.

  • μžλ°”μŠ€ν¬λ¦½νŠΈμ—μ„œ 'ν•¨μˆ˜' μžμ²΄λŠ” 일급 κ°’. (인자 전달 κ°€λŠ₯, λ³€μˆ˜/배열에 λ‹΄κΈ° κ°€λŠ₯, μ–΄λ””μ„œλ‚˜ μ‚¬μš© κ°€λŠ₯)
  • '+' μ—°μ‚°μžλŠ” 일급이 μ•„λ‹ˆλ‹€. 단, 같은 λ™μž‘μ„ ν•˜λŠ” 일급 ν•¨μˆ˜λ₯Ό λ§Œλ“€ 수 μžˆλ‹€.
  • 즉, μ–΄λ–€ 문법이든 일급 ν•¨μˆ˜λ‘œ λ°”κΏ€ 수 μžˆλ‹€.

발췌

그럼 μš°λ¦¬λŠ” μ–΄λ–»κ²Œ ν•΄μ•Ό ν• κΉŒμš”?
μ—¬λŸ¬λΆ„κ³Ό μ—¬λŸ¬λΆ„μ˜ νŒ€μ΄ μ„ νƒν•œ μ–Έμ–΄κ°€ νŽΈν•˜λ‹€λ©΄ κ±±μ •ν•˜μ§€ 말고 계속 μ‚¬μš©ν•˜μ‹œλ©΄ λ©λ‹ˆλ‹€.
그리고 μž μ„ 더 μžλŠ” 것이 μ’‹κ² λ„€μš”.

  • 정적 νƒ€μž… vs 동적 νƒ€μž…, 컴파일 νƒ€μž„ 검사 vs λŸ°νƒ€μž„ 검사 μ—μ„œ.

데이터 μ§€ν–₯
μ΄λ²€νŠΈμ™€ 엔티티에 λŒ€ν•œ 사싀을 ν‘œν˜„ν•˜κΈ° μœ„ν•΄ 일반 데이터 ꡬ쑰λ₯Ό μ‚¬μš©ν•˜λŠ” ν”„λ‘œκ·Έλž˜λ° ν˜•μ‹.

  • 호좜 κ·Έλž˜ν”„ μ•„λž˜μ— μœ„μΉ˜ν•œ 일반적인(μœ„μ— μœ„μΉ˜ν•œ ꡬ체적인 것과 λ°˜λŒ€) 엔티티에 λŒ€ν•΄μ„œλŠ”, μ—¬λŸ¬ κ³³μ—μ„œ μ‚¬μš©λ  μž¬μ‚¬μš©μ„±μ„ μœ„ν•΄ 일반적인 데이터 ꡬ쑰인 객체/배열을 μ‚¬μš©.
  • 일반 데이터 ꡬ쑰가 μ•„λ‹Œ μž„μ˜μ˜ μΈν„°νŽ˜μ΄μŠ€(μ»€μŠ€ν…€ API)둜 κ°μ‹Έμ„œ μ‚¬μš©ν•˜λ©΄, 데이터λ₯Ό μ •ν•΄μ§„ λ°©λ²•μœΌλ‘œλ§Œ 써야 ν•œλ‹€. λ¬Όλ‘  그런 μ œν•œμ΄ μœ μš©ν•œ μˆœκ°„λ„ μžˆμ„ 것.

λ©”λͺ¨

그리고 μž μ„ 더 μžλŠ” 것이 μ’‹κ² λ„€μš”.

profile
I think I think too much.

0개의 λŒ“κΈ€