์ ๋ค๋ฆญ(Generic)์ด๋?C๋ ์๋ฐ ๊ฐ์ ์ ์ ์ธ์ด์์ ๋ค์ํ ํ์
๊ฐ์ ์ฌ์ฌ์ฉ์ฑ์ ๋์ด๊ธฐ ์ํด ์ฌ์ฉํ๋ ๋ฌธ๋ฒ์ด๋ค. ํ์
์คํฌ๋ฆฝํธ๋ ์ ์ ํ์
์ ๊ฐ์ง๋ฏ๋ก ์ ๋ค๋ฆญ ๋ฌธ๋ฒ์ ์ง์ํ๋ค.์ ๋ค๋ฆญ์ ์ฌ์ ์ ์๋ฏธ๋ ์ผ๋ฐ์ ์ธ ๊ฒ(general)์ ๋ปํ๋๋ฐ, ํ์
์คํฌ๋ฆฝํธ์ ์ ๋ค๋ฆญ๋ ์ด์ ๋น์ทํ๊ฒ '์ผ๋ฐํ๋ ๋ฐ์ดํฐ' ํ์
์ด๋ผ ๋ณผ ์ ์๋ค.์ ๋ค๋ฆญ: ํจ์, ํ์
, ํด๋์ค ๋ฑ์์ ๋ด๋ถ์ ์ผ๋ก ์ฌ์ฉํ ํ์
์ ๋ฏธ๋ฆฌ ์ ํด๋์ง ์๊ณ ํ์
๋ณ์๋ฅผ ์ฌ์ฉํด์ ํด๋น ์์น๋ฅผ ๋น์ ๋ ๋ค์์, ์ค์ ๋ก ๊ทธ ๊ฐ์ ์ฌ์ฉํ ๋ ์ธ๋ถ์์ ํ์
๋ณ์ ์๋ฆฌ์ ํ์
์ ์ง์ ํ์ฌ ์ฌ์ฉํ๋ ๋ฐฉ์-> ์ด๋ ๊ฒ ํ๋ฉด ํจ์, ํ์
, ํด๋์ค ๋ฑ ์ฌ๋ฌ ํ์
์ ๋ํด ํ๋ํ๋ ๋ฐ๋ก ์ ์ํ์ง ์์๋ ๋๊ธฐ ๋๋ฌธ์ ์ฌ์ฌ์ฉ์ฑ์ด ํฌ๊ฒ ํฅ์๋๋ค.ํ์
๋ณ์๋ ์ผ๋ฐ์ ์ผ๋ก ์ ๊ฐ์ด ๊บพ์ ๊ดํธ ๋ด๋ถ์..
๐ฉ๐ป๐ป Dev/Front-End

