HandStack v1.0.0-beta.1 ์ถœ์‹œ

๋‚ด๊ฐ€ ์˜๋„ํ•œ ๊ฒฐ๊ณผ๋ฅผ ๋งŒ๋“ค์–ด๊ฐ€๋ ค๋ฉด?

๊ณ ๋ฐฑํ•˜๊ฑด๋ฐ ์ €๋Š” 1994๋…„๋„ ๊ณ ๋“ฑํ•™์ƒ๋•Œ ๋ฏธ๋ž˜์— ํ”„๋กœ๊ทธ๋ž˜๋จธ๋กœ์„œ ๋””์ง€ํ„ธ ๋…ธ๋งˆ๋“œ์˜ ์‚ถ์„ ๋ง‰์—ฐํ•˜๊ฒŒ ๊ฟˆ๊ฟจ์Šต๋‹ˆ๋‹ค. ์ „ ์„ธ๊ณ„๋ฅผ ๋Œ์•„ ๋‹ค๋‹ˆ๋ฉฐ ์–ด๋””์—์„œ๋“  ์ž์œ ๋กญ๊ฒŒ ์ผ์„ ํ•˜๋ฉฐ ๋‹ค์–‘ํ•œ ๊ฒฝํ—˜์„ ์Œ“๊ณ  ์‹ถ์—ˆ๊ฑฐ๋“ ์š”.

์ฒ ์—†๋˜ ์ƒ๊ฐ์ด์—ˆ์œผ๋‚˜ ๊ทธ๋•Œ๋Š” ์ผ๋‹จ ์ฒด๋ ฅ์ด ์ข‹์•˜๊ณ  ์ž์œ ๋กœ์šด ์‹ฑ๊ธ€(?) ์ด์—ˆ์œผ๋ฉฐ ์ง€๊ธˆ ์Œ“์•„๋‘๋Š” ๊ฐœ๋ฐœ ์ง€์‹์€ ๋‚ด ์ธ์ƒ์— ๋ฏธ๋ž˜ ๋จน๊ฑฐ๋ฆฌ๋ฅผ ๋ณด์žฅ ํ• ๊ฑฐ๋ผ๋Š” ๋‹จ์ˆœํ•œ ์ƒ๊ฐ์ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๋ฌผ๋ก  ๋””์ง€ํ„ธ ๋…ธ๋งˆ๋“œ์˜ ์‚ถ์„ ์‹คํ˜„ํ•˜์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค.

์ง€๊ธˆ์€ ์ข€ ์ฒ ๋„ ๋“ค๊ณ  ํ˜„์‹ค์— ๋งž๊ฒŒ ๊ทธ๋•Œ์˜ ๊ฟˆ์„ ์ ๋‹นํžˆ ํƒ€ํ˜‘ํ•˜๋ฉฐ ์‚ด๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ๊ฐœ๋ฐœ์€ ์ง€๊ธˆ๋„ ํ•˜๊ณ  ์žˆ๊ณ  ์•ž์œผ๋กœ๋„ ๊ณ„์† ํ•  ๊ฒƒ์ธ๋ฐ ํ•™์Šต์„ ํ†ตํ•ด ์ง€์‹ ์Œ“๋Š” ๊ฒƒ๊ณผ ์ „๋‹ฌํ•˜๋Š” ๊ฒƒ์€ ์ „ํ˜€ ๋‹ค๋ฅธ ์˜์—ญ์ด๋ผ ์ œ๊ฐ€ ๊ฐ€์ง„ ์ง€์‹์„ ๊ธ€๋กœ ์“ด๋‹ค๋˜๊ฐ€ ๋ง๋กœ ์ „ ํ•˜๋Š”๊ฒŒ ์Šค์Šค๋กœ ์ƒ๊ฐํ•ด๋ด๋„ ์˜ ๋งŒ์กฑ์Šค๋Ÿฝ์ง€ ๋ชปํ•˜๋„ค์š”.

๋‹ญ์ด ๋จผ์ €์ผ๊นŒ? ์•Œ์ด ๋จผ์ €์ผ๊นŒ?โ€‹

