์ ํ์ ์ถฉ๋ ์ /*css*/ .special{ color: blue; } p{ color: red; } css๋ cascade์ specificity๋ผ๊ณ ๋ถ๋ฆฌ๋ rule์ ๊ฐ์ง๊ณ ์๊ณ , ํด๋น rule์ ๋ฐ๋ผ ์ถฉ๋ ์ ๋ ๊ฐํ ์ ํ์๊ฐ ์ ์ฉ๋๋ค. cascade rule : ๋ค์ ์ ์ฉ๋ ์คํ์ผ์ด ์์ ์คํ์ผ์ ๋ฎ์ด์ด๋ค. specificity rule : ์์๋ฅผ ๋ ํน์ ํ๋ ์ ํ์๊ฐ ์คํ์ผ์ ์ฐจ์งํ๋ค. ๋ฐ๋ผ์ ์์ ์์ ์์ specificty rule์ ์ํด color๋ blue๊ฐ ๋๋ค. specificity specificity๋ 4๊ฐ์ง์ ๋จ์๋ก ์ธก์ ๋๋ค. Thousands : style ์์ฑ ๋ด์ ์ ์๋์ด ์๋ style(inline style)์ผ ๊ฒฝ์ฐ Hundreds : ID selector๋ฅผ ์ฌ์ฉํ์ฌ..
๋ง์ผ Typescript๋ก ๊ฐ๋ฐํ๋ ์ค์ ์์ฃผ ์ ์์ฑ๋ JS ๋ชจ๋์ ๊ฐ์ ธ์์ ์ฐ๊ณ ์ ํ๋ค๋ฉด, ํด๋น ๋ชจ๋ ๋ด์ ํจ์๋ typescript๋ก ์ ์๋์ด์์ง ์๊ธฐ ๋๋ฌธ์ ์ปดํ์ผ ๊ณผ์ ์์ ์ค๋ฅ๊ฐ ๋ฌ๋ค. ๋ชจ๋์ด ํด๋น ์์ฑ์ ๊ฐ์ง๊ณ ์์์๋ type์ด ์ ํด์ ธ์์ง ์์์ ๊ฐ์ง๊ณ ์์ง ์๋ค๊ณ ํด์ํ๋ ๊ฒ์ด๋ค. ๋ค์๊ณผ ๊ฐ์ด declare ํค์๋๋ฅผ ์จ์ ์ ์ํด๋๋ฉด type์ด ์ธ์๋์ด typescript compiler๊ฐ ํด์ํ ์ ์๊ฒ ๋๋ค. declare let module: any ๊ฐ๋จํ ๋งํด์ ์ปดํ์ผ๋ฌ์๊ฒ "์ด๊ฑด ์ด๋ฏธ ์กด์ฌํ๊ณ ๋ค๋ฅธ ์ฝ๋์์ ์ฐธ์กฐํ ์ ์๋ค."๋ผ๊ณ ์ค๋ช ํ๋ ๊ฒ์ด๋ค.
๋ฐฐ๊ฒฝ ํจ์๋ค๋ผ๋ฆฌ ๋ฐ์ดํฐ๋ฅผ ๊ณต์ ํ๊ณ ์ถ๋ค๋ฉด ์ด๋ป๊ฒ ํด์ผํ ๊น? ์ ์ญ ์ค์ฝํ์ ํด๋น ๋ฐ์ดํฐ๋ฅผ ๋๋ค๋ฉด ๋ค๋ฅธ ๋ด๋ถ ์์์ ์ํด ๋ง๊ฐ์ง ์๋ ์๊ณ , ์์๊ฐ ๋ค์์ผ ์ ์ญ ์ค์ฝํ์ ์์๊ฐ ์กด์ฌํ์ง ์์ ์๋ ์๋ค. ๋ฐ๋ผ์ ๋ชจ๋์ด๋ผ๋ ๋ฐฉ์์ ์ด์ฉํ๋ฉด ๊ฐ๊ฐ ํ์ํ ๋ชจ๋์ importํ์ฌ ์ฌ์ฉํจ์ผ๋ก์จ ์ด๋์์ ์๋ฌ๊ฐ ๋๋์ง ํ์ ํ๊ธฐ ์ฝ๋ค. ๋ชจ๋์ ๋ง๋ค๊ณ import, export ํ๋ ์์คํ ์ ๋ชจ๋ ์์คํ ์ด๋ผ ํ๋๋ฐ ํ์ฌ 2๊ฐ์ง์ ๋ชจ๋ ์์คํ ์ด ํ๋ฐํ๊ฒ ์ฌ์ฉ๋๊ณ ์๋ค. CommonJS ES modules ์ฐจ์ด์ ๊ธฐ์ด ๋ฌธ๋ฒ CommonJS const module = require('์ด์ฉ๊ตฌ'); const { func } = require('์ด์ฉ๊ตฌ'); module.exports = '์ด์ฉ๊ตฌ'; // default export..
๋ฌธ์ ์ํฉ React context ์ฌ์ฉ ์ ๊ธฐ์กด ์ฝ๋ ๊ตฌ์ฑ์ด context ๋ด๋ถ ์์๊ฐ ๋์ด๋ ์๋ก ๋ณต์กํด์ ธ์ ๋ฆฌํฉํ ๋งํ๋ ค ํ๋ค. ๊ธฐ์กด ๊ตฌํ // ๊ตฌ์ฑ const UserContext = createContext({}); const SignInContext = createContextvoid>(()=>{}); export const UserContextProvider = ({ children }) => { const [user, setUser] = useState(); const signIn = () => {}; return ( {children} ); } export function useUserState() { const context = useContext(UserContext); return c..
๋ฌธ์ : ๋๋ฉ์ธ(B)์ด ๋ณธ ์๋น์ค ๋๋ฉ์ธ(A)์์ ๋ถ๋ฆฌ๋์ด ๋์จ ์ํฉ์์ ์ ๋๋ฒ์ ๋งํฌ๊ฐ ์ค๋์. ์๋ ์ฌ์ฉ์์ ์ ํธ์ ๋ฐ๋ผ ๋ชจ๋ฐ์ผ ๋ธ๋ผ์ฐ์ ์์์ ์ด๋๋๊ฑฐ๋ ์ฑ์ ๋์์ผ ํ๋๋ฐ, ๋ฌด์กฐ๊ฑด ์ฑ์ผ๋ก ์ฐ๋๋๋ ํ์ ๋ฐ์. ์์ธ : ์ ๋๋ฒ์ ๋งํฌ๋ ๋ค๋ฅธ ๋๋ฉ์ธ์ ๋ํด ๋ฌด์กฐ๊ฑด ์ฑ์ผ๋ก ์ฐ๋๋๊ฒ ์ฒ๋ฆฌํ๋ค. ํด๊ฒฐ : ์ ๋๋ฒ์ ๋งํฌ๋ฅผ ๋ค๋ฅธ ๋๋ฉ์ธ์ ๋ํด ์ฒ๋ฆฌํ ์ ์๋ค๋ฉด ๊ทธ๋ ๊ฒ ์ฒ๋ฆฌ. ์๋๋ผ๋ฉด URI scheme์ ์ด์ฉํ์ฌ ์๋ฌ ์ ๋์์ ๊ตฌํํ๋ ์์ผ๋ก ์์ . ๋ฅ๋งํฌ ๋ฅ๋งํฌ๋ ํน์ ์ฃผ์ or ๊ฐ์ ์ํด ์ฌ์ฉ์๊ฐ ์ฑ ๋ด์ ํน์ ํ๋ฉด์ผ๋ก ์ด๋ํ๋ ๊ธฐ๋ฅ์ ๋งํ๋ค. ๋ฅ๋งํฌ๋ 3๊ฐ์ง ๋ฐฉ์์ผ๋ก ๊ตฌ๋ถ๋๋ค. URI scheme : ์ฑ์ URI scheme ๊ฐ์ ๋ฑ๋กํ๋ ๋ฅ๋งํฌ ํน์ scheme ๊ฐ์ ์ ๋ ฅํ๋ฉด (ex_ ohouse:/..
https://web.dev/fast/#optimize-your-images ๋ฅผ ์ฐธ๊ณ ํ์ฌ ์์ฝํ ๋ธ๋ก๊ทธ ๊ธ์ ๋๋ค.* ๋์ ์๋น์ค์ ์๋๋ UX์ ์ํฅ์ ๋ฏธ์น๊ณ , UX๋ ๊ณง ์ฌ์ฉ์์ ์ ์ ์ ๊ฒฐ์ ํ๋ค. ์๋น์ค ์๋ ๊ฐ์ ์๋ ๋ค์ํ ์ต์ ํ๊ฐ ํ์ํ๋ฐ, ์ด๋ฒ์๋ ์ด๋ฏธ์ง ์ต์ ํ๋ฅผ ์ดํด๋ณด์. ์ด๋ฏธ์ง ์ข ๋ฅ ์ด๋ฏธ์ง๋ 2๊ฐ์ง ์ข ๋ฅ๋ก ๊ตฌ๋ถํ ์ ์๋ค. vector ์ด๋ฏธ์ง raster ์ด๋ฏธ์ง vector ์ด๋ฏธ์ง๋ ์ , ์ , ๋ฉด ๋ฑ์ ๋ฒกํฐ์ ์์๋ฅผ ์ฌ์ฉํ์ฌ ์ด๋ฏธ์ง๋ฅผ ํํํ๋ ๋ฐฉ์์ด๋ฉฐ, ๊ฐ๋จํ ๊ธฐํํ ๋ชจ์ (๋ก๊ณ , ๊ธ์, ์์ด์ฝ ๋ฑ)์ ๋ํ๋ด๋ ๋ฐ์ ์ ํฉํ๋ค. vector ์ด๋ฏธ์ง๋ ์ฌ์ด์ฆ์ ๋ฐ๋ฅธ ๊นจ์ง ์์ด ์ด๋ฏธ์ง๋ฅผ ์ ๋ฌํ ์ ์๋ค๋ ์ฅ์ ์ด ์์ง๋ง, ํํํด์ผ ํ๋ ๋ชจ์์ด ๋ณต์กํ ๊ฒฝ์ฐ ๋ฐ์ดํฐ ์์ด ๋ง์์ง๋ค๋ ๋จ์ ์ด ์๋ค. rast..
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcdhwuQ%2FbtracJ2IN5r%2FOsK40l2J2e1SFpC5LcTYVK%2Fimg.png)
์ธ์ฆ ๋ฐฉ์ 1. API key๋ฅผ ํตํ ์ธ์ฆ ๊ณผ์ user๊ฐ login ์ ๋ณด๋ฅผ ์ ๋ ฅํ๋ค. Client๋ ์ด๋ฏธ Server์ ๋ฑ๋กํ API key๋ฅผ ๊ฐ์ง๊ณ ์๋ค. Client๋ user๊ฐ ์ ๋ ฅํ Login ์ ๋ณด๋ฅผ ๋ฐ์์ API key์ ํจ๊ป Login API๋ฅผ ์์ฒญํ๋ค. Server๋ API key๋ฅผ ํตํด ํด๋น Client๊ฐ ๋ฑ๋ก๋์ด์๋ ์ง๋ฅผ ๊ฒ์ฌํ๋ค. Sever๋ Login ์ ๋ณด๋ฅผ ํตํด ํด๋น User๊ฐ API๋ฅผ ์ฌ์ฉํ ์ ์๋ ์ง๋ฅผ ๊ฒ์ฌํ๋ค. ๋จ์ API key๋ ๋ชจ๋ Client๋ค์ด ๊ณตํต์ผ๋ก ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ๋ ธ์ถ๋๋ฉด ์ ์ฒด API๊ฐ ๋ ธ์ถ๋๋ค. API key๋ ์๊ฐ์ด ๋ฌด์ ํ์ด๊ณ ํ ๋ฒ ๋ ธ์ถ๋๋ฉด API key ๋ณ๊ฒฝ ์ ๊น์ง ๊ณ์ ๋ ธ์ถ๋๋ค. 2. API Token์ ํตํ ์ธ์ฆ ๊ณผ์ user๊ฐ login ์ ๋ณด๋ฅผ ์ ..
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbMP0HC%2FbtracPa1bCk%2FHIx96MumzNMVl9jOosHRf1%2Fimg.png)
๊ธฐ์กด์ ์ํคํ ์ฒ ๊ธฐ์กด์ ์ํคํ ์ฒ๋ Monolitic ์ํคํ ์ฒ๋ก ํ๋์ ์ฝ๋ ๋ฒ ์ด์ค์ ํ๋์ ๋ฐฐํฌ ์ฃผ๊ธฐ๋ฅผ ๊ฐ์ง๊ณ ์๋ ์ํคํ ์ฒ๋ฅผ ๋ปํ๋ค. ์๋น์ค ๋ณ๋ก ๋๋์ด์ ธ์์ง ์์ผ๋ฉฐ ํ๋์ ์๋น์ค๋ฅผ ๊ฐฑ์ ํ์ฌ ๋ฐฐํฌํ๊ณ ์ ํ๋ฉด ๋ชจ๋ ์๋น์ค๊ฐ ๋ค์ ๋ฐฐํฌ ๋๋ค. MSA ์ฅ์ ๊ฐ๋จํ๋ค. ์ ์ง๋ณด์๊ฐ ์ฉ์ดํ๋ค. MSA ๋จ์ ๋น๋ ์๊ฐ, ํ ์คํธ ์๊ฐ, ๋ฐฐํฌ ์๊ฐ์ด ๋น ๋ฅด๊ฒ ์์นํ๋ค. ํ๋์ ์๋น์ค์ ์ฅ์ ๊ฐ ์ ์ฒด ์๋น์ค๋ก ์ด์ด์ง ์ ์๋ค. ์๋น์ค์ ์ํฅ๋๋ ์ ์ฒด ์์คํ ์ ํ์ ์ด ์ด๋ ต๋ค. MSA ๊ตฌ์กฐ UI layer ๋น์ฆ๋์ค ๋ก์ง layer ๋ฐ์ดํฐ ์ ๊ทผ layer DB Micro Service Architecture MSA๋ ๋ฐฐํฌ ๋จ์๋ฅผ ์๋น์ค ๋ณ๋ก ์ชผ๊ฐ ์ํคํ ์ฒ๋ฅผ ๋ปํ๋ค. ๋น๊ตํ์๋ฉด ์์ ๊ทธ๋ฆผ๊ณผ ๊ฐ๋ค. MSA ํน์ง ๊ฐ ์๋น์ค๋ mono..
Comment