ํ๋ก ํธ์๋ ๊ฐ๋ฐ์์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ํ๋ ์์ํฌ๋ ์๋ก ๋ค๋ฅธ ์ญํ ์ ์ํํ๋ฉฐ, ๊ฐ๋ฐ์์๊ฒ ์ ๊ณตํ๋ ๊ธฐ๋ฅ๊ณผ ์ฌ์ฉ ๋ฐฉ์์์๋ ์ฐจ์ด๊ฐ ์๋ค. 1. ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ํ๋ ์์ํฌ์ ๊ธฐ๋ณธ ๊ฐ๋
๋ผ์ด๋ธ๋ฌ๋ฆฌ(Library)๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ํน์ ๊ธฐ๋ฅ์ ์ํํ๋ ๋๊ตฌ๋ค์ ์งํฉ. ๊ฐ๋ฐ์๋ ํ์ํ ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ํธ์ถํ์ฌ ํน์ ์์
์ ์ํํ ์ ์๋ค.๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ์ ํ๋ฆฌ์ผ์ด์
์ ํ๋ฆ์ ์ง์ ์ ์ดํ์ง ์๋๋ค. ๋์ , ๊ฐ๋ฐ์๊ฐ ํ์ํ ๊ธฐ๋ฅ์ ์ ํ์ ์ผ๋ก ์ฌ์ฉํ ์ ์๋ค.ํ๋ ์์ํฌ(Framework)ํ๋ ์์ํฌ๋ ์ ํ๋ฆฌ์ผ์ด์
์ ๊ธฐ๋ณธ ๊ตฌ์กฐ๋ฅผ ์ ๊ณตํ๊ณ , ๊ทธ ์์์ ๊ฐ๋ฐ์ด ์ด๋ฃจ์ด์ง๋๋ก ํ๋ค. ํ๋ ์์ํฌ๋ ์ฝ๋์ ํ๋ฆ์ ์ ์ดํ๋ฉฐ, ๊ฐ๋ฐ์๋ ํ๋ ์์ํฌ๊ฐ ์ ์ํ๋ ๋ฐฉ์์ ๋ง์ถ์ด ์ฝ๋๋ฅผ ์์ฑํด์ผ ํ๋ค.ํ๋ ์์ํฌ๋ “์ ์ด์ ์ญ์ (Inversion of Control..

CSSCascading Style SheetsHTML ๊พธ๋ฉฐ์ฃผ๋ ์ธ์ด๋ฌธ์ ํต์งธ๋ก๊ฐ ์๋, HTML ํ๋ํ๋ ๊พธ๋ฉฐ์คHTML์ CSS ์ ์ฉ ๋ฐฉ๋ฒ 3๊ฐ์ง์ธ๋ผ์ธ (inline): HTML ํ๊ทธ ์์ ๊ฐ์ด ์์ฑ๋ด๋ถ ์คํ์ผ ์ํธ (internal style sheet): HTML ๋ฌธ์ ์์ ๊ฐ์ด ์์ฑ์ธ๋ถ ์คํ์ผ ์ํธ (external style sheet): HTML ๋ฌธ์ ๋ฐ์ ์์ฑํ๊ณ ์ฐ๊ฒฐ* HTML ํ๊ทธ ํ์์ element๋ผ๊ณ ๋ถ๋ฅธ๋ค. JavaScriptํน์ HTML์์๋ฅผ ์ ํํ์ฌ ์ ์ดํ ์ ์๋ ์คํฌ๋ฆฝํธ ์ธ์ด์คํฌ๋ฆฝํธ ์ธ์ด๋?๋
๋ฆฝ์ ์ธ ํ๋ก๊ทธ๋จ์ ๊ฐ๋ฐํ ์ ์๋ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๊ฐ ์๋, (ํ๋ก๊ทธ๋จ ๋ด๋ถ์ ๊ตฌ์ฑ ์์ ์ค ํ๋๋ก) ํ๋ก๊ทธ๋จ์ ์ ์ดํ๋ ์คํฌ๋ฆฝํธ ์ญํ ์ ํ๋ ์ธ์ด-> ๋ฐํ์์ ๋ฐ์ ์ผ๋ก, ์คํฌ๋ฆฝํธ ์ธ์ด๋ง..

DOCTYPEDocument Type์ ์ฝ์.HTML์ด ์ด๋ค ๋ฒ์ ์ผ๋ก ์์ฑ๋์๋์ง ๋ฏธ๋ฆฌ ์ ์ธํ์ฌ ์น๋ธ๋ผ์ฐ์ ๊ฐ ๋ด์ฉ์ ์ฌ๋ฐ๋ก ํ์ํ ์ ์๋๋ก ํด์ค๋ค.์ด๋ฅผ ์ ์ธํด์ฃผ์ง ์์ผ๋ฉด, ํธํ ๋ชจ๋(quirks mode)๋ก ๋์ํ๋ฉฐ, ์ด ๊ฒฝ์ฐ ํฌ๋ก์ค ๋ธ๋ผ์ฐ์ง ์ด์๊ฐ ์ฌํด์ง๊ฒ ๋๋ค. ํ์ค ๋ชจ๋์ ํธํ ๋ชจ๋W3C๊ฐ ์น ํ์ค์ ๋ง๋ค๋ฉด์, ๋ ๋๋ง์ ํ ๋ ํ์ค ๋ชจ๋(Standards mode)์ ํธํ ๋ชจ๋(Quirks mode)๋ก ๋ ๋๋งํ ์ ์๋ ์ต์
์ด ์๊ฒผ๋ค. ํธํ ๋ชจ๋๋ก ๋ ๋๋ง์ ํ๊ฒ ๋๋ฉด ์ค๋๋ ์นํ์ด์ง๋ค์ ์ต์ ๋ฒ์ ์ ๋ธ๋ผ์ฐ์ ์์๋ ๊นจ์ง์ง ์๊ธฐ ๋๋ฌธ์ ๊ฐ ๋ธ๋ผ์ฐ์ ๋ง๋ค ๋ค๋ฅด๊ฒ ๋ณด์ผ ์ ์๋ค.๋ฐ๋ผ์ ํน๋ณํ ๊ฒฝ์ฐ๊ฐ ์๋๋ผ๋ฉด DOCTYPE์ ๋ช
์ํ์ฌ ๋ธ๋ผ์ฐ์ ๊ฐ ํ์ค ๋ชจ๋๋ก ๋ ๋๋งํ๊ฒ ํ๋ ๊ฒ ์ข๋ค.https://develo..

์น์ ์ดํด์ธํฐ๋ท๊ณผ ์น์ธํฐ๋ท (Internet): ์ ์ธ๊ณ ์ปดํจํฐ๋ฅผ ํ๋์ ํต์ ๋ง์ผ๋ก ์ฐ๊ฒฐํ ๊ฒ. '์ฐ๋ฆฌ๋ ๋ชจ๋ ์ฐ๊ฒฐ๋์ด ์๋ค'๋ ๊ฐ๋
์ ์์ง.์น (Web): ์ธํฐ๋ท์ ์ฐ๊ฒฐ๋ ์ปดํจํฐ๋ฅผ ํตํด ์ ๋ณด๋ฅผ ๊ณต์ ํ๋ ๊ณต๊ฐ. ์๋ ์์ด๋ ์น (World Wide Web, WWW)์ด๋ผ๊ณ ๋ ๋ถ๋ฆผ.์น์ ์์๊ณผ ํน์ง1980๋
๋ ์ค์์ค ์ ๋ฝ ์
์ ๋ฌผ๋ฆฌ ์ฐ๊ตฌ์์์ ํ ๋ฒ๋์ค๋ฆฌ๊ฐ ์ฐ๊ตฌ์๋ค ๊ฐ ๋น ๋ฅธ ์ ๋ณด ๊ตํ์ ์ํด ๊ณ ์.ํน์ง: ์ ๋ณด๋ฅผ ํ์ดํผํ
์คํธ ํ์์ผ๋ก ํํํ๊ณ , ๋งํฌ๋ฅผ ํตํด ๋ค์ํ ์ ๋ณด์ ๋ฌธ์๋ฅผ ์ฐ๊ฒฐํด ์ ๊ณต.์น ํ์ด์ง์ ์น ์ฌ์ดํธ์น ํ์ด์ง ๊ฐ ๋งํฌ๋ฅผ ํตํด ์ด๋ํ๋ ๊ฒ: ์น ์ํ (Web Surfing) ๋๋ ์น ๋ธ๋ผ์ฐ์ง (Web Browsing).์น ๋ธ๋ผ์ฐ์ ์น ํ์ด์ง๋ ์น ์์ ๋ฐ์ดํฐ๋ฅผ ์ฐพ๊ณ ์ฝ์ ๋ ์ฌ์ฉํ๋ ๋๊ตฌ.์น์ ๊ตฌ์กฐํด..

ํ๋ก ํธ ๊ฐ๋ฐ์ ํ ๋ ์์ด์ฝ์ ํ์ ์์๋ค. ์ฒ์ html css๋ฅผ ๋ฐฐ์ ์ ๋ font awesome ์ ์ฌ์ฉํด์, ๊ณ์ ์ฌ๊ธฐ์ ์์ด์ฝ์ ์ฐพ์์๋๋ฐ ์ ๋ฃ๋ ๋ง๊ณ ํ์ ์ ์ด๋ผ ์์ฌ์์ด ์์๋ค. ์์ผ๋ก๋ ๋ฆฌ์กํธ ํ๋ก์ ํธ ์์ด์ฝ์ React Icons์์ ์ฐพ๋๋ก ํ์! ๋ค์ํ Font Awesome, Ant Design, Bootstrap, Material Design ๋ฑ ๋ฆฌ์กํธ์์ ์ฌ์ฉํ ์ ์๋ ์ ์ฉํ ์์ด์ฝ๋ค์ ๋ชจ๋ ์ฐพ์ ์ ์๋ค. ๋ค์๊ณผ ๊ฐ์ด ๊ฐ๋จํ๊ฒ ์ฌ์ฉํ ์ ์๋ค. yarn add react-icons # or npm install react-icons --save import { FaBeer } from "react-icons/fa"; function Question() { return ( Lets..
์๋ ๋ง์ค์ ์ฒ๋ฆฌ ํ
์คํธ๊ฐ ๋์น ๋, ์๋์ผ๋ก ๋ง์ค์ ์ฒ๋ฆฌ๋ฅผ ํด์ค์ผํ ๋๊ฐ ์๋ค. ์ด๋ ํ
์คํธ๋ฅผ ์ถ์ฝํ๋ ๊ธฐ์ค์ผ๋ก๋ ํฌ๊ฒ ๋ ๊ฐ์ง๊ฐ ์๋ค. ๊ธ์์์ ๋ฐ๋ผ ์ถ์ฝ CSS ellipsis ๊ฐ๊ฐ์ ๋ฐฉ๋ฒ์ ์์๋ณด์! ๊ธ์์์ ๋ฐ๋ผ ์ถ์ฝ ํ
์คํธ ๊ธ์ ์์ ๋ฐ๋ผ ์กฐ๊ฑด๋ถ ๋ ๋๋ง์ ํด์ฃผ๋ฉด ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์๋ฆฐ ํ
์คํธ์ ๋ง์ฐ์ค๋ฅผ ์ฌ๋ฆฌ๋ฉด (hover ํ๋ฉด) ์ ์ฒด ํ
์คํธ๋ฅผ ๋ณผ ์ ์๋๋ก Tooltip์ผ๋ก ๋์์ค ์ ์๋ค. ์๋๋ name์ด 10์๋ฅผ ๋์ผ๋ฉด ์์์๋ถํฐ 10์๋ฅผ ๋ณด์ฌ์ฃผ๊ณ , ๋ท ๋ถ๋ถ์ '...'์ผ๋ก ์๋ผ์ ๋ณด์ฌ์ฃผ๋ ์ฝ๋ ์์์ด๋ค. ( ๋ฐ์ดํฐ๊ฐ ์์ ๋ '-' ๋ฅผ ์ถ๋ ฅํ๋๋ก ํ๋ ์กฐ๊ฑด๋ถ ๋ ๋๋ง๋ ํฌํจ๋์ด ์๋ค.) cell: ({ row: { original } }) => { return original.name ? (..

Context๋? : Props Drilling์ ๋์ Context๋ ์ปดํฌ๋ํธ์์ Props๋ฅผ ์ฌ์ฉํ์ง ์๊ณ ํ์ํ ๋ฐ์ดํฐ๋ฅผ ๋๊ฒจ์ฃผ๋ ๋ฐฉ์์ด๋ค. ํน์ ๋ฐ์ดํฐ๋ฅผ ์ปดํฌ๋ํธ ํธ๋ฆฌ ์ ์ฒด์ ๊ฑธ์ณ ์ฝ๊ฒ ๊ณต์ ํ ์ ์๊ฒ ํด์ค๋ค. Context๋ Props Drilling ๋ฌธ์ ๋ฅผ ํด๊ฒฐํด ์ค ์ ์๋ค. Props Drilling : ์ค์ฒฉ๋ ์ฌ๋ฌ ๊ณ์ธต์ ์ปดํฌ๋ํธ์๊ฒ props ์ ๋ฌ. ๋ฌธ์ ์ : ํน์ prop์ ์ฌ์ฉํ์ง ์๋ ์ปดํฌ๋ํธ๋ค์๊ฒ๋ ํด๋น prop์ ๋ด๋ ค์ฃผ์ด์ผ ํ๋ ๋นํจ์จ. ๊ฐ๋
์ฑ ํ๋ฝ. ์ปดํฌ๋ํธ ๊ฒฐํฉ๋ ์์น์ผ๋ก ๋ถํ์ํ ๋ฆฌ๋ ๋๋ง ๋ฐ์ ๊ฐ๋ฅ, ์ฝ๋์ ๋ณต์ก๋ ์ฆ๊ฐ context๋ ๋ฆฌ์กํธ ๋ฒ์ 16๋ถํฐ ์ฌ์ฉ ๊ฐ๋ฅํ ๋ฆฌ์กํธ ๋ด์ฅ API๋ก, ์ด๋ค ๋ฆฌ์กํธ ํ๋ก์ ํธ๋ผ๋ ๋ฆฌ์กํธ๋ฅผ import ํ๋ฉด context๋ฅผ ๋ฐ๋ก ์์ฑํ๊ณ ..
React์์ ์ปดํฌ๋ํธ์ ์๋ช
์ฃผ๊ธฐ๋ ํฌ๊ฒ ์ธ ๋จ๊ณ๋ก ๊ตฌ๋ถ๋๋ค. : ๋ง์ดํ
(Mounting), ์
๋ฐ์ดํธ(Updating), ๊ทธ๋ฆฌ๊ณ ์ธ๋ง์ดํ
(Unmounting) ๊ฐ ๋จ๊ณ๋ ์ปดํฌ๋ํธ์ ์์ฑ, ์
๋ฐ์ดํธ ๋ฐ ํ๊ดด ๊ณผ์ ์ ํด๋นํ๋ค. 1. ๋ง์ดํ
(Mounting) ์ด ๋จ๊ณ๋ ์ปดํฌ๋ํธ๊ฐ ์ฒ์์ผ๋ก ์์ฑ๋์ด DOM์ ์ฝ์
๋๋ ๊ณผ์ ์ด๋ค. ๋ง์ดํธ ๊ณผ์ ์์๋ ์ฒ์์ผ๋ก render ๋ฉ์๋๊ฐ ํธ์ถ๋์ด ์ปดํฌ๋ํธ๊ฐ ํ๋ฉด์ ๋ ๋๋ง ๋๋ค. ๋ค์๊ณผ ๊ฐ์ ์๋ช
์ฃผ๊ธฐ ๋ฉ์๋๊ฐ ๋ง์ดํ
๋จ๊ณ์์ ํธ์ถ๋๋ค. (์์ฃผ ์ฌ์ฉ๋๋ ์๋ช
์ฃผ๊ธฐ ๋ฉ์๋๋ ๋ณผ๋์ฒด) constructor(): ์ปดํฌ๋ํธ์ ์์ฑ์. ์ปดํฌ๋ํธ์ ์ด๊ธฐ ์ํ๋ฅผ ์ค์ ํ๋ค. static getDerivedStateFromProps(): ์ปดํฌ๋ํธ๊ฐ ๋ง์ดํธ ๋๊ธฐ ์ ์ ํธ์ถ๋๋ค. props์ ์ํด ..
useMemo ์ฌ์ฉ ๋ชฉ์ useMemo๋ React์์ ์ ๊ณตํ๋ ํ
(Hook) ์ค ํ๋๋ก, ์ฃผ๋ก ๋ ๊ฐ์ง ๋ชฉ์ ์ผ๋ก ์ฌ์ฉ๋๋ค. ๊ณ์ฐ ๋น์ฉ์ด ๋์ ์ฐ์ฐ์ ๊ฒฐ๊ณผ๋ฅผ ์ ์ฅํ๊ณ ์ฌ์ฌ์ฉํ๊ธฐ ์ํด - ๋ง์ฝ ์ปดํฌ๋ํธ๊ฐ ๊ณ์ฐ ๋น์ฉ์ด ๋ง์ด ๋๋ ์ฐ์ฐ์ ์ํํ๊ณ , ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ์ฌ๋ฌ ๋ฒ ์ฌ์ฌ์ฉํด์ผ ํ๋ค๋ฉด useMemo๋ฅผ ์ฌ์ฉํ์ฌ ํด๋น ๊ฒฐ๊ณผ๋ฅผ ์ ์ฅํ๊ณ ํ์ํ ๋ ์ฌ์ฌ์ฉํ ์ ์๋ค. ์ฐธ์กฐ ๋์ผ์ฑ(Reference Equality)์ ์ ์งํ๊ธฐ ์ํด - React์์ ๊ฐ์ฒด๋ ๋ฐฐ์ด๊ณผ ๊ฐ์ ๋ณต์กํ ๋ฐ์ดํฐ ํ์
์ props๋ก ๋๊ธธ ๋, ์ด ๋ฐ์ดํฐ๊ฐ ๋งค๋ฒ ์๋ก ์์ฑ๋๋ฉด ์์ ์ปดํฌ๋ํธ๊ฐ ๋ถํ์ํ๊ฒ ์ฌ๋ ๋๋ง๋ ์ ์๋ค. useMemo๋ฅผ ์ฌ์ฉํ์ฌ ์ด๋ฌํ ๊ฐ์ฒด๋ ๋ฐฐ์ด์ ์ ์ฅํ๋ฉด, ์ปดํฌ๋ํธ์ ๋ฆฌ๋ ๋๋ง์ด ๋ฐ์ํด๋ ๋์ผํ ์ฐธ์กฐ์ ๋ฐ์ดํฐ๋ฅผ ์ ์งํ ์ ์๋ค...