higher order function

  • ์ฝ”๋“œ๋ฅผ ์ ๋Š” ์‹œ๊ฐ„์ด ์ค„์–ด๋“ ๋‹ค.

  • ํ”„๋กœ๊ทธ๋žจ์„ ๋งŒ๋“ค ๋•Œ ๋ฒ„๊ทธ๊ฐ€ ์ ๊ฒŒ ์ƒ๊ธด๋‹ค.

์˜ˆ์‹œ

๋งŒ์•ฝ์— ๋ฐฐ์—ด์•ˆ์— ๊ฐ์ฒด๊ฐ€ ์žˆ๊ณ  ๊ทธ ๊ฐ์ฒด์— species๊ฐ€ dog์ธ์ง€๋ฅผ ์ฐพ๋Š”๋‹ค. ๊ทธ๋Ÿผ ์ฃผ๋กœ for๋ฌธ์— if๋ฌธ์„ ๋Œ๋ ค์„œ ๋งŒ๋“ ๋‹ค.

filter๋ฅผ ์ด์šฉํ•ด์„œ ํ•  ์ˆ˜ ์žˆ๋‹ค.

filter์— ๋“ค์–ด๊ฐ€๋Š” ํ•จ์ˆ˜๋ฅผ ๋”ฐ๋กœ ๋ณ€์ˆ˜์— ๋‹ด์•„์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

์ด๋Ÿฐ๊ฑธ ํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ์ด๋ผ ํ•œ๋‹ค. ์ธ์ž๋กœ ๋ฐ›๊ฑฐ๋‚˜ ๋ฐ˜ํ™˜ํ•˜๋Š” ๊ฑธ ๋งํ•œ๋‹ค.

first class function (์ผ๊ธ‰ํ•จ์ˆ˜)

ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์˜ ํ•จ์ˆ˜์˜ ํŠน์ง• ํ•จ์ˆ˜์˜ ์„ฑ๊ฒฉ์„ ๋งํ•œ๋‹ค.

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋งŒ์˜ ํŠน์ง•

  1. ๋ณ€์ˆ˜์˜ ๊ฐ’์œผ๋กœ ํ•จ์ˆ˜๋กœ ํ• ๋‹น ํ•  ์ˆ˜ ์žˆ๋‹ค.

  2. ๊ฐ์ฒด์˜ ์†์„ฑ ๊ฐ’์œผ๋กœ ํ• ๋‹น

  3. ํ•จ์ˆ˜๋ฅผ ์ธ์ž๋กœ ๋ฐ›์„ ์ˆ˜ ์žˆ๋‹ค.

  4. ํ•จ์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

ํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ

ํ•จ์ˆ˜๊ฐ€ ํ•จ์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•˜๊ฑฐ๋‚˜ ์ธ์ž๋กœ ๋ฐ›๋Š” ๊ฑธ ํ—ˆ๋ฝํ•œ ์„ธ์ƒ, ๊ทœ์น™์— ์–ด๊ธ‹๋‚˜์ง€ ์•Š์Œ

๊ทธ ์†์—์„œ ์œ„์˜ ํ–‰๋™์„ ํ•˜๋Š” ํ•จ์ˆ˜

๊ทธ๋Ÿฐ๊ฑธ ํ•˜๋Š” ํ•จ์ˆ˜๋“ค์ด ๋ชจ์—ฌ์„œ ์ด๋ฃจ๋Š” ํŒจ๋Ÿฌ๋‹ค์ž„ ๋˜๋Š” ์Šคํƒ€์ผ

Last updated

Was this helpful?