๊ฐœ์ธ ์ธ์ƒ์— ๋˜๋Š” ๊ธฐ์—…์˜ ๋จน๊ฑฐ๋ฆฌ์— ๋Œ€ํ•œ ๋ฏธ๋ž˜์˜ ์ค‘์š”ํ•œ ์˜์‚ฌ๊ฒฐ์ •์„ ํ•ด์•ผ ํ•  ๋•Œ ๋ฌด์—‡์„ ์šฐ์„  ํ•ด์•ผ ํ•˜๋Š”์ง€ ๊ณ ๋ฏผ์ด ๋“ค๋•Œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ˆ„๊ตฌ๋‚˜ ์ธ์ •ํ•  ๋งŒํ•œ ๋ฉ‹์ง€๊ณ  ์ผ๋‹จ ์‚ฌ์šฉ ํ•ด ๋ณผ์ˆ˜ ์žˆ๋Š” ์ œํ’ˆ์„ ๋งŒ๋“ค ๊ฒƒ์ธ๊ฐ€? ๋น„์ฆˆ๋‹ˆ์Šค ๋ชจ๋ธ์„ ์ˆ˜๋ฆฝํ•˜์—ฌ ๊ฐ€์„ค์„ ๊ฒ€์ฆํ•˜๋ฉฐ ๊ทธ ๊ฐ€๋Šฅ์„ฑ์„ ์ธ์ •๋ฐ›์•„ ํˆฌ์ž๋ฅผ ์œ ์น˜ํ•  ๊ฒƒ์ธ๊ฐ€? ๋‘˜ ๋‹ค ํ•˜๋Š” ๋ฐฉ๋ฒ•๋„ ์žˆ๊ฒ ์ง€๋งŒ ์‚ฌ์‹ค ์–ด๋Š ๊ฒƒ ํ•˜๋‚˜ ์‰ฝ์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์™œ๋ƒํ•˜๋ฉด ์ด๋Ÿด ๋•Œ ๋งˆ๋‹ค ์‰ฝ๊ฒŒ ๋น ์ ธ๋“œ๋Š” ์ƒ์กด์— ์ง๊ฒฐ๋˜๋Š” "๋จน๊ณ ๋Š” ์‚ด์•„์•ผ ํ•  ๊ฒƒ ์•„๋‹Œ๊ฐ€?"์™€ โ€œ๊ณ ๊ฐ์ด ์›ํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ฉด ์ž์‹ ์˜ ๋งŒ์กฑ์ด๋‚˜ ๊ธฐ์ˆ ์„ ์œ„ํ•œ ๊ธฐ์ˆ ์ผ ๋ฟโ€ ๊ฒฝ์ œํ•™ ๊ฐœ๋…์˜ ํ˜„์‹ค์ ์ธ ๊ณ ๋ฏผ์ด ๋“ค๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ๋ฌผ๋ก  ๋งž๋Š” ์ƒ๊ฐ๊ณผ ๋ง์ž…๋‹ˆ๋‹ค๋งŒ ๊ณผ์—ฐ ๋‚ด๊ฒŒ ์˜ฎ์€ ๊ฒƒ์ด ๋งž๋Š”์ง€๋Š” ์Šค์Šค๋กœ ๋”ฐ์ ธ ๋ด์•ผํ•ฉ๋‹ˆ๋‹ค.

