๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

ํ”„๋ก ํŠธ์—”๋“œ(Front-end)41

React๋Š” ๋ญ˜๊นŒ ๋ชฉ์ฐจ1. React๋ž€? 1-1. JSX์˜ ์‚ฌ์šฉ 1-2. ๋‹จ๋ฐฉํ–ฅ ๋ฐ์ดํ„ฐ ๋ฐ”์ธ๋”ฉ 1-3. ๊ฐ€์ƒ DOM 1-4. ์„ ์–ธํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ 1-5. ์ปดํฌ๋„ŒํŠธ ๊ธฐ๋ฐ˜2. ๋ฆฌ์•กํŠธ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ 2-1. Chocolatey, Node ์„ค์น˜ 2-2. ๋ฆฌ์•กํŠธ ํ”„๋กœ์ ํŠธ ์ƒ์„ฑ1. React๋ž€?์›น ํ”„๋ก ํŠธ์—”๋“œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ, ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋™์ž‘ํ•œ๋‹ค.๋ฆฌ์•กํŠธ์˜ ํŠน์ง•์— ๋Œ€ํ•ด ์•Œ์•„๋ณด์ž.1. JSX์˜ ์‚ฌ์šฉJSX๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์™€ HTML์„ ๋™์‹œ์— ์‚ฌ์šฉํ•˜๋Š” ๋ฌธ๋ฒ•์ด๋‹ค. ์ผ์ข…์˜ ํ…œํ”Œ๋ฆฟ ์–ธ์–ด(Template Language)๋กœ, JS ํ•จ์ˆ˜๊ฐ€ HTML์„ ๋ฐ˜ํ™˜ํ•˜๊ฑฐ๋‚˜, HTML์— JS ๋ณ€์ˆ˜๋ฅผ ๋ฐ”๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์‹์ด๋‹ค. 2. ๋‹จ๋ฐฉํ–ฅ ๋ฐ์ดํ„ฐ ๋ฐ”์ธ๋”ฉ๋‹ค๋ฅธ ํ”„๋ ˆ์ž„์›Œํฌ์ธ Angular์™€ Vue๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ์–‘๋ฐฉํ–ฅ ๋ฐ”์ธ๋”ฉ์„ ์‚ฌ.. 2025. 5. 30.
Tailwind๋Š” ๋ญ˜๊นŒ ๋ชฉ์ฐจ1. Tailwind CSS๋ž€?2. Tailwind ์‹œ์ž‘ํ•˜๊ธฐ3. 001. Tailwind CSS๋ž€?์˜คํ”ˆ ์†Œ์Šค CSS ํ”„๋ ˆ์ž„์›Œํฌ์ด๋‹ค.๋‹ค๋ฅธ ์—ฌ๋Ÿฌ ์Šคํƒ€์ผ ํ”„๋ ˆ์ž„์›Œํฌ๋“ค๊ณผ ๋‹ฌ๋ฆฌ, ๋ฏธ๋ฆฌ ๋งŒ๋“ค์–ด์ง„ ์ปดํฌ๋„ŒํŠธ๋ฅผ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ, ์›์žํ™”๋œ ์œ ํ‹ธ๋ฆฌํ‹ฐ ํด๋ž˜์Šค๋ฅผ ์ œ๊ณตํ•œ๋‹ค.ํด๋ž˜์Šค ์ด๋ฆ„์„ ์‚ฌ์šฉํ•˜์—ฌ HTML ์š”์†Œ์— ์ง์ ‘ ์Šคํƒ€์ผ์„ ์ ์šฉํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค. button์—ฌ๊ธฐ์„œ ๊ฐ ํด๋ž˜์Šค๋ช…์˜ ์˜๋ฏธ๋ฅผ ๊ฐ„๋‹จํ•˜๊ฒŒ ์‚ดํŽด๋ณด๋ฉด ์•„๋ž˜์™€ ๊ฐ™๋‹ค.bg-blue-500 : ๋ฐฐ๊ฒฝ์ƒ‰์€ blue 500hover:bg-blue-600 : hover์‹œ, ๋ฐฐ๊ฒฝ์ƒ‰์€ bluee 600text-white : ํ…์ŠคํŠธ์ƒ‰์€ ํฐ์ƒ‰py-2 px-4 : ์ƒํ•˜ 0.5rem, ์ขŒ์šฐ 1rem paddingrounded : ๋ชจ์„œ๋ฆฌ ๋‘ฅ๊ธ€๊ฒŒ์žฅ์ ๋น ๋ฅธ ํ”„๋กœํ† ํƒ€์ดํ•‘ : HTML ์•ˆ์—์„œ ์ง์ ‘ ๋””์ž์ธ.. 2025. 5. 29.
Github Actions ์‚ฌ์šฉํ•ด๋ณด๊ธฐ https://ldd6cr-adness.tistory.com/309 Github Actions๋ž€ ๋ญ˜๊นŒ๋ชฉ์ฐจ1. Github Actions๋ž€?2. ์ž‘์„ฑ ์˜ˆ์‹œ3. ๊ตฌ์„ฑ ์š”์†Œ ์ž์„ธํžˆ ๋ณด๊ธฐ 3-1. Workflow 3-2. Event 3-3. Job 3-4. Runner 3-5. Step 3-6. Action1. Github Actions๋ž€?Github์—์„œ ์ œ๊ณตํ•˜๋Š” ๋นŒ๋“œ, ํ…Œ์ŠคํŠธ ๋ฐ ๋ฐฐํฌ ํŒŒ์ดํ”„๋ผ์ธ์„ ์ž๋™ํ™”ํ•  ์ˆ˜ldd6cr-adness.tistory.com ๋ชฉ์ฐจ1. ์›Œํฌํ”Œ๋กœ์šฐ ํŒŒ์ผ ์ƒ์„ฑ2. ESLint ๋ฐ Prettier ํ†ตํ•ฉ3. ๋นŒ๋“œ ์„ฑ๊ณตํ•œ ๋ชจ์Šต1. ์›Œํฌํ”Œ๋กœ์šฐ ํŒŒ์ผ ์ƒ์„ฑ๋ ˆํฌ์ง€ํ† ๋ฆฌ์˜ ๋ฃจํŠธ ๋””๋ ‰ํ† ๋ฆฌ์— .github/workflows/ci.yml ํŒŒ์ผ์„ ์ƒ์„ฑํ•˜๊ณ  ๋‚ด์šฉ์„ ์ž‘์„ฑํ•œ๋‹ค.// ci.ymlname: CIon: .. 2025. 5. 26.
Github Actions๋ž€ ๋ญ˜๊นŒ ๋ชฉ์ฐจ1. Github Actions๋ž€?2. ์ž‘์„ฑ ์˜ˆ์‹œ3. ๊ตฌ์„ฑ ์š”์†Œ ์ž์„ธํžˆ ๋ณด๊ธฐ 3-1. Workflow 3-2. Event 3-3. Job 3-4. Runner 3-5. Step 3-6. Action1. Github Actions๋ž€?Github์—์„œ ์ œ๊ณตํ•˜๋Š” ๋นŒ๋“œ, ํ…Œ์ŠคํŠธ ๋ฐ ๋ฐฐํฌ ํŒŒ์ดํ”„๋ผ์ธ์„ ์ž๋™ํ™”ํ•  ์ˆ˜ ์žˆ๋Š” CI/CD ํ”Œ๋žซํผGithub ์ €์žฅ์†Œ์— ์ด๋ฒคํŠธ(push, pr..)๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉด ๋ฏธ๋ฆฌ ์ •์˜ํ•œ ์ž‘์—…(ํ…Œ์ŠคํŠธ-๋นŒ๋“œ-๋ฐฐํฌ..)์„ ์ž๋™์œผ๋กœ ์‹คํ–‰ํ•ด์ค€๋‹ค. Github Actions์˜ ๊ตฌ์„ฑ ์š”์†Œ์— ๋Œ€ํ•ด ์•Œ์•„๋ณด์ž๊ตฌ์„ฑ ์š”์†Œ์„ค๋ช…Workflow์ž๋™ํ™” ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ •์˜๋œ ์Šคํฌ๋ฆฝํŠธ ํŒŒ์ผ๋กœ, Github Actions์—์„œ ๊ฐ€์žฅ ์ตœ์ƒ์œ„ ๊ฐœ๋…์ด๋‹ค.EventWorkflow๋ฅผ ์‹คํ–‰์‹œํ‚ค๋Š” ํŠธ๋ฆฌ๊ฑฐ๋กœ, p.. 2025. 5. 26.
axios ์‚ฌ์šฉํ•ด๋ณด๊ธฐ https://ldd6cr-adness.tistory.com/306 axios : HTTP ํ†ต์‹ ์„ ์œ„ํ•œ JS ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌAxios๋ž€?https://axios-http.com/kr/docs/intro ์‹œ์ž‘ํ•˜๊ธฐ | Axios Docs์‹œ์ž‘ํ•˜๊ธฐ ๋ธŒ๋ผ์šฐ์ €์™€ node.js์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” Promise ๊ธฐ๋ฐ˜ HTTP ํด๋ผ์ด์–ธํŠธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ Axios๋ž€? Axios๋Š” node.js์™€ ๋ธŒ๋ผ์šฐ์ €๋ฅผ ์œ„ํ•œ Promise ๊ธฐ๋ฐ˜ Hldd6cr-adness.tistory.com jsonplaceholder๋ฅผ ๋นŒ๋ ค axios ์‹ค์Šต์„ ํ•ด๋ณผ๊ฑฐ๋‹ค. ๋ชฉ์ฐจ1. Axios ์„ค์น˜ ๋ฐ ๊ธฐ๋ณธ ์„ค์ •2. GET ์š”์ฒญ : ๊ฒŒ์‹œ๊ธ€ ๋ถˆ๋Ÿฌ์˜ค๊ธฐ3. POST ์š”์ฒญ : ๊ฒŒ์‹œ๊ธ€ ์—…๋กœ๋“œํ•˜๊ธฐ4. PUT ์š”์ฒญ : ๊ฒŒ์‹œ๊ธ€ ์ˆ˜์ •ํ•˜๊ธฐ5. DELETE ์š”์ฒญ : ๊ฒŒ์‹œ๊ธ€ ์‚ญ์ œํ•˜.. 2025. 5. 26.
axios๋Š” ๋ญ˜๊นŒ ๋ชฉ์ฐจ1. Axios๋ž€?2. Axios๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ 3. Axios ๊ธฐ๋ณธ ์‚ฌ์šฉ๋ฒ• 3-1. ์„ค์น˜ 3-2. GET 3-3. POST 3-4. DELETE 3-5. PUT4. ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ๊ธฐ๋Šฅ๋“ค 1. Axios๋ž€?https://axios-http.com/kr/docs/intro ์‹œ์ž‘ํ•˜๊ธฐ | Axios Docs์‹œ์ž‘ํ•˜๊ธฐ ๋ธŒ๋ผ์šฐ์ €์™€ node.js์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” Promise ๊ธฐ๋ฐ˜ HTTP ํด๋ผ์ด์–ธํŠธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ Axios๋ž€? Axios๋Š” node.js์™€ ๋ธŒ๋ผ์šฐ์ €๋ฅผ ์œ„ํ•œ Promise ๊ธฐ๋ฐ˜ HTTP ํด๋ผ์ด์–ธํŠธ ์ž…๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€ ๋™ํ˜• ์ž…๋‹ˆ๋‹ค(๋™์ผํ•œ ์ฝ”axios-http.com*Promise API๋ฅผ ํ™œ์šฉํ•˜๋Š” HTTP **๋น„๋™๊ธฐ ํ†ต์‹  ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ด๋‹ค.ํ”„๋ก ํŠธ์—”๋“œ์—์„œ ๋ฐฑ์—”๋“œ API .. 2025. 5. 22.
Zustand ์‚ฌ์šฉํ•ด๋ณด๊ธฐ https://ldd6cr-adness.tistory.com/297 Zustand๋Š” ๋ญ˜๊นŒ๋ชฉ์ฐจ1. Zustand๋ž€?2. Zustand ์‚ฌ์šฉ๋ฒ• 2-1. Zustand ์„ค์น˜ 2-2. ์Šคํ† ์–ด ์ƒ์„ฑ 2-3. ์ปดํฌ๋„ŒํŠธ์—์„œ ์Šคํ† ์–ด ์‚ฌ์šฉ3. Zustand์˜ ํŠน์ง• 3-1. set()์„ ํ™œ์šฉํ•œ ์ƒํƒœ ์—…๋ฐ์ดํŠธ 3-2. get()์„ ํ™œ์šฉํ•œ ์ƒํƒœ ๊ฐ€์ ธ์˜ค๊ธฐ 3-3. subscribe()๋ฅผ ํ™œldd6cr-adness.tistory.comTanstack Query ์—ฐ์Šต์šฉ์œผ๋กœ ์ƒ์„ฑํ•œ ํ”„๋กœ์ ํŠธ์— ์ด์–ด์„œ zustand ์—ฐ์Šต๋„ ํ•ด๋ณผ๊ฑฐ๋‹ค.๊ฒŒ์‹œ๊ธ€ ํ•„ํ„ฐ๋ง์„ ์œ„ํ•œ ์Šคํ† ์–ด๋ฅผ ๋งŒ๋“ค์–ด๋ณด์ž๋ชฉ์ฐจ1. Zustand ์„ค์น˜?2. store ํด๋” ์ƒ์„ฑ ๋ฐ filter ์Šคํ† ์–ด ์ƒ์„ฑ3. ์ƒ์„ฑํ•œ store๋ฅผ ํ™œ์šฉํ•˜๋Š” filter ์ปดํฌ๋„ŒํŠธ ์ƒ์„ฑ4. PostList ์ปดํฌ.. 2025. 5. 15.
TanStack Query ์‚ฌ์šฉํ•ด๋ณด๊ธฐ https://ldd6cr-adness.tistory.com/303 Tanstack Query๋Š” ๋ญ˜๊นŒ๋ชฉ์ฐจ1. TanStack Query๋ž€2. ์„ค์น˜ ๋ฐ ๊ธฐ๋ณธ ์„ค์ • 2-1. TanStack ํŒจํ‚ค์ง€ ์„ค์น˜ 2-2. Query Client ์ƒ์„ฑ ๋ฐ Provider ์„ค์ •3. ๋ฐ์ดํ„ฐ ์กฐํšŒ (Fetching)4. ๋ฐ์ดํ„ฐ ๋ณ€๊ฒฝ (Mutations)5. ์ฟผ๋ฆฌ ๋ฌดํšจํ™” ๋ฐ ๋ฆฌํŒจ์นญ6. ๊ธฐํƒ€ ๊ธฐ๋Šฅ๋“ค7. ํˆด1. TanStldd6cr-adness.tistory.com ๋ชฉ์ฐจ1. ์‹ค์Šต ํ”„๋กœ์ ํŠธ ๋‚ด์šฉ2. ๊ธฐ๋ณธ ์„ค์ • 2-1. ๊ธฐ๋ณธ ์„ค์น˜ 2-2. ๋ผ์šฐํŒ… ์„ค์ • 2-3. TanStack Query ๊ธฐ๋ณธ ์„ค์ •------1. useQuery๋กœ ๋ฐ์ดํ„ฐ ์กฐํšŒ(fetching)2. useMutation์œผ๋กœ ๋ฐ์ดํ„ฐ ๋ณ€๊ฒฝ3. ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉ.. 2025. 5. 14.
Tanstack Query๋Š” ๋ญ˜๊นŒ ๋ชฉ์ฐจ1. TanStack Query๋ž€2. ์„ค์น˜ ๋ฐ ๊ธฐ๋ณธ ์„ค์ • 2-1. TanStack ํŒจํ‚ค์ง€ ์„ค์น˜ 2-2. Query Client ์ƒ์„ฑ ๋ฐ Provider ์„ค์ •3. ๋ฐ์ดํ„ฐ ์กฐํšŒ (Fetching)4. ๋ฐ์ดํ„ฐ ๋ณ€๊ฒฝ (Mutations)5. ์ฟผ๋ฆฌ ๋ฌดํšจํ™” ๋ฐ ๋ฆฌํŒจ์นญ6. ๊ธฐํƒ€ ๊ธฐ๋Šฅ๋“ค7. ํˆด1. TanStack Query๋ž€์„œ๋ฒ„๋กœ๋ถ€ํ„ฐ ๋ฐ์ดํ„ฐ ๊ฐ€์ ธ์˜ค๊ธฐ, ์บ์‹ฑ, ์ œ์–ด ๋“ฑ ๋ฐ์ดํ„ฐ์˜ ํšจ์œจ์ ์ธ ๊ด€๋ฆฌ๋ฅผ ๋•๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ด๋‹ค.https://tanstack.com/query/latest TanStack QueryPowerful asynchronous state management, server-state utilities and data fetching. Fetch, cache, update, and wrangle al.. 2025. 5. 8.