React-query :: api fetch ์‹œ ์‚ฌ์šฉํ•˜๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ
์›น (WEB)/๊ณต๋ถ€ 2021. 7. 10. 12:38

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(Asynchronous Javascript And Xml)
์›น (WEB)/๊ณต๋ถ€ 2021. 2. 6. 23:04

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, ES6 ๋ฌธ๋ฒ• ์ •๋ฆฌ
์›น (WEB)/๊ณต๋ถ€ 2021. 2. 3. 21:57

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..

[c++] ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ฐœ๋…๊ณต๋ถ€ :: ์ •๋ ฌ (์„ ํƒ ์ •๋ ฌ, ๋ฒ„๋ธ” ์ •๋ ฌ, ์‚ฝ์ž… ์ •๋ ฌ)
์ปดํ“จํ„ฐ๊ณผํ•™ (CS)/Algorithm 2020. 8. 16. 19:52

์„ ํƒ ์ •๋ ฌ ๊ฐœ๋… 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]๊นŒ์ง€ ์ฐจ๋ก€๋กœ ๋น„๊ตํ•˜์—ฌ ์ตœ๋Œ€๊ฐ’์ด ์žˆ๋Š” ..

[c++] ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ฐœ๋…๊ณต๋ถ€ :: ์ •๋ ฌ (๊ฐœ์š”)
์ปดํ“จํ„ฐ๊ณผํ•™ (CS)/Algorithm 2020. 8. 16. 19:48

์ •๋ ฌ ์–ด๋–ค ๋ฐ์ดํ„ฐ๋“ค์ด ์ฃผ์–ด์กŒ์„ ๋•Œ ์ด๋ฅผ ์ •ํ•ด์ง„ ์ˆœ์„œ๋Œ€๋กœ ๋‚˜์—ดํ•˜๋Š” ๋ฌธ์ œ๊ฐ€ '์ •๋ ฌ'์ด๋‹ค. ๋ณดํ†ต ์ปดํ“จํ„ฐ์—์„œ๋Š” ํƒ์ƒ‰์„ ์œ„ํ•ด์„œ ์ •๋ ฌ์„ ์ˆ˜ํ–‰ํ•œ๋‹ค. ํƒ์ƒ‰์€ ์ •๋ ฌ์„ ํ†ตํ•ด ํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค ๋” ๊ฐ•๋ ฅํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ์žˆ์ง€๋งŒ, ํ•œ ๋ฒˆ ๋ฐ์ดํ„ฐ๋ฅผ ์ •๋ ฌํ•ด๋‘๋ฉด ๋‹ค์Œ๋ถ€ํ„ฐ๋Š” ์ด์ง„ ํƒ์ƒ‰์ด๋ผ๋Š” ๋น ๋ฅธ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๋ช‡ ๋ฒˆ์ด๊ณ  ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์œ ์šฉํ•˜๋‹ค. ๊ทธ๋ž˜์„œ ์ฃผ์–ด์ง„ ๋ฌด์ž‘์œ„์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ •๋ ฌํ•˜๋Š” ๊ฒƒ์— ๋งŽ์€ ์—ฐ๊ตฌ์ž๋“ค์ด ๋ฐฉ๋ฒ•์„ ๋‚ด๋†“์•˜๋Š”๋ฐ, ์•ž์œผ๋กœ ์„ค๋ช…ํ•  6๊ฐœ์˜ ์ •๋ ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋‹ค. ๊ทธ ์™ธ์—๋„ ๋งŽ์€ ์ •๋ ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ์กด์žฌํ•œ๋‹ค. ๋ชจ๋“  ์ •๋ ฌ์˜ ์„ค๋ช…์— ์•ž์„œ์„œ ์˜ˆ์ œ๋กœ ์„ค๋ช…ํ•  ๋ฐ์ดํ„ฐ๋Š” ๋‹ค์Œ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด ๋ฌด์ž‘์œ„๋กœ ๋ฐฐ์น˜๋˜์–ด์žˆ๋Š” 1~7์˜ ๋ฐ์ดํ„ฐ์ด๋‹ค. ์ •๋ ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ์‹œ๊ฐ„ ๋ณต์žก๋„๋Š” ๋น„๊ต + ์ด๋™์œผ๋กœ ์ธก์ •ํ•œ๋‹ค. ํŠน์„ฑ ์ •๋ ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ์—ฌ๋Ÿฌ ๊ธฐ์ค€์— ๋”ฐ๋ผ ๋‚˜๋‰  ์ˆ˜ ์žˆ๋‹ค. ์‹œ๊ฐ„ ๋ณต..

[c++] ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ฐœ๋…๊ณต๋ถ€ :: ์ž๋ฃŒ๊ตฌ์กฐ - ์„œ๋ก 
์ปดํ“จํ„ฐ๊ณผํ•™ (CS)/Algorithm 2020. 7. 28. 14:14

์„œ๋ก  ์ž๋ฃŒ๊ตฌ์กฐ ์ž๋ฃŒ๊ตฌ์กฐ๋Š” ์ปดํ“จํ„ฐ์—์„œ ์ž๋ฃŒ๋ฅผ ์ •๋ฆฌํ•˜๊ณ  ์กฐ์งํ™”ํ•˜๋Š” ๋‹ค์–‘ํ•œ ๊ตฌ์กฐ๋ฅผ ๋งํ•œ๋‹ค. ํ”„๋กœ๊ทธ๋žจ์€ ์ž๋ฃŒ๊ตฌ์กฐ์™€ ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ ์ด๋ฃจ์–ด์ ธ์žˆ๊ธฐ ๋•Œ๋ฌธ์—, ์ž๋ฃŒ๊ตฌ์กฐ๋Š” ๋ฐ˜๋“œ์‹œ ๊ณต๋ถ€ํ•ด์•ผํ•˜๋Š” ๋ถ„์•ผ์ด๋‹ค. ์ž๋ฃŒ๊ตฌ์กฐ๋Š” ๋จผ์ € ๋‹จ์ˆœ ์ž๋ฃŒ๊ตฌ์กฐ์™€ ๋ณตํ•ฉ ์ž๋ฃŒ๊ตฌ์กฐ๋กœ ๊ตฌ๋ถ„๋˜๊ณ , ๋ณตํ•ฉ ์ž๋ฃŒ๊ตฌ์กฐ์—๋Š” ์„ ํ˜• ๊ตฌ์กฐ์™€ ๋น„์„ ํ˜• ๊ตฌ์กฐ๊ฐ€ ์žˆ๋‹ค. ์ˆœ์ฐจ์ ์œผ๋กœ ์‚ดํŽด๋ณด์ž. ๋ฐฐ์—ด, ๋ฌธ์ž์—ด ์—ฐ๊ฒฐ ๋ฆฌ์ŠคํŠธ ์Šคํƒ, ํ, ๋ฑ ๊ทธ๋ž˜ํ”„ ํŠธ๋ฆฌ ํž™ ๊ตฌ์กฐ์ฒด

[์šด์˜์ฒด์ œ ์ •๋ฆฌ] ํŒŒ์ผ & ํŒŒ์ผ์‹œ์Šคํ…œ
์ปดํ“จํ„ฐ๊ณผํ•™ (CS)/Operating System 2020. 7. 3. 08:18

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

[python] ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ ํ•ด๊ฒฐ ์ „๋žต 1๊ถŒ :: ์†Œํ’ (p155) ๋ฌธ์ œ
Algorithm ๋ฌธ์ œ/์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œํ•ด๊ฒฐ์ „๋žต 2020. 2. 12. 01:28

6.3 ๋ฌธ์ œ: ์†Œํ’ (๋ฌธ์ œ ID: PICNIC, ๋‚œ์ด๋„: ํ•˜) ๋ฌธ์ œ ์•ˆ๋“œ๋กœ๋ฉ”๋‹ค ์œ ์น˜์› ์ต์Šคํ”„๋ ˆ์Šค๋ฐ˜์—์„œ๋Š” ๋‹ค์Œ ์ฃผ์— ์œจ๋™๊ณต์›์œผ๋กœ ์†Œํ’์„ ๊ฐ‘๋‹ˆ๋‹ค. ์›์„ ์„ ์ƒ๋‹˜์€ ์†Œํ’ ๋•Œ ํ•™์ƒ๋“ค์„ ๋‘ ๋ช…์”ฉ ์ง์„ ์ง€์–ด ํ–‰๋™ํ•˜๊ฒŒ ํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ์„œ๋กœ ์นœ๊ตฌ๊ฐ€ ์•„๋‹Œ ํ•™์ƒ๋“ค๋ผ๋ฆฌ ์ง์„ ์ง€์–ด ์ฃผ๋ฉด ์„œ๋กœ ์‹ธ์šฐ๊ฑฐ๋‚˜ ๊ฐ™์ด ๋Œ์•„๋‹ค๋‹ˆ์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์—, ํ•ญ์ƒ ์„œ๋กœ ์นœ๊ตฌ์ธ ํ•™์ƒ๋“ค๋ผ๋ฆฌ๋งŒ ์ง์„ ์ง€์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ ํ•™์ƒ๋“ค์˜ ์Œ์— ๋Œ€ํ•ด ์ด๋“ค์ด ์„œ๋กœ ์นœ๊ตฌ์ธ์ง€ ์—ฌ๋ถ€๊ฐ€ ์ฃผ์–ด์งˆ ๋•Œ, ํ•™์ƒ๋“ค์„ ์ง ์ง€์„ ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์˜ ์ˆ˜๋ฅผ ๊ณ„์‚ฐํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์„ธ์š”. ์ง์ด ๋˜๋Š” ํ•™์ƒ๋“ค์ด ์ผ๋ถ€๋งŒ ๋‹ค๋ฅด๋”๋ผ๋„ ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•์ด๋ผ๊ณ  ๋ด…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ๋‹ค์Œ ๋‘ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์€ ์„œ๋กœ ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. (ํƒœ์—ฐ,์ œ์‹œ์นด)(์จ๋‹ˆ,ํ‹ฐํŒŒ๋‹ˆ)(ํšจ์—ฐ,์œ ๋ฆฌ) (ํƒœ์—ฐ,์ œ์‹œ์นด)(์จ๋‹ˆ,์œ ๋ฆฌ)(ํšจ์—ฐ, ํ‹ฐํŒŒ๋‹ˆ) ์‹œ..