Backbone: ๊ณต์‹์ ์ธ ์˜๊ฒฌ ํ•„์š” [๋ฐ‘์ค„ vs. lodash]

์— ๋งŒ๋“  2015๋…„ 08์›” 06์ผ  ยท  7์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: jashkenas/backbone

๋ˆ„๊ตฐ๊ฐ€ Lodash์˜ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ / ์‚ฌ์šฉ์ด ์–ผ๋งˆ๋‚˜ ์•ˆ์ •์ ์ธ์ง€ Backbone.JS์˜ ๊ณต์‹ ์˜๊ฒฌ์„ ์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

๋‚˜๋Š” ์ด๊ฒƒ์„ ์•Œ๊ณ ์žˆ๋‹ค :

Lodash Migration ๋…ธํŠธ๋ฅผ ์ฝ์—ˆ์ง€๋งŒ ์—ฌ์ „ํžˆ ๋ฐฑ๋ณธ ์ปค๋ฎค๋‹ˆํ‹ฐ ์˜๊ฒฌ๋„ ์›ํ•ฉ๋‹ˆ๋‹ค. ์œ„์˜ ๋ชจ๋“  lodash ๋ฒ„์ „์ด 1.1.x๋ถ€ํ„ฐ ๋ชจ๋“  ๋ฒ„์ „์˜ ๋ฐฑ๋ณธ์—์„œ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ž‘๋™ํ•˜๋Š”์ง€ ํ™•์ธํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.

UPD-1 : ๋‹ค์ด์ œ์ŠคํŠธ ์‹œ๋„ ์ค‘ : https://github.com/jashkenas/underscore/issues/2182

UPD-2 : ์‚ฌ์‹ค ๊ฐœ์ธ์ ์œผ๋กœ ๋น„์Šทํ•œ ๋ชฉ์ ์„์œ„ํ•œ ์ตœ์ดˆ์˜ ์›๋ณธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ์„œ Underscore๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐ ๋” ๊ฐ€๊น์Šต๋‹ˆ๋‹ค. ์ €๋Š” John-David๊ฐ€ ํฌํฌ๋ฅผํ•ด์„œ ์ƒˆ๋กœ์šด whell์„ ๋งŒ๋“ค์ง€ ๋ง์•„์•ผํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๋Œ€์‹  ๊ทธ๋Š” Underscore์™€ ํ•จ๊ป˜ /์— ๊ธฐ์—ฌํ•˜๊ณ  Jeremy๊ฐ€ ๋ฐ‘์ค„์„ ํ–ฅ์ƒ์‹œํ‚ค๋Š” ๋ฐ ๋„์›€์„ ์ฃผ์—ˆ์–ด์•ผํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ์ฝœ๋ผ๋ณด๋ ˆ์ด์…˜์—์„œ ๋ฌด์—‡์ด ๋‚˜์œ๊ฐ€์š”? ๊ทธ๋Ÿฌ๋‚˜ ๋‚˜๋Š” ๋‘ libs์˜ ์—ญ์‚ฌ์—์„œ ๊ทธ๋ ‡๊ฒŒ ์ข‹์ง€ ์•Š์•„์„œ ์ฐฉ๊ฐ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฏธ๋ฆฌ ์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค.

UPD-3 : ๋ฐฑ๋ณธ ํ…Œ์ŠคํŠธ. ๊ทธ๋Ÿฐ ์‹์œผ๋กœ ์ƒ๊ฐ์„ ์ด‰๋ฐœ์‹œํ‚จ @RusAlex ์—๊ฒŒ ํŠน๋ณ„ํžˆ ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์ €๋Š” 2 ๊ฐ€์ง€ ๋ฒ„์ „์˜ ๋ฐฑ๋ณธ์„ ๊ฐ€์ง€๊ณ  ๋‹ค๋ฅธ lodash ๋ฒ„์ „์œผ๋กœ ํ…Œ์ŠคํŠธ๋ฅผ ์‹คํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค.

_Backbone 1.1.2 ๋ฐ _

  • lodash 3.10.1-์‹คํŒจํ•œ ํ…Œ์ŠคํŠธ ์—†์Œ
  • lodash.compat v3.10.0-์‹คํŒจํ•œ ํ…Œ์ŠคํŠธ ์—†์Œ
  • ๋‚ด prj์—์„œ lodash. frozen v. 2.4.1-์‹คํŒจํ•œ ๊ณ ํ™˜ ์—†์Œ
  • lodash.underscore v2.4.1-์‹คํŒจํ•œ ํ…Œ์ŠคํŠธ ์—†์Œ :

_Backbone 1.2.1 ๋ฐ _

  • lodash 3.10.1-์‹คํŒจํ•œ ํ…Œ์ŠคํŠธ ์—†์Œ
  • lodash.compat v3.10.0-์‹คํŒจํ•œ ํ…Œ์ŠคํŠธ ์—†์Œ
  • ๋‚ด prj์—์„œ lodash. v.2.4.1-4 ๊ฐœ์˜ ์‹คํŒจํ•œ ํ…Œ์ŠคํŠธ (68, 69, 200, 202)
  • lodash.underscore v2.4.1-20 ๊ฐœ์˜ ์‹คํŒจํ•œ ํ…Œ์ŠคํŠธ (68, 69, 200, 202, 342-345, 355-363, 366, 368, 370)

๊ทธ๋ž˜์„œ ๋‘ ๊ฐ€์ง€ ๋ชจ๋‘ "์ถœ์‹œ ์‹œ์ ์— ์ตœ์‹  ๋ฒ„์ „์˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ"๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ ์ ˆํ•˜๊ณ  ์œ„ํ—˜ํ•˜์ง€ ์•Š๋‹ค๊ณ  ๊ฐ€์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋ถ„๋ช…ํžˆ-๋‹ค๋ฅธ ๋ฆด๋ฆฌ์Šค / ๋ฒ„์ „์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์€ ์œ„ํ—˜ํ•ฉ๋‹ˆ๋‹ค.

question

๋ชจ๋“  7 ๋Œ“๊ธ€

์ž„ ๊ณต๋ฌด์›์ด ์•„๋‹™๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ํ”„๋กœ๊ทธ๋ž˜๋จธ.

undescrore๋ฅผ lodash๋กœ ๋ฐ”๊พธ๊ณ  ๋ฐฑ๋ณธ ํ…Œ์ŠคํŠธ๋ฅผ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค.

๋ฐฑ๋ณธ์€ ์ž˜ ํ…Œ์ŠคํŠธ ๋œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ด๊ธฐ ๋•Œ๋ฌธ์— ํ…Œ์ŠคํŠธ๊ฐ€ ์กด์žฌํ•ฉ๋‹ˆ๋‹ค.

@RusAlex ๊ท€ํ•˜์˜ ๋Œ€๋‹ต์€ ์ด๋ฏธ

_ ์ฐธ๊ณ  _ : ์ด๋ฏธ lodash / ๋ฐฑ๋ณธ ์ ‘๊ทผ ๋ฐฉ์‹์œผ๋กœ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ํ–ˆ์ง€๋งŒ (๋‚ด ํ”„๋กœ์ ํŠธ๋Š” ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค), ๋‚ด ํ”„๋กœ์ ํŠธ ์ตœ์ƒ์œ„ ์•„ํ‚คํ…์ฒ˜ ์ปค๋ฎค๋‹ˆํ‹ฐ๊ฐ€ ์•„์ง ์˜ฌ๋ฐ”๋ฅธ ๋ฐฉ๋ฒ•์ธ์ง€ ํ™•์‹ ํ•˜์ง€ ๋ชปํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ ์ ˆํ•œ ๋ฐฉ๋ฒ•์„ ์ฐพ๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. 100 % ์˜ฌ๋ฐ”๋ฅธ ๊ธธ๋กœ ๋‚˜์•„๊ฐ€์‹ญ์‹œ์˜ค.

๋ฐ‘์ค„ ๋ฌธ์ œ # 2182๋ฅผ ์ฝ์€ ํ›„ ์กฐ๋งŒ๊ฐ„ ์šฐ๋ฆฌ๊ฐ€ ๋ฐ‘์ค„์ด ์ƒ๊ธธ ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ๊นจ๋‹ฌ์•˜์œผ๋ฉฐ @jashkenas ์™€ @jdalton ๊ฐ„์˜ ์ด๋Ÿฌํ•œ ํ˜‘๋ ฅ์— ๋™์˜ํ•ฉ๋‹ˆ๋‹ค. ์ด "์‹ ๋“ค"์€ ์ง€๊ธˆ ๋ฐ”์˜๊ธฐ ๋•Œ๋ฌธ์— ์—ฌ๊ธฐ์—์„œ ๋Œ€๋‹ต ํ•  ํ™•๋ฅ ์ด ๋งค์šฐ ๋‚ฎ์Šต๋‹ˆ๋‹ค.
์–ด์จŒ๋“  ๋‚˜์—๊ฒŒ๋Š” OFFICIAL๊ณผ ๋™๋“ฑํ•œ ๋Œ€๋‹ต์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค !!!

๊ทธ๋ž˜์„œ ๋‘ ๊ฐ€์ง€ ๋ชจ๋‘ "์ถœ์‹œ ์‹œ์ ์— ์ตœ์‹  ๋ฒ„์ „์˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ"๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ ์ ˆํ•˜๊ณ  ์œ„ํ—˜ํ•˜์ง€ ์•Š๋‹ค๊ณ  ๊ฐ€์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋ถ„๋ช…ํžˆ-๋‹ค๋ฅธ ๋ฆด๋ฆฌ์Šค / ๋ฒ„์ „์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์€ ์œ„ํ—˜ํ•ฉ๋‹ˆ๋‹ค.

์–. Lodash์—๋Š” Backbone ๋ฐ Underscore ํ…Œ์ŠคํŠธ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์œผ๋ฉฐ ํ˜„์žฌ ์•ˆ์ •์ ์ธ ๋ฆด๋ฆฌ์Šค๊นŒ์ง€ ๊ฐ ์ปค๋ฐ‹์— ๋Œ€ํ•ด ์‹คํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ช‡ ๊ฐ€์ง€ ํ…Œ์ŠคํŠธ๊ฐ€ ๋ฐฑ๋ณธ๊ณผ ๊ด€๋ จ์ด์—†๋Š” Underscore ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์•ž์œผ๋กœ Lodash๋Š” ์‹คํŒจ ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ Lodash ์ธก๋ฉด์—์„œ ๋†€๋ผ์šด ์ผ์€ ์—†์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋งŽ์€ ํ”„๋กœ์ ํŠธ ๊ฐ€ Backbone๊ณผ ํ•จ๊ป˜ Lodash๋ฅผ ๋จผ์ €
๋ฐฑ๋ณธ์ด ์—ฌ๊ธฐ์— ๊ณต์‹์ ์ธ ์„ฑ๋ช…์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค๊ณ  ์ƒ๊ฐ

Zepto์™€ Lo-Dash ํ˜ธํ™˜์„ฑ์„ ํ…Œ์ŠคํŠธํ•˜์ง€๋Š” ์•Š์ง€๋งŒ ๋‘˜ ๋‹ค ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ๋” ๊ฐ•๋ ฅํ•œ ๋ณด์ฆ์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ jQuery ๋ฐ Underscore๋ฅผ ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค.

lodash๋Š” CI์˜ ๋ชจ๋“  ๋ฐฑ๋ณธ ํ…Œ์ŠคํŠธ๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ํ†ต๊ณผํ•ฉ๋‹ˆ๋‹ค. ์ถ”๊ฐ€๋กœ Marionette ๋Š” ์—ฌ๋Ÿฌ ๋ฒ„์ „์˜ ๋ฐ‘์ค„ (1.4-1.8) ๋ฐ lodash (> = 2.4.0)๋กœ ๋‹จ์œ„ ํ…Œ์ŠคํŠธ๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์š”์•ฝ : ๋ฐฑ๋ณธ์€ lodash 2.4-3.10์—์„œ ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค (2.x ์‹œ๋ฆฌ์ฆˆ์˜ ๊ฒฝ์šฐ lodash.backbone ์‚ฌ์šฉ).

์ž‘๋™ํ•˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ด์ง€๋งŒ ์ผ์ข…์˜ ์ข…์†์„ฑ (https://github.com/thejameskyle/marionette-wires/blob/master/package.json#L96-L103)์— ๋Œ€ํ•ด ์•ผ์ƒ์—์„œ ๋ฐ‘์ค„์„ lodash๋กœ ๋ฐ”๊พธ๋Š” ๋ธŒ๋ผ์šฐ์ € ํ™” ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์Šค์ผ€์น˜ (๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ„์— API ์ฐจ์ด๊ฐ€ ๋งŽ์œผ๋ฏ€๋กœ).

@jdalton ๋‹ต์žฅ์„ ๋ณด๋‚ด
๋‚˜๋Š” ๋ฐฑ๋ณธ ๋ฌธ์„œ์˜ ๊ทธ ๋ถ€๋ถ„์„ ์ฝ์—ˆ์œผ๋ฉฐ ๋‚˜์—๊ฒŒ ์ถฉ๋ถ„ํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๋‚ด ํ”„๋กœ์ ํŠธ ์ปค๋ฎค๋‹ˆํ‹ฐ์˜ ๋ชจ๋“  ๊ฐœ๋ฐœ์ž๊ฐ€์ด ๋ฌธ์žฅ์— ์ž์‹ ์ด์žˆ๋Š” ๊ฒƒ์€ ์•„๋‹™๋‹ˆ๋‹ค.

๋‹ค์–‘ํ•œ ์ˆ˜์ค€์˜ ํ˜ธํ™˜์„ฑ์œผ๋กœ ์ž‘๋™ํ•˜๋Š” ๊ฒฝํ–ฅ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

์–ด๋Š ์ •๋„ ๋ถˆํ™•์‹ค์„ฑ์„ ๋งํ•ด์ค๋‹ˆ๋‹ค . ๊ทธ๋ฆฌ๊ณ  ๋‚˜๋Š” ๊ทธ๋Ÿฐ ๊ฐœ๋ฐœ์ž๋“ค๊ณผ 1 % ๋™์˜ํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ์ œ๊ฐ€์ด ํ† ๋ก ์„ ์‹œ์ž‘ํ•œ ์ด์œ ์ž…๋‹ˆ๋‹ค.

๋ฟก๋ฟก

  • ์ง€์  ํ•ด ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ์ €๋Š” ๋งˆ๋ฆฌ์˜ค๋„คํŠธ ํŒ€์ด ์ •๋ง ๊ธฐ์ฉ๋‹ˆ๋‹ค. ์ œ ๊ฟˆ์—์„œ ๊ทธ๋“ค์€ ์›๋ž˜ ๋ฐฑ๋ณธ ํŒ€๊ณผ ๋‘ ๋ฐฐ์˜ ๊ฐœ๋ฐœ๋ ฅ๊ณผ ํ•ฉ๋ณ‘ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.
  • ๋‚ด๊ฐ€ ์กฐ์‚ฌํ•œ ํ•œ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

    • lodash-for-backbone ์€ ์‚ฌ์‹ค ์ด์ƒํ•˜๊ณ  ์ •ํ™•ํžˆ ๋‚ด๊ฐ€ ์›ํ•˜๋Š” ๊ฒƒ์€ ์•„๋‹™๋‹ˆ๋‹ค.

    • ๋ฐฑ๋ณธ lodash @jashkenas ๋ฐ @brandonpapworth ๊ธฐ๋ถ€ ์‚ฌ์‹ค ๋ฐฑ๋ณธ 1.1.2์ž…๋‹ˆ๋‹ค. ์‚ฌ์‹ค ๊ทธ๊ฒƒ์€ Backbone์˜ 12 ๊ฐœ ํฌํฌ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์ „ํ˜€ ๊ด€์‹ฌ์ด ์—†์Šต๋‹ˆ๋‹ค (Jeremy๊ฐ€ ์šฐ๋ฆฌ์—๊ฒŒ ๋งํ•˜์ง€ ์•Š๋Š” ํ•œ-๊ทธ ๋ฒ„์ „์ด ๋ฐฑ๋ณธ์„ ์ „ํ˜€ ๋Œ€์ฒด ํ•  ๊ฒƒ์ด๋ผ๊ณ  ๋งํ•˜์ง€ ์•Š๋Š” ํ•œ).

  • "browserify way"๋Š” ๋‚ด ์ปค๋ฎค๋‹ˆํ‹ฐ ํ”„๋กœ์ ํŠธ ์ค‘ ํ•˜๋‚˜์—์„œ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ํ•˜๋‚˜์˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๋‹ค๋ฅธ ์ด๋ฆ„์œผ๋กœ ๊ฐ„๋‹จํžˆ ๋Œ€์ฒดํ•จ์œผ๋กœ์จ ๊ฐœ๋ฐœ์ž์—๊ฒŒ "LIE"๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๋‚˜๋ฅผ์œ„ํ•œ ๊ฒƒ์ด ์•„๋‹™๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜ ๋‹ค์‹œ ํ•œ ๋ฒˆ ์˜๊ฒฌ์„ ๋ณด๋‚ด ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

๋ฟก๋ฟก
์˜ˆ, ๋” ๊ฐ•๋ ฅํ•œ ๋ณด์ฆ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ง€๊ธˆ์€ ๋ฐฑ๋ณธ ํ…Œ์ŠคํŠธ ๊ฒฐ๊ณผ์ž…๋‹ˆ๋‹ค (#TDD๊ฐ€ ํ•„์š”ํ•˜๊ณ  ์ž‘๋™ํ•œ๋‹ค๋Š” ๋˜ ํ•˜๋‚˜์˜ ์ž…์ฆ ๋œ ์‚ฌ์‹ค), ๊ทธ๋“ค์€ ์ธํ„ฐ๋„ท์„ ํ†ตํ•œ ๊ฑฐ๋ฃฉํ•œ ์ „์Ÿ ์ด์ƒ์˜ ๊ฒƒ์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. ๋ฌธ์ œ๋ฅผ ๋‹ซ์•„ ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ๋‹น๋ถ„๊ฐ„ ํ•ด๊ฒฐ ๋œ ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ด๋ฉฐ ํ•ด๊ฒฐ์ฑ…์ด ์žˆ์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ํ™•์‹คํžˆ Lodash๋กœ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ํ•˜๊ณ  ๊ธฐ๋‹ค๋ฆฌ๋Š” Underdash ์ •๋ง ๊ทธ ํฌ๋ง ์•Š์Šต๋‹ˆ๋‹ค :).

Oy, backbone-lodash ๋Š” ๊ณผ๊ฑฐ๋กœ๋ถ€ํ„ฐ์˜ ํญ๋ฐœ์ž…๋‹ˆ๋‹ค. ๋‚ด ์‚ฌ์šฉ ์‚ฌ๋ก€์—์„œ๋Š” Underscore์— ๋น„ํ•ด Lodash๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฌธ์ œ์— ๋ถ€๋”ชํžˆ์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— ๋Œ€ํ•œ ๋˜ ๋‹ค๋ฅธ ๋ณ€๊ฒฝ ์‚ฌํ•ญ ์€ $('<' + someTagName + '>') ๋Œ€์‹  document.createElement(someTagName) ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ View ์š”์†Œ๋ฅผ ์ƒ์„ฑ ํ•  ์ˆ˜์žˆ๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์ด์—ˆ์ง€๋งŒ ์†”์งํžˆ Backbone์„ ์•„์ฃผ ์˜ค๋žซ๋™์•ˆ ์‚ฌ์šฉํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ์ œ์ณ๋‘๊ณ  : ๊ด€๋ฆฌ๋˜์ง€ ์•Š๋Š” ์˜ค๋ž˜๋œ ์ฝ”๋“œ๋ฅผ ๋˜๋Œ์•„ ๋ณด๋Š” ๊ฒƒ์ด ๋งค์šฐ ์ฆ๊ฒ๊ณ  ์šฐ์šธํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ๊นจ๋‹ฌ์•˜์Šต๋‹ˆ๋‹ค.

๋‚ด ํˆฌํ‘œ๋Š” Lodash๊ฐ€ ์‚ฌ๋žŒ๋“ค์„ ์œ„ํ•ด ์ž‘๋™ํ•˜๊ณ  ํ…Œ์ŠคํŠธ๊ฐ€ ๋ชจ๋“  ์กด์žฌ๋ฅผ ๋นจ์•„๋“ค์ด๋Š” ํŠน์ด์ ์„ ์ƒ์„ฑํ•˜์ง€ ์•Š์œผ๋ฉด ํ™•์‹คํžˆ Lodash๋ฅผ์œ„ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