React-query : fetch, cache, synchronize, update(for server state)์ ์ฌ์ฉ๋๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ด๋ค. ๊ณต์์ฌ์ดํธ React Query Hooks for fetching, caching and updating asynchronous data in React react-query.tanstack.com ๋ฐฐ๊ฒฝ server state ์ฌ์ฉ ์ ๋ฐ์ํ ์ ์๋ ๋ฌธ์ ์ ์ ๋ค์๊ณผ ๊ฐ๋ค. caching deduping(๋ฐ์ดํฐ ์ค๋ณต ์ ๊ฑฐ) update "out of date" data / know when is it reflecting updates data pagination optimization, lazy loading data memory management, garba..
Ajax๋ js๋ฅผ ์ด์ฉํ ๋น๋๊ธฐ ํต์ ์ผ๋ก, ํด๋ผ์ด์ธํธ ์๋ฒ ๊ฐ์ xml(Extensible Markup Language)๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ๋ ๊ธฐ์ ์ด๋ค. ์ ์ฒด ํ์ด์ง๋ฅผ ๋ฆฌ๋ก๋ํ์ง ์๊ณ ํ์ํ ๋ฐ์ดํฐ๋ง ๋ก๋ํ ์ ์๋ค๋ ์ฅ์ ์ด ์๋ค. Ajax ๋ฐฉ์์ ์ด์ฉํ ์น API๋ XMLHttpRequest ๋ถํฐ ์์ํ์ฌ fetch๋ฅผ ๊ฑฐ์ณ axios๊น์ง ๋ค์ํ๋ค. XMLHttpRequest๋ ๋ณต์กํ๊ณ ๊ฐ๋ ์ฑ์ด ๋จ์ด์ง๊ธฐ ๋๋ฌธ์ fetch api๊ฐ ES6์์๋ถํฐ ํ์ค์ด ๋์๋๋ฐ, ๋ฐ๋ผ์ ํ์ฌ fetch api๋ ๊ธฐ๋ณธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ก ๋ฐ๋ก ์ค์นํ์ง ์๊ณ ์ฌ์ฉํด๋ ๋๋ค. axios๋ Node.js์์ XMLHttpRequests๋ฅผ ์ฌ์ฉํ๊ธฐ ์ข๊ฒ ๋ง๋ค์ด๋ api์ด๋ฉฐ ๋ฐ๋ก ์ค์นํด์ฃผ์ด์ผ ๋์ํ๋ค. TOP Ajax API๋ฅผ ์ฐธ๊ณ ํ๋ฉด ๋ ๋ง์..
ECMAScript ๊ณต๋ถ ES5 ์ด์ ES3 (1999) : ์ ๊ทํํ์, try/catch๋ฌธ string string.length : ๊ธธ์ด ์์ฑ string.indexOf(string, [start]) : ํด๋น ๊ธ์์ ์์ index ์์น ๋ฐํ string.lastIndexOf(string, [start]) : ํด๋น ๊ธ์์ ๋ง์ง๋ง ์์ index ์์น ๋ฐํ string.search(string) : indexOf์ ๋น์ทํ์ง๋ง ์ ๊ทํํ์ ์ฌ์ฉ x string.slice(index, index2) : index๋ถํฐ index2-1๊น์ง ์๋ฅด๊ธฐ ์์ index๋ ๋ค์์๋ถํฐ ์ string.substring(index, index2) : slice์ ๋น์ทํ์ง๋ง, ์์ ๋ถ๊ฐ string.substr(index, l..
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FXlG7t%2FbtqGJFHIwaK%2FVeQgKwmOTLYm2AlWMdp0k1%2Fimg.png)
์ ํ ์ ๋ ฌ ๊ฐ๋ max, min ์ ๋ ฌ์ด๋ผ๊ณ ๋ ๋ถ๋ฆฐ๋ค. ์ฒ์๋ถํฐ ๋ ์์๊น์ง ํ์ผ๋ฉด์ ์ต์๋ ์ต๋๋ฅผ ์ฐพ์์ ๋ฆฌ์คํธ์ ์ฒ์์ด๋ ๋์ ๋ฃ๊ณ ํด๋น ์์๋ฅผ ์ ์ธํ ๋ค๋ฅธ ์์์ ๋ํด ๋ค์ ์ ๋ ฌ์ ์ํํ๋ ๋ฐฉ๋ฒ์ด๋ค. ๋ฌด์์๋ก ์ ๋ ฌ๋ ๋ฐ์ดํฐ์ ์ฒ์๋ถํฐ ๋๊น์ง ํ์ํ ํ, ๊ฐ์ฅ ํฐ ์๋ฅผ ๋ฆฌ์คํธ์ ๋ง์ง๋ง ์์์ ๊ตํํ๋ค. ๊ทธ ํ ๋ง์ง๋ง ์์๋ฅผ ์ ์ธํ ์ฑ๋ก ์ฒ์๋ถํฐ ๋๊น์ง ๋ฐ์ดํฐ๋ฅผ ํ์ํ ํ, ๊ฐ์ฅ ํฐ ์๋ฅผ ๋ฆฌ์คํธ์ ๋ง์ง๋ง ์์์ ๊ตํํ๋ค. ๊ตฌํ ์์ฌ ์ฝ๋๋ ๋ค์๊ณผ ๊ฐ๋ค. (min ์ ๋ ฌ) for i=0 to n: a[i]๋ถํฐ a[n-1]๊น์ง ์ฐจ๋ก๋ก ๋น๊ตํ์ฌ ์ต์๊ฐ์ด ์๋ a[j]๋ฅผ ์ฐพ๋๋ค. a[i]์ a[j]๋ฅผ ๋ฐ๊พผ๋ค. (max ์ ๋ ฌ) for i=0 to n: a[0]๋ถํฐ a[n-i-1]๊น์ง ์ฐจ๋ก๋ก ๋น๊ตํ์ฌ ์ต๋๊ฐ์ด ์๋ ..
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FFC49u%2FbtqGK3IkNH0%2Fhek2qlI9UVKvsIrcSe1rV0%2Fimg.png)
์ ๋ ฌ ์ด๋ค ๋ฐ์ดํฐ๋ค์ด ์ฃผ์ด์ก์ ๋ ์ด๋ฅผ ์ ํด์ง ์์๋๋ก ๋์ดํ๋ ๋ฌธ์ ๊ฐ '์ ๋ ฌ'์ด๋ค. ๋ณดํต ์ปดํจํฐ์์๋ ํ์์ ์ํด์ ์ ๋ ฌ์ ์ํํ๋ค. ํ์์ ์ ๋ ฌ์ ํตํด ํ๋ ๊ฒ๋ณด๋ค ๋ ๊ฐ๋ ฅํ ์๊ณ ๋ฆฌ์ฆ์ด ์์ง๋ง, ํ ๋ฒ ๋ฐ์ดํฐ๋ฅผ ์ ๋ ฌํด๋๋ฉด ๋ค์๋ถํฐ๋ ์ด์ง ํ์์ด๋ผ๋ ๋น ๋ฅธ ์๊ณ ๋ฆฌ์ฆ์ ๋ช ๋ฒ์ด๊ณ ์ฌ์ฉํ ์ ์๊ธฐ ๋๋ฌธ์ ์ ์ฉํ๋ค. ๊ทธ๋์ ์ฃผ์ด์ง ๋ฌด์์์ ๋ฐ์ดํฐ๋ฅผ ์ ๋ ฌํ๋ ๊ฒ์ ๋ง์ ์ฐ๊ตฌ์๋ค์ด ๋ฐฉ๋ฒ์ ๋ด๋์๋๋ฐ, ์์ผ๋ก ์ค๋ช ํ 6๊ฐ์ ์ ๋ ฌ ์๊ณ ๋ฆฌ์ฆ์ด๋ค. ๊ทธ ์ธ์๋ ๋ง์ ์ ๋ ฌ ์๊ณ ๋ฆฌ์ฆ์ด ์กด์ฌํ๋ค. ๋ชจ๋ ์ ๋ ฌ์ ์ค๋ช ์ ์์์ ์์ ๋ก ์ค๋ช ํ ๋ฐ์ดํฐ๋ ๋ค์ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด ๋ฌด์์๋ก ๋ฐฐ์น๋์ด์๋ 1~7์ ๋ฐ์ดํฐ์ด๋ค. ์ ๋ ฌ ์๊ณ ๋ฆฌ์ฆ์ ์๊ฐ ๋ณต์ก๋๋ ๋น๊ต + ์ด๋์ผ๋ก ์ธก์ ํ๋ค. ํน์ฑ ์ ๋ ฌ ์๊ณ ๋ฆฌ์ฆ์ ์ฌ๋ฌ ๊ธฐ์ค์ ๋ฐ๋ผ ๋๋ ์ ์๋ค. ์๊ฐ ๋ณต..
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FT5BKn%2FbtqF3GIovQe%2FgTk6GPQbIx6rgXPG5NnrW1%2Fimg.png)
์๋ก ์๋ฃ๊ตฌ์กฐ ์๋ฃ๊ตฌ์กฐ๋ ์ปดํจํฐ์์ ์๋ฃ๋ฅผ ์ ๋ฆฌํ๊ณ ์กฐ์งํํ๋ ๋ค์ํ ๊ตฌ์กฐ๋ฅผ ๋งํ๋ค. ํ๋ก๊ทธ๋จ์ ์๋ฃ๊ตฌ์กฐ์ ์๊ณ ๋ฆฌ์ฆ์ผ๋ก ์ด๋ฃจ์ด์ ธ์๊ธฐ ๋๋ฌธ์, ์๋ฃ๊ตฌ์กฐ๋ ๋ฐ๋์ ๊ณต๋ถํด์ผํ๋ ๋ถ์ผ์ด๋ค. ์๋ฃ๊ตฌ์กฐ๋ ๋จผ์ ๋จ์ ์๋ฃ๊ตฌ์กฐ์ ๋ณตํฉ ์๋ฃ๊ตฌ์กฐ๋ก ๊ตฌ๋ถ๋๊ณ , ๋ณตํฉ ์๋ฃ๊ตฌ์กฐ์๋ ์ ํ ๊ตฌ์กฐ์ ๋น์ ํ ๊ตฌ์กฐ๊ฐ ์๋ค. ์์ฐจ์ ์ผ๋ก ์ดํด๋ณด์. ๋ฐฐ์ด, ๋ฌธ์์ด ์ฐ๊ฒฐ ๋ฆฌ์คํธ ์คํ, ํ, ๋ฑ ๊ทธ๋ํ ํธ๋ฆฌ ํ ๊ตฌ์กฐ์ฒด
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdtBRZs%2FbtqFnD58FQe%2Fpy9vOBVkw0bmQWNHSgid91%2Fimg.png)
ํ์ผ ์์คํ ์ ๋ฆฌ ๊ฐ์ ์ค๋ ๊ธฐ๊ฐ ๋์ ์ ์ฅ๋์ด์ผํ๋ ์ ๋ณด์ ์ ์ฅ์๋ ๋ช๊ฐ์ง ์กฐ๊ฑด์ด ์๋ค. ํ๋ก์ธ์ค๊ฐ ์ข ๋ฃ๋ ํ์๋ ์ ๋ณด๊ฐ ์ ์ง๋๋ ๋นํ๋ฐ์ฑ ๋ง์ ์ ๋ณด๋ฅผ ์ ์ฅํ ์ ์๋ ํฐ ์ฉ๋ ๋ค์์ ํ๋ก์ธ์ค๊ฐ ๋์์ ์ ๊ทผ ๊ฐ๋ฅํ ์ ๊ทผ์ฑ ์ค๋ ๊ธฐ๊ฐ๋์ ํฐ ์ ๋ณด๋ฅผ ์ ์ฅํ๋ ์ฅ์น ์ค ํ๋์ธ Disk๋ ๊ณ ์ ๋ ํฌ๊ธฐ์ block๋ค๋ก ๊ตฌ์ฑ๋์ด์๋๋ฐ, ๋ค์๊ณผ ๊ฐ์ ์ง๋ฌธ๋ค์ ๋ถ๋ฌ์ผ์ผํฌ ์ ์๋ค. Disk์ ์ ์ฅํ ์ ๋ณด๋ฅผ ์ด๋ป๊ฒ ์ฐพ์ ๊ฒ์ธ๊ฐ? ์ ๋ณด์ ์์ด ๋ฐฉ๋ํด์ ์ ๋ณด๋ฅผ ์ฐพ๊ธฐ๊ฐ ์ฝ์ง ์๋ค. ๋น ๊ณต๊ฐ์ ์ด๋ป๊ฒ ๊ด๋ฆฌํ ๊ฒ์ธ๊ฐ? ์๋ก์ด ์ ๋ณด๋ฅผ ์ ์ฅํ ๋ ๋น ๊ณต๊ฐ์ ์ฐพ์์ ์ฌ์ฉํด์ผํ๋ค. ์ฌ์ฉ์ ๋ณ ๊ถํ์ ์ด๋ป๊ฒ ๊ด๋ฆฌํ ๊ฒ์ธ๊ฐ? ๋ฐ์ดํฐ๋ฅผ ๋ณดํธํด์ผํ๋ค. ์ด ํด๋ต์ ํ์ผ ๊ณผ ํ์ผ์์คํ ์์ ์ฐพ์ ์ ์๋ค. ํ์ผ ํ์ผ์ ์ ์ฅ ์ฅ์น์ ์ ๋ณด๋ฅผ ์ ์ฅํ..
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbeX2dr%2FbtqBTKVL2ee%2FB14kzQTkC1Z3OOupkwPbz1%2Fimg.png)
6.3 ๋ฌธ์ : ์ํ (๋ฌธ์ ID: PICNIC, ๋์ด๋: ํ) ๋ฌธ์ ์๋๋ก๋ฉ๋ค ์ ์น์ ์ต์คํ๋ ์ค๋ฐ์์๋ ๋ค์ ์ฃผ์ ์จ๋๊ณต์์ผ๋ก ์ํ์ ๊ฐ๋๋ค. ์์ ์ ์๋์ ์ํ ๋ ํ์๋ค์ ๋ ๋ช ์ฉ ์ง์ ์ง์ด ํ๋ํ๊ฒ ํ๋ ค๊ณ ํฉ๋๋ค. ๊ทธ๋ฐ๋ฐ ์๋ก ์น๊ตฌ๊ฐ ์๋ ํ์๋ค๋ผ๋ฆฌ ์ง์ ์ง์ด ์ฃผ๋ฉด ์๋ก ์ธ์ฐ๊ฑฐ๋ ๊ฐ์ด ๋์๋ค๋์ง ์๊ธฐ ๋๋ฌธ์, ํญ์ ์๋ก ์น๊ตฌ์ธ ํ์๋ค๋ผ๋ฆฌ๋ง ์ง์ ์ง์ด์ผ ํฉ๋๋ค. ๊ฐ ํ์๋ค์ ์์ ๋ํด ์ด๋ค์ด ์๋ก ์น๊ตฌ์ธ์ง ์ฌ๋ถ๊ฐ ์ฃผ์ด์ง ๋, ํ์๋ค์ ์ง ์ง์ ์ ์๋ ๋ฐฉ๋ฒ์ ์๋ฅผ ๊ณ์ฐํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์ธ์. ์ง์ด ๋๋ ํ์๋ค์ด ์ผ๋ถ๋ง ๋ค๋ฅด๋๋ผ๋ ๋ค๋ฅธ ๋ฐฉ๋ฒ์ด๋ผ๊ณ ๋ด ๋๋ค. ์๋ฅผ ๋ค์ด ๋ค์ ๋ ๊ฐ์ง ๋ฐฉ๋ฒ์ ์๋ก ๋ค๋ฅธ ๋ฐฉ๋ฒ์ ๋๋ค. (ํ์ฐ,์ ์์นด)(์จ๋,ํฐํ๋)(ํจ์ฐ,์ ๋ฆฌ) (ํ์ฐ,์ ์์นด)(์จ๋,์ ๋ฆฌ)(ํจ์ฐ, ํฐํ๋) ์..
Comment