์ฒซ์‚ฝ์€ ์•„๋“ํ•˜์ง€๋งŒ ๋ง์•ผ

2023-07-23

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


Excess Property Check, Typescript Structural Typing์˜ ์˜ˆ์™ธ

2023-07-18

ํƒ€์ž…์Šคํฌ๋ฆฝํŠธ์˜ ๊ตฌ์กฐ์  ํƒ€์ดํ•‘(Structural Typing) ํƒ€์ž…์Šคํฌ๋ฆฝํŠธ์˜ ๊ตฌ์กฐ์  ํƒ€์ดํ•‘ (Structural Typing)์€ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์—์„œ ํƒ€์ž… ํ˜ธํ™˜์„ฑ์ด๋‚˜ ํƒ€์ž… ๊ฒ€์‚ฌ ๋ฐฉ์‹์„ ๊ฒฐ์ •ํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค. ๊ตฌ์กฐ์  ํƒ€์ดํ•‘ (Structural Typing)๋Š” ๊ฐ’์˜ ํ˜•ํƒœ์— ๋”ฐ๋ผ ํƒ€์ž…์„ ๊ฒฐ์ •ํ•œ๋‹ค. ์ฆ‰, ํƒ€์ž…์„ ์ฒดํฌํ•  ๋•Œ ํƒ€์ž…์˜ ์ด๋ฆ„์ด๋‚˜ ์„ ์–ธ ๋ฐฉ์‹์ด ์•„๋‹Œ ๊ทธ ๊ตฌ์กฐ๋ฅผ ํ™•์ธโ€ฆ


interface์˜ union๊ณผ never ํƒ€์ž…์„ ํ™œ์šฉํ•˜์—ฌ ์„œ๋กœ ์˜์กด์ ์ธ prop์„ ๊ฐ€์ง„ interface ์ •์˜ํ•˜๊ธฐ

2023-06-19

์„œ๋กœ ์˜์กด์ ์ธ ํ•„๋“œ๋ฅผ ๊ฐ€์ง„ ๋ž€? ์™€ ์ด๋ผ๋Š” prop์„ ๊ฐ€์ง„ ์ธํ„ฐํŽ˜์ด์Šค๊ฐ€ ์žˆ๋‹ค๊ณ  ํ•˜์ž. ๊ฐ€ ์ธ ๊ฒฝ์šฐ ๋Š” ์—ฌ์•ผ ํ•œ๋‹ค. ๊ฐ€ ์ธ ๊ฒฝ์šฐ ๋Š” ์—ฌ์•ผ ํ•œ๋‹ค. ํ•˜๋‚˜์˜ property์˜ ์ƒํƒœ๊ฐ€ ๋‹ค๋ฅธ property์˜ ๊ฒฐ๊ณผ์— ์˜ํ–ฅ์„ ๋ฏธ์นœ๋‹ค. ์ด๋Ÿฐ ๊ฒฝ์šฐ ์„œ๋กœ ์˜์กด์ ์ธ ํ•„๋“œ๊ฐ€ ์žˆ๋‹ค๊ณ  ๋งํ•œ๋‹ค. ์‚ฌ๋‚ด์˜ ๋ฆฌ์—‘ํŠธ ์ปดํฌ๋„ŒํŠธ์˜ ๋ฅผ ์ •์˜์ค‘์— ์ด๋Ÿฐ ์˜์กด์ ์ธ field๋ฅผ โ€ฆ


typescript๋Š” never๋ฅผ ์–ด๋–ป๊ฒŒ ๋‹ค๋ฃจ๊ณ  ์žˆ๋Š”๊ฐ€?

2023-06-04

๋ฐฐ๊ฒฝ Design system ์ปดํฌ๋„ŒํŠธ๋“ค์˜ ๊ธฐ๋ณธ Props์„ ์ •์˜ํ•˜๋ ค ํ•œ๋‹ค. ์ƒˆ๋กœ ๋งŒ๋“ค design system์€ ํ•˜๊ฒŒ ์„ค๊ณ„ํ•˜๊ณ ์ž ํ•œ๋‹ค. ํ™•์ •๋œ ๊ฒฝ์šฐ๊ฐ€ ์•„๋‹ˆ๋ฉด ๋ณ„๋„์˜ ์Šคํƒ€์ผ์„ ๊ฐ€์ง€์ง€ ์•Š๊ณ , ์ปดํฌ๋„ŒํŠธ์˜ ์—ญํ• ๊ณผ ๊ธฐ๋Šฅ๋งŒ ์ •์˜ํ•œ ๋‹ค. ํ•„์š”ํ•œ ๊ฒฝ์šฐ ์•„์ฃผ ๊ธฐ๋ณธ์ ์ธ ์Šคํƒ€์ผ์„ ๊ธฐ๋ณธ์œผ๋กœ ์ œ๊ณตํ•˜์ง€๋งŒ, ์‰ฝ๊ฒŒ overrideํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค. ์ „๋žต์€ ์Šคํƒ€์ผ์— ๋Œ€ํ•œ ์œ ์—ฐ์„ฑโ€ฆ