๋น ๋ฅด๊ฒŒ ๊ฐ€๋ ค๋ฉด ํ˜ผ์ž ํ•ด์•ผ ํ•  ๊ฒƒ ๊ฐ™๊ณ  ๊ธธ๊ฒŒ ๊ฐ€๋ ค๋ฉด ๊ฒฐ๊ตญ ๊ฐ™์ด ํ•ด์•ผ ํ•˜๋Š”๋ฐ ์‚ฌ๋žŒ๊ณผ์˜ ๊ด€๊ณ„๋„ ์‰ฝ์ง€ ์•Š๊ณ ์š”โ€ฆ ๊ทธ๋ž˜๋„ ๋ถ„๋ช…ํ•œ ๊ฒƒ์€ ~~

  • ์ผ๊ณผ ์‚ฌ๋žŒ์— ๋Œ€ํ•œ ์†Œํ†ต์ด ์—†์œผ๋ฉด ๊ด€๊ณ„๋„ ์—†์„๊ฒƒ์ด๊ณ 
  • ์ผ๊ณผ ์‚ฌ๋žŒ์— ๋Œ€ํ•œ ์กด์ค‘์ด ์—†์œผ๋ฉด ์• ์ •๋„ ์—†์„๊ฒƒ์ด๋ฉฐ
  • ์ผ๊ณผ ์‚ฌ๋žŒ์— ๋Œ€ํ•œ ์‹ ๋ขฐ๊ฐ€ ์—†์œผ๋ฉด ์ง€์†ํ•  ์ด์œ ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.

์–ด์ฐจํ”ผ ๋ชจ๋‘๋ฅผ ๋งŒ์กฑ ์‹œํ‚ฌ์ˆ˜ ์žˆ๋Š”๊ฑด ์‚ฌ๊ธฐ๊พผ์ด๊ฑฐ๋‚˜ ๋…์žฌ์ž๋งŒ ๊ฐ€๋Šฅํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๋ณด์—ฌ์ง€๋Š” ๋ง๊ณผ ํ–‰๋™์ด ์–ด๋–ป๊ฒŒ ๋ณด์—ฌ์งˆ ์ง€ ๊ณ ๋ฏผ์„ ์ ๊ฒŒํ•˜์„ธ์š”.

์ฃผ์–ด์ง„ ๋ฌธ์ œ์— ๋Œ€ํ•œ ์šฐ์„ ์ˆœ์œ„์™€ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์€ ๊ฐ์ž๊ฐ€ ๋งŒ๋“ค์–ด ๊ฐ€๋Š” ๊ฒƒ ์ž…๋‹ˆ๋‹ค. ๊ทธ ๊ณผ์ •์—์„œ ๋ˆ„๊ตฐ๊ฐ€๋Š” ๋ถˆํŽธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค๋งŒ ์–ธ์  ๊ฐ€ ์‹œ๊ฐ„๊ณผ ๊ฒฐ๊ณผ๊ฐ€ ๋งํ•ด์ค๋‹ˆ๋‹ค.

๋งค์ผ๋งˆ๋‹ค ์ž ๋“ค๊ธฐ ์ „์— ์Šค์Šค๋กœ์—๊ฒŒ ๋ฌป์Šต๋‹ˆ๋‹ค. ์ž์‹ ์„ ์žƒ์ง€ ๋ง™์‹œ๋‹ค.โ€‹

์˜ค๋Š˜๋„ ๋งˆ์Œ์— ๋“  ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜ํƒ€๋‚˜๊ธฐ๊นŒ์ง€ ํฌ๊ธฐ ํ•˜์ง€ ์•Š๊ณ  ๋‚˜์•„๊ฐ€๋Š” ์šฉ๊ธฐ๋ฅผ ์œ ์ง€ํ•˜์˜€๋Š”๊ฐ€? ๋ˆ„๊ฐ€ ๋ญ๋ผํ•ด๋„ ๋‚ด๊ฐ€ ์ถ”๊ตฌํ•˜๋ ค๋Š” ๋ณธ์งˆ์ด ๋ฌด์—‡์ธ๊ฐ€?

์ œ๊ฐ€ HandStack ์œผ๋กœ ๊ฟˆ ๊พธ๋ฉฐ ๋งŒ๋“ค์–ด๊ฐ€๊ณ  ์‹ถ์€ ๊ฒƒ์€ ๊ธฐ์—…์— ํ•„์š”ํ•œ ๋น„์ฆˆ๋‹ˆ์Šค ์•ฑ์„ ์œ„ํ•ด ์†Œ์Šค์ฝ”๋“œ์™€ ์œ ์ง€๋ณด์ˆ˜๋ฅผ ์žฅ์†Œ์— ๊ตฌ์• ๋ฐ›์ง€์•Š๊ณ  ํŒ๋งค์™€ ๊ตฌ๋งค๊ฐ€ ๊ฐ€๋Šฅํ•œ ํ”Œ๋žซํผ์„ ๋งŒ๋“œ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ํ‰์ƒ ์ฆ๊ฒ๊ฒŒ ๊ฐœ๋ฐœ ์ผ์„ ํ•˜๋ฉด์„œ ์‚ด ์ˆ˜ ์žˆ์œผ๋‹ˆ๊นŒ์š” ~~

์ด๋ฒˆ์— GitHub์— ๊ฐœ์ธ์ ์œผ๋กœ ์˜๋ฏธ์žˆ๋Š” ์ƒ์šฉ ์ˆ˜์ค€์˜ ๋น„์ฆˆ๋‹ˆ์Šค ์•ฑ์ด ๊ฐœ๋ฐœ ํ•˜๋„๋ก ์–ด๋Š ์ •๋„ ํ…Œ์ŠคํŠธ๊ฐ€ ์ง„ํ–‰๋œ ๋ฒ ํƒ€ ๋ฆด๋ฆฌ์Šค๋ฅผ ์ถœ์‹œ ํ–ˆ์Šต๋‹ˆ๋‹ค.

ํ•œ ์ฃผ๊ฐ„์˜ ์—ฌ์ • (2024-02-12 ~ 2024-02-16)โ€‹

  • handstack 1.0.0.beta1 ์ถœ์‹œ
  • Bundling, Minifys, Beautify CLI ํ”„๋กœ๊ทธ๋žจ ๊ฐœ๋ฐœ
  • $grid ์ปจํŠธ๋กค visibleColumns ํ•จ์ˆ˜ ์—…๋ฐ์ดํŠธ ๋Œ€์‘ ์ˆ˜์ •
  • $grid ์ปจํŠธ๋กค getPhysicalColText ํ•จ์ˆ˜ ์ถ”๊ฐ€
  • $grid ์ปจํŠธ๋กค css ์Šคํƒ€์ผ ์ปฌ๋Ÿผ ์œ ๋ฌด์— ๋”ฐ๋ผ ์ ์šฉ ๋Œ€์‘ syn.$w.pseudoStyle ํ•จ์ˆ˜ ์ถ”๊ฐ€
  • easywork ๊ทธ๋ฃน์›จ์–ด ์‹คํ–‰ ์˜ค๋ฅ˜ ๋Œ€์‘ ์ˆ˜์ •
  • ํ”„๋กœ๊ทธ๋žจ ๋‹ค์šดํƒ€์ž„ ์ตœ์†Œํ™” ์•„์ด๋””์–ด
  • ๋ฐ์ดํ„ฐ ๊ฒŒ๋”๋ง(Gatering)๊ณผ ๋ฐ”์ธ๋”ฉ(Binding)
  • In-process / Out-process ๋ฉ”์‹œ์ง•
  • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ฐ๋™
  • ์œ ์šฉํ•œ ์ž๋ฃŒ ๋งํฌ ์ถ”๊ฐ€
  • ๊ธฐ์—ฌํ•˜๊ธฐ ๋ฌธ์„œ ์—…๋ฐ์ดํŠธ
  • repository ๋ชจ๋“ˆ ํŒŒ์ผ ์—…๋กœ๋“œ/๋‹ค์šด๋กœ๋“œ ๊ธฐ๋Šฅ ๊ฐœ์„ 
  • syn.loader.js ํ…œํ”Œ๋ฆฟ ๋กœ๋“œ ๊ธฐ๋Šฅ ๊ฐœ์„ 
  • codepicker ์ปจํŠธ๋กค ์˜ค๋ฅ˜ ์ˆ˜์ •
  • easywork ๊ทธ๋ฃน์›จ์–ด ์‹คํ–‰ ์˜ค๋ฅ˜ ๋Œ€์‘ ์ˆ˜์ •
2๊ฐœ์˜ ์ข‹์•„์š”