Ambassador/Code it
2023.10.21
์๋
ํ์ธ์. ์ฝ๋์ ์ฐ๋ฐฐ์๋ 1๊ธฐ๋ก ํ๋ํ dawonny ์
๋๋ค. ์ด๋ฒ ํฌ์คํ
์์๋ ์ฝ๋์ ์ฐ๋ฐฐ์๋ 1๊ธฐ๋ก ํ๋ํ๋ ์ด์ผ๊ธฐ์ ํ๊ธฐ๋ฅผ ๋จ๊ฒจ๋ณด๋ ค๊ณ ํด์. ์ด๊ฑด ์ฝ๋์์์ ์์ฒญํ(?) ์ฌํญ์ ์๋๊ตฌ์. ์ฐธ์ฌํด๋ณด๊ณ ์์งํ๊ฒ ์ ์ด๋ณธ ํ๊ธฐ์
๋๋น! ์ง์ ์ ๋ ๊ฐ๋ฐ ์ธ์คํ๊ทธ๋จ์ ํ๋ ์ด์์ค์ธ๋ฐ์(@wonny_dev, @dev_event_crawler) ๊ทธ๋ฌ๋ค ๋ณด๋ ์๊ณ ๋ฆฌ์ฆ์ผ๋ก ์ฝ๋ฉ/ํ๋ก๊ทธ๋๋ฐ์ ๊ด๋ จ๋ ๊ฒ์๋ฌผ๋ค์ด ๋ง์ด ๋จ๋ํ์์ ์ฝ๋์ ์ฐ๋ฐฐ์๋ ๋ชจ์ง๋ ๊ทธ ์ค ํ๋์์ด์! ์ ๋ ์ฝ๋์ ์ฐ๋ฐฐ์๋์ ์์ SKT์ ๊ฐ๋ฐ์ ์ปค๋ฎค๋ํฐ์ธ '๋ฐ๋ณด์
' ํ๋ณด๋์ฌ ๋์ธํ๋์ธ '๋ฐ๋ณด์
์'์ ํ๋์ค์ธ๋ฐ์! ์ด ํ๋์ 1๋
๋จ์ ํ๋์ธ ๊ฒ์ ๋นํด ์ด ์ฝ๋์ ์ฐ๋ฐฐ์๋๋ ํ ๋ฌ์ ๋ ํ๋ํ๋๋ผ๊ตฌ์. ๊ทธ๋์ ์ฒซ๋ฒ์งธ๋ก ๋ถ๋ด์ด ๋ณ๋ก ์์๊ตฌ์. ๋๋ฒ์งธ๋ก๋ ์..
Develop/Flutter & Dart
2023.10.09
ref : Flutter & Dart - The Complete Guide [2023 Edition] 23-24 GDSC HUFS ํ๋ฌํฐ ์คํฐ๋๋ฅผ ์งํํ๋ฉฐ ์๊ฐํ ๊ฐ์๋ฅผ ์ ๋ฆฌํ ํฌ์คํ
์
๋๋ค. Flutter ํ๋ก์ ํธ ์์ฑ ํฐ๋ฏธ๋์ ์ํ๋ ๊ฒฝ๋ก์์ ๋ค์์ ์
๋ ฅ flutter create [ํ๋ก์ ํธ์ด๋ฆ] ๋๋ VSCode ๋ฅผ ์ฌ์ฉํ ๊ฒฝ์ฐ cmd + shift + p ๋ก ํ๋ ํธ ์ด์ด์ flutter new project ๋ฅผ ์ ํํด๋ ๋จ Understanding Types ๋คํธ๋ type-safe ์ธ์ด์ด๋ค. ๋ค๋ฅธ ๋ง๋ก๋ type-safety(ํ์
์์ ์ฑ)์ ๊ฐ์ง ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ผ๊ณ ํ ์ ์๋ค. ์ฌ๊ธฐ์ ํ์
์์ ์ฑ์ด๋? ํ๋ก๊ทธ๋จ์ด ์ปดํ์ผ ์๊ฐ์ ํ์
์ค๋ฅ๋ฅผ ๊ฐ์งํ๊ณ ์คํ์๊ฐ์ ํ์
๊ด๋ จ ๋ฌธ์ ๋ฅผ ๋ฐฉ์งํ๋ ๊ฐ๋
Da..
Develop/TypeScript
2023.09.30
never ํ์
์ ๊ตณ์ด ์ธ์ผ์ ์์ ์ ์์ง๋ง ๊ฐ๋ฐํ๋ค๊ฐ ๋์ค๋ฉด ์ด๋ค ๊ฑด์ง๋ ์๊ธฐ์ํด..! never ํค์๋์ ๋ํด์ ๋ฐฐ์๋ณด์ never ๋ ํจ์์ void ํ์
์ ๋ถ์ด๋ฏ return type ์ผ๋ก ์ธ ์ ์๋ค. ์๋ฅผ ๋ค์ด ๋ค์๊ณผ ๊ฐ๋ค function myFunc() :never{ } myFunc ์ด๋ผ๋ ํจ์๋ ๋ค์์ ๋ง์กฑํ๋ค 1. return ์ ํ๋ฉด ์๋๋ค 2. ํจ์์ endpoint ๊ฐ ์์ด์ผํ๋ค (๋์ด ๊ฐ์ ์๊ธฐ์ด๊ธฐ๋ ํ๋ค) ์ฌ๊ธฐ์ endpoint ๊ฐ ์์ด์ผํ๋ค๋ ๊ฒ์ ํจ์์คํ์ด ๋๋์ง ์๋ ๊ฒ์ด๋ค. while(true) ๋๋ฌธ์ ํจ์ ์คํ์ด ๋๋์ง ์๋.. ๊ทธ๋ฐ ์์๋ฅผ ์๊ฐํด๋ณด๋ฉด ๋๊ฒ ๋ค. function ํจ์() :never{ throw new Error('์๋ฌ๋ฉ์ธ์ง') } ์์ ์์๋ฅผ ๋ณด์๋ฉด t..
Develop/TypeScript
2023.09.28
rest parameter ๋จผ์ rest parameter ์ ๋ํด์ ๊ฐ๋จํ ์ง๊ณ ๋์ด๊ฐ์ function PrintNumArr(...a){ console.log(a) } PrintNumArr(1,2,3,4,5) ์์ฒ๋ผ ํจ์ ํ๋ผ๋ฏธํฐ๋ฅผ ๋ง๋ค๋ ์์ ... ์ ๋ถ์ฌ์ฃผ๋ฉด ๊ทธ ์์น์๋ ์ฌ๋ฌ๊ฐ๋ค์ด ๋ค์ด์๋ ๋ฆฌ์คํธ๊ฐ ๋จ๋๋ค๊ณ ์๊ฐํ ์ ์๋ค. [LOG]: [1, 2, 3, 4, 5] ๊ทธ๋ผ rest parameter ์ ํ์
์ง์ ์ ์ด๋ป๊ฒ ํ ๊น? rest parameter ์ ํ์
์ง์ array ์ทจ๊ธ์ด๊ธฐ ๋๋ฌธ์ (์ซ์๊ฐ ๋ค์ด๊ฐ๋ array ๋ผ๋ ๊ฐ์ ํ์) number[] ์ด๋ฐ์์ผ๋ก ์์ฑํด์ค ์ ์๊ฒ ๋ค. ์๋์ ๊ฐ๋ค function PrintNumArr(...a:number[]){ console.log(a) } Pri..
Ambassador/DEVOCEAN YOUNG
2023.09.28
์๋
ํ์ธ์! ๋ฐ๋ณด์
์ 2๊ธฐ ์๋ค์์
๋๋ค. ์ด๋ฒ ํฌ์คํ
์์๋ 9์ ๋ฐ๋ณด์
ํ
ํฌ์ธ๋ฏธ๋์ธ [In-Memory Data Grid ๊ธฐ๋ฐ Smart Factory ์ํคํ
์ฒ๋ง ์ฐ๊ตฌ ์ฌ๋ก] ํ๊ธฐ๋ฅผ ๊ณต์ ํด๋ณด๊ฒ ์ต๋๋ค! ๐ ์ค์ธ์ง ์คํผ์ปค๋์ ์ฒซ๋ฒ์งธ ์ธ์
IMDG ๊ตฌ์กฐ ์๊ฐ์ SKํ์ด๋์ค CXL Memory ์ ์ฉ์ฌ๋ก ๋ฐ์ดํฐ๊ฐ ๋ค์ํด์ง์ ๋ฐ๋ผ ์ฌ๋ฌ ํ๋ซํผ์ด ํ์ฉ๋๋ฉด์ ๋ณต์ก์ฑ์ด ์ปค์ง๊ณ , ๋ฐ์ดํฐ ํตํฉ์ ๋ฌธ์ ๊ฐ ์๊ฒจ๋๊ณ ์์ -> ๋ฐ์ดํฐ ํตํฉ ๊ด๋ฆฌ์ ์ฉ์ดํ IMDG ๊ธฐ์ ์ด ํ์! In-Memory Data Grid(IMDG)๋? ๋ฐ์ดํฐ ํตํฉ ๊ด๋ฆฌ๋ฅผ ์ํ computing ์์ง์ด ํ์ฌ๋ In-memory distributed caching software ๊ธฐ์ IMDG ํ๋ซํผ์ ๋ํ์ ์ธ ์๋ก Hazelcast IMDG ๊ฐ ์์ Ha..
Ambassador/Code it
2023.09.26
์๋
ํ์ธ์ ์ค๋์ ์ฝ๋์์์ ๊พธ์คํ ๊ณต๋ถํ ์ ์๋ ๋น๊ฒฐโจ์ ๋ํด์ ๋ช๊ฐ์ง ์๊ฐํด๋๋ฆฌ๋ ค๊ณ ํด์! ๋ฒ์จ ์ฝ๋์ ์ฐ๋ฐฐ์๋๋ก์์ ๋ง์ง๋ง ํฌ์คํ
์ด ๋๊ฒ ๋ค์. ์ฝ๋์์๋ ๋ค์ํ ๋๊ธฐ ๋ถ์ฌ ์ฅ์น๋ค์ด ์จ๊ฒจ์ ธ ์๋๋ฐ์. ํ๋์ฉ ์ดํด๋ณผ๊น์? ๋จผ์ ์ถ์ ์ฒดํฌ ๊ธฐ๋ฅ! ๋ ์จ์ 1๊ฐ์ด์ ๋ฌด์์ด๋ ์๊ฐํ๋ฉด ์ฝ๋์ ์ถ์์ ํ ๊ฒ์ผ๋ก ์ฒดํฌ๋์ด์. ๋งค์ผ ์ฐ์์ผ๋ก ๊ฐ์๋ฅผ ์๊ฐํ๋ค๋ฉด ๋ง์น ๊นํ๋ธ ์ ๋ ์ฌ๊ธฐํ๋ฏ ๊พธ์คํ ์ด์ ์ ๊ฐ์ง๊ณ ํ ์ ์์ ๊ฒ ๊ฐ์์! ๋งค์ผ ์กฐ๊ธ์ฉ์ด๋ผ๋ ํ๋๊ฒ ์ค์ํ๋๊น์~! ํ๋ฃจ์ ๋ ์จ์ 10๊ฐ ์๊ฐํ๋ ๋ฑ์ ์ฌ๋ฌ ์กฐ๊ฑด๋ค์ ๋ง์กฑํ๋ฉด ๋ฐฐ์ง๋ฅผ ๋ฐ์ ์ ์๊ณ , ๊ฐ์๋ฅผ ์๊ฐํ๊ณ ๋๋ฉด ์๋ฃ์ฆ๋ ๋ฐ์ ์ ์์ด์! ์๊ธฐ๋ฅผ ์๊ฐํ๋ ํ์ด์ง์ ์๋ฃ์ฆ์ ์
๋ก๋ํด๋ ์ข๊ณ , ๊ธฐ๋ถ๋ ๋ฟ๋ฏํ ๊ฒ ๊ฐ์ฃ ? ๋ ๋ฒจ์์คํ
๋ ์๋๋ฐ์! ๋ง์น ๊ฒ์๊ฐ์ด ๊ฒฝ..
Develop/TypeScript
2023.09.24
์ด์ ์ type alias ๋ฅผ ์ด์ฉํด์ ํ์
์ ๋ณ์์ฒ๋ผ ์ ์ฅํด ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ๋ฐฐ์ ๋ค. ์ถ๊ฐ๋ก, object ์ ํ์
์ ์ง์ ํ ๋ interface ๋ผ๋ ํค์๋๋ฅผ ์ด์ฉํ ์๋ ์๋ค. interface interface Student{ name: string } interface Teacher{ name: string, age: number } let ํ์: Student = {name:'kim'} let ์ ์: Teacher = {name:'kim', age:20} interface ๋ type ํค์๋ ์ฒ๋ผ ์ฌ์ฉํ ์ ์๋ ํค์๋์ด๋ค. interface ์ ์ฅ์ ์ extends ๋ฅผ ํ ์ ์๋ค๋ ๊ฒ์ด๋ค. ์๋ฅผ ๋ค์ด ์์ ์ฝ๋๋ฅผ ์๋์ ๊ฐ์ด ์ธ ์๋ ์๋ค. interface Student{ name: st..
Develop/TypeScript
2023.09.19
ํ๋๊ฐ ํ์
์ง์ class ๋ด๋ถ์๋ object ๊ฐ ์ฌ์ฉํ ์ ์๋ ํ๋๊ฐ์ ๋ง๋ค ์ ์๋ค. class Person { data = 0; } let john = new Person(); let kim = new Person(); console.log(john.data); console.log(kim.data); ์๋ฅผ ๋ค์ด Person ์ด๋ผ๋ class ์ 0 ๊ฐ์ ๊ฐ์ง๋ data ๋ผ๋ ๊ฑธ ๋ง๋ค์ด๋์ผ๋ฉด john ์ด๋ kim ์์ ์ด data ๋ผ๋ ํ๋๋ฅผ ์ฌ์ฉํ ์ ์๋ค. ์ด ๋ ์ด data ๋ผ๋ ํ๋์ ํ์
์ ์ง์ ํด์ค๋ค๋ฉด ๋ค์๊ณผ ๊ฐ๋ค class Person { data :number = 0; } ํ์ง๋ง ๊ตณ์ด ์ฐ์ง ์์๋ ์๋์ผ๋ก number ํ์
์ด๋๋ค. ํ์
์คํฌ๋ฆฝํธ๋ ์๋์ผ๋ก ํ์
์ง์ ์ ํด์ฃผ๊ธฐ ๋๋ฌธ! co..
Finds & Notes
2023.09.18
์ ๋ ์ด ํฐ์คํ ๋ฆฌ ๋ธ๋ก๊ทธ๋ฅผ ๊ตฌ๊ธ ์์น ์ฝ์์ ๋ฑ๋กํด๋์๋๋ฐ์. ๊ฐ์ข
๊ด๋ จ๋ ๋ฌธ์ ๋ค์ ํด๊ฒฐํ๋ฉด์ ์ด๋ป๊ฒ ํด๊ฒฐํ๋์ง ๊ณต์ ํ๊ณ ์ ํฌ์คํ
์ ์์ฑํด๋ณด๋ ค๊ณ ํด์! ์ ์ ํ ํ์ค ํ๊ทธ๊ฐ ํฌํจ๋ ๋์ฒด ํ์ด์ง ๋ฌธ์ ํ์ด์ง ์์ธ ์์ฑ ๋ถ๋ถ์์ '์ ์ ํ ํ์ค ํ๊ทธ๊ฐ ํฌํจ๋ ๋์ฒด ํ์ด์ง - ์ด๋ฌํ ํ์ด์ง๋ ์์ธ์ด ์์ฑ๋์ง ์๊ฑฐ๋ Google์ ๊ฒ์๋์ง ์์ต๋๋ค' ๋ผ๋ ๋ฌธ๊ตฌ๊ฐ ๋จ๋๋ผ๊ตฌ์. ์ ์ค๋ณต๋ ํ์ด์ง๊ฐ ๋ง๋ค์ด์ง๋๊ฑด๊ฐ- ํ๊ณ ์ํฅ์ ๋ฐ์ ํ์ด์ง๋ฅผ ํ์ธํด๋ดค์ด์. ๋ดค๋๋ ๋ค /m/ ์ด ๋ถ์ ์ฃผ์๋๋ผ๊ตฌ์. ํฐ์ค๋ณด๋ฆฌ ๋ธ๋ก๊ทธ์ ๊ธ์ ํ๋ ์์ฑํ๋ฉด '์น' ๊ณผ '๋ชจ๋ฐ์ผ' ๋ฒ์ ์ด ๋ง๋ค์ด์ง๊ฒ ๋ฉ๋๋ค. ๋ฐ๋ผ์ ๋งํฌ ์ฃผ์๋ 2๊ฐ๊ฐ ๋ง๋ค์ด์ ธ์. ๊ตฌ๊ธ ์์น์ฝ์์ ๋ณ๋์ ์ค์ ์ด ์์ผ๋ฉด ์น ๋งํฌ์ ๋ชจ๋ฐ์ผ ๋งํฌ ๋์ค์ ํ๋๋ฅผ ํ์ค์ผ๋ก ์ค์ ํ๊ณ , ํ๋๋ ์ค..
Develop/TypeScript
2023.09.18
strictNullCheck ์ต์
์ผ๊ธฐ tsconfig.json ํ์ผ์ ๋ค์ด๊ฐ์ strict ์ต์
์ true ๋ก ์ผ์ค๋ค. strictNullChecks ๋ง ์ผ์ค๋ ๋๋ค. (strict ์์ strictNullChecks ๊ฐ ๋ค์ด๊ฐ ์๋ค) ๋ณ์๋ฅผ ์กฐ์ํ๋ฉด์ null ์ธ์ง ์ฒดํฌํ ๋ ์ ์ฉํ๋ค HTML ํ์ผ script ํ๊ทธ์ ๋ณํ๋ index.js ๋ฅผ ์ ์ด์ ์ฐ๊ฒฐํด์ค๋ค. HTML ์ฐพ์ ๋ณ๊ฒฝํ๊ธฐ h4 ์ ๋ชฉ์ ๋ค๋ฅธ ๊ธ์๋ก ๋ณ๊ฒฝํ๋ ค๊ณ ํ๋ค. ์ ์ฝ๋์ฒ๋ผ ์ผ๋จ '์ ๋ชฉ' ์ด๋ผ๋ ๋ณ์์ document.querySelector ๋ฅผ ํตํด title ์ด๋ผ๋ id ๋ฅผ ๊ฐ์ง object ๋ฅผ ๊ฐ์ ธ์จ ํ, narrowing ์ ํตํด null ์ด ์๋์ง ์ฒดํฌํ์ null ์ด ์๋๋ผ๋ฉด ์ ๋ชฉ.innerHTML ์ '๋ฐ๊ฐ์' ๋ก ๋ฐ๊ฟ์คฌ..
Develop/TypeScript
2023.09.17
ํจ์ type ์ ์ ์ฅํ๊ธฐ ํจ์์ ๋ค์ด๊ฐ ํ๋ผ๋ฏธํฐ์ return ๊ฐ์ ํ์
๋ค๋ ์ง์ ํ ์ ์๋ค๊ณ ๋ฐฐ์ ๋๋ฐ, ์ด ํจ์์ ํ์
๋ type alias ๋ก ์ ์ฅํด์ ์ฌ์ฉํ ์๊ฐ ์๋ค. type NumOut = (x : number, y : number ) => number ; ์๋ ์์์ด๋ค NumOut ์ด๋ผ๋ ํ์
์ ๋ง๋ ๊ฑด๋ฐ, ์ด ํ์
์ ํจ์๋ฅผ ์ํ ํ์
์ด๋ค. number ํ์
์ x ์ number ํ์
์ y ๋ฅผ ํ๋ผ๋ฏธํฐ๋ก ๋ฐ์์ผํ๊ณ , return ๊ฐ์ด number ํ์
์ด์ด์ผํ๋ค๋ ์๋ฏธ์ด๋ค. ๊ทธ๋์ ์ด NumOut ์ด๋ผ๋ type alias ๋ฅผ ํจ์์ ์ง์ ์ฌ์ฉํด๋ณด๋ ์์๋ ์๋์ ๊ฐ๋ค type NumOut = (x : number, y : number ) => number let ABC :NumOut = fu..
Develop/TypeScript
2023.09.17
์ง๊ธ๊น์ง ์ด๋ค ๋ณ์์ ํ์
์ ์ง์ ํ๋ ๋ฐฉ๋ฒ์ ๋ํด์ ๋ฐฐ์์๋ค. ๊ทธ๋ฐ๋ฐ ์ด๋ค ๋ณ์์ '์ด๋ค ๊ฐ' ์ด ๋ค์ด๊ฐ๋๋ก ์์ ์ ํํ ์๋ ์๋ค. const ๋ฅผ ์ธ ์๋ ์๊ฒ ์ง๋ง, ๋ด๊ฐ ์ด๋ค ๋ณ์์ ๋ค์ด๊ฐ ์ ์๋ ๊ฐ์ 2~3๊ฐ ์ง์ ํ ์๋ ์๋ ๊ฒ์ด๋ค. ์ด๋ด ๋ Literal Type ์ ์ ์ธํ๋ฉด๋๋ค. Literal Type string, number... ๋ฟ ์๋๋ผ ์ผ๋ฐ ๊ฐ๋ ํ์
์ด ๋ ์ ์๋ค. let name :'ํ๊ธธ๋'; ์๋ฅผ ๋ค์ด์ ์์ฒ๋ผ name ์ด๋ผ๋ ๋ณ์์๋ 'ํ๊ธธ๋' ์ด๋ผ๋ ๊ธ์๋ง ๋ค์ด๊ฐ ์ ์๋ ๊ฒ์ด๋ค. ์ด๋ ๊ฒ ํน์ ๊ฐ๋ง ๊ฐ์ง ์ ์๊ฒ ์ ํ์ ๋ ์ ์๋ ํ์
์ literal type ์ด๋ผ๊ณ ํ๋ค. ๋ ์๊ฒฉํ๊ฒ ๋ง๋๋ ๊ฐ๋
์ด๋ค. ๊ผญ 1๊ฐ๊ฐ ์๋์ด๋ ๋๋ค. let name :'ํ๊ธธ๋'|'์๋ค์'; ..
Develop/TypeScript
2023.09.17
Type Aliases ํ์
์ ์๊ฐ ๋๋ฌด ๊ธธ๋ฉด ํ์
์ ๋ณ์์ ๋ด์์ ์ธ ์ ์๋ค. Type alias ๋ผ๊ณ ํ๋ค. ์ฌ๊ธฐ์ alias ๋ '๋ณ๋ช
' ์ด๋ผ๋ ์๋ฏธ์ด๋ค. let ๋๋ฌผ :string | number | undefined; ์๋ฅผ ๋ค์ด์ ์์ฒ๋ผ ๋๋ฌผ ์ด๋ผ๋ ํ์
์ด ๋ณต์กํ๋ฉด ์ด๊ฑธ ๋ฐ๋ก ๋นผ์ ๋ณ์์ ๋ด์์ธ ์ ์๋ค. type Animal = string | number | undefined; let ๋๋ฌผ :Animal; ์ด๋ ๊ฒ ๋ง์ด๋ค. ํ์
์ ๋ณ์์ฒ๋ผ ๋ง๋ค์ด ์ฐ๋ alias ๋ฌธ๋ฒ์ด๋ฉฐ, ๋๋ฌธ์๋ก ์ ๋๊ฒ ์ผ๋ฐ์ ์ด๋ค. object ํ์
์ ์ฅํ๊ธฐ type ์ฌ๋ = { name : string, age : number, } let teacher :์ฌ๋ = { name : 'john', age : 20 } ์์ฒ๋ผ ..
Develop/TypeScript
2023.09.16
function plusOne(x :number | string){ return x + 1 //์๋ฌ๋จ } ์์ ๊ฐ์ ํจ์๊ฐ ์๋ค๊ณ ๋ณด์ x ํ๋ผ๋ฏธํฐ๋ string | number ์ ๊ฐ์ union ํ์
์ธ๋ฐ ์ซ์ 1 ์ ๋ํ๊ธฐ์๋ x ๊ฐ string ์ธ์ง number ์ธ์ง ์ ๋งคํ๊ธฐ ๋๋ฌธ์ ์๋ฌ๋ฅผ ๋ด๊ฒ ๋๋ค. ๋ฐ๋ผ์ ์ด๋ด ๋ ํ์
์ ํ๋๋ก narrowing ํด์ฃผ๊ฑฐ๋ assert ํด์ฃผ๊ฑฐ๋ ํ๋ฉด ๋๋ค. narrowing ์ ๋ํด์ ๋จผ์ ์์๋ณด์ typeof ๋ฅผ ์ด์ฉํ Type Narrowing ํ์
narrowing ์ด๋ if ๋ฌธ์ผ๋ก ํ์
์ ํ๋๋ก ์ ํ๋ ๊ฒ์ ๋งํ๋ค. function plusOne(x :number | string){ if (typeof x === 'number') { return x + 1..
Develop/TypeScript
2023.09.16
์ฐธ๊ณ ๋ก ์์
๋ค์ผ๋ฉด์ ์๋ ์ฌ์ดํธ์ ide ๋ฅผ ์ด์ฉํด ์ฝ๋๋ฅผ ์์ฑํ๊ณ ์คํ์์ผ๋ณด๋ฉด์ ํ์ตํ์ต๋๋ค! https://www.typescriptlang.org/play TS Playground - An online editor for exploring TypeScript and JavaScript The Playground lets you write TypeScript or JavaScript online in a safe and sharable way. www.typescriptlang.org ํจ์๋ ๋ ๊ตฐ๋ฐ์ ํ์
์ง์ ์ด ๊ฐ๋ฅํ๋ค. ํ๋ผ๋ฏธํฐ return ๊ฐ function ํจ์(x :number) :number { return x * 2; } ๊ทธ๋์ ์์ฒ๋ผ x ๋ผ๋ ํ๋ผ๋ฏธํฐ๋ฅผ number ๋ผ๋ ํ์
์ผ๋ก ์ง..
Ambassador/Code it
2023.09.16
์ฝ๋์์ [์ข์ ์๊ณ ๋ฆฌ์ฆ์ด๋?] ๊ฐ์๋ฅผ ์๊ฐ ํ ํ์ตํ ๋ด์ฉ์ ์ ๋ฆฌํ ํฌ์คํ
์
๋๋ค. ์ ์ ๊ณผ์ ์๊ณ ๋ฆฌ์ฆ์ ์ ์ ์์
์ ๋ฃ๊ธฐ ์ํด์๋ ๊ธฐ๋ณธ์ ์ธ ํ์ด์ฌ ๋ฌธ๋ฒ๊ณผ ์ปดํจํฐ์ ์ฌ๊ณ ๋ ฅ์ ๊ฐ์ถ๊ณ ์์ด์ผ ํ๊ธฐ๋๋ฌธ์ ๋จผ์ ์ ์ ๊ณผ์ ๊ฐ ์ฃผ์ด์ก์ด์. ํ ๋ฆฐ๋๋กฌ์ธ์ง ๊ฒ์ฌํ๋ ํจ์๋ฅผ ๋ง๋๋ ๋ฌธ์ ์๋ค์! def is_palindrome(word): # ์ฌ๊ธฐ์ ์ฝ๋๋ฅผ ์์ฑํ์ธ์ # ํ
์คํธ ์ฝ๋ print(is_palindrome("racecar")) print(is_palindrome("stars")) print(is_palindrome("ํ ๋งํ ")) print(is_palindrome("kayak")) print(is_palindrome("hello")) ๋ฌธ์ ๋ ์์ ๊ฐ๊ณ , ์๋์ ๊ฐ์ด ๊ฒฐ๊ณผ๊ฐ ๋์์ผ ํ์ด์ True False Tru..
Ambassador/Code it
2023.09.12
์๋
ํ์ธ์ ์ค๋์ ์ฝ๋ฉ ๊ต์ก ์๋น์ค '์ฝ๋์' ์์ ์๊ฐํ ์ ์๋ ๋ฌด๋ฃ๊ฐ์๋ฅผ ์๊ฐํด๋ณผ๊นํ๋๋ฐ์. ์์ฆ ๊ฐ๋ฐ ๊ด๋ จ ๊ฐ์๋ฅผ ์จ๋ผ์ธ์ผ๋ก ์๊ฐํ์๋ ๋ถ๋ค์ด ๊ต์ฅํ ๋ง์๋ฐ์. ๊ฐ๋ฐ ๋์๋ฅผ ์ฝ์ผ๋ฉด์ ์๊ฐํ๋ ๋ฐฉ๋ฒ๋ ์์ง๋ง ์จ๋ผ์ธ ๊ฐ์๋ ์จ๋ผ์ธ ๊ฐ์๋ง์ ์ฅ์ ์ด ๋ง์ฃ . ๊ทธ๋์ ๊ทธ๋ฐ์ง ๋ฌด๋ฃ๋ก ์๊ฐํ ์ ์๋ ์จ๋ผ์ธ ๊ฐ์๋ฅผ ์ฐพ์ผ์๋ ๋ถ๋ค์ด ๋ง์ ๊ฒ ๊ฐ์์! ์ด ํฌ์คํ
์์๋ ์ฝ๋์ ์ฌ์ดํธ์ ์๊ฐํ ์ ์๋ ๋ํ ๋ฌด๋ฃ๊ฐ์ 3๊ฐ ์ ๋ ์๊ฐํด๋ณผ๊นํฉ๋๋ค. ์ฝ๋ฉ ๊ธฐ์ด ํ์! ํ๋ก๊ทธ๋๋ฐ ์ค๋ฒ๋ทฐ https://www.codeit.kr/paths/programming-overview ์ฝ๋ฉ ๊ธฐ์ด ํ์! ํ๋ก๊ทธ๋๋ฐ ์ค๋ฒ๋ทฐ - ๋ถ์ผ๋ณ ๊ฐ์ | ์ฝ๋์ ํ๋ก๊ทธ๋๋ฐ ์๋์ ๋ง๋ ์ธ์ฌ ๋๊ธฐ www.codeit.kr ์ด ๊ฐ์๋ ์ ๋ง ์ฝ๋ฉ์ด ์ฒ์์ด๋ผ ..
Finds & Notes
2023.09.08
๋์์ธ ๊ด๋ จ ํฌ์คํ
๋ค์ ๋๋ฌ๋ณด๋ ์ค ์ฌ๋ฏธ๋ ์ฌ์ดํธ๋ฅผ ๋ฐ๊ฒฌํ๋ค. ๋งํฌ๋ ์๋์ ๊ฐ๋ค. https://blush.design/collections/0bopA8Y5vn29mdFBU2Br/wavy-buddies-illustrations/character-avatar/nldaiXHq7BWq8PE5?c=Hair_0%7Efecb51-0.0.2.0%7E040226_Skin_0%7Edcad7f-0.0.2.0%7Edcad7f Wavy Buddies - Illustration by Susana Salas Check out this illustration on Blush. blush.design ๋ฐฐ๊ฒฝ์, ๋จธ๋ฆฌ์, ํผ๋ถ์, ํ์ , ๋จธ๋ฆฌ, ํฌ์ฆ ๋ฑ์ ์ ํํด์ ์๋ฐํ ์ผ๋ฌ์คํธ๋ฅผ ๋ง๋ค ์ ์๋ค. ๋ณด๋๊น ์๋ฐํ ๋ง๊ณ ๋ sitting,..
Review
2023.09.07
์ง๋ 8์ 29์ผ '๋ฒค์ฒ ์คํํธ์
์์นด๋ฐ๋ฏธ ํด์ปคํค'์ ์ฐธ์ฌํ๋ค. ์ฐธ์ฌ ํ๊ต ์ค์์ ๋ด๊ฐ ์๊ธฐ๋ก ๋ ํ์ ๋ ์ ์ฒญํด์ ์ฐธ์ฌํ๋๊ฑธ๋ก ์๊ณ ์๋ค. ๋์ ๊ฒฝ์ฐ ํ๊ต์ธก์์ ์ ์ฒญํ ๊ธฐํ๊ฐ ์ฃผ์ด์ ธ์(๊ณต์์ด ์๊ฒจ์) ๋ด๊ฐ ์ง์ ์ฃผ๋ณ ์ง์ธ๋ค๋ก ํ์ ๊พธ๋ ค ๋๊ฐ๊ฒ ๋ค๊ณ ์ ์ฒญํ๋ค. ์๋ด pdf ๋ฅผ ๋ณด๋๋ฐ ์์ ์ ํ์ ๊ธฐ์
์ ์๋ฅ ์ ํ ๋ฉด์ , ์ฝ๋ฉํ
์คํธ ๋ฉด์ ํํ์ด ์๊ธธ๋ ํน ํ๋ ๊ฒ๋ ์กฐ๊ธ ์์๋ค. ๊ธฐ๋ณธ ์ ๋ณด ๋ ์ง๋ 8์ 29์ผ๋ถํฐ 30์ผ๊น์ง์๋ค. ์ฅ์๊ฐ ๊ฐ๋จ์ญ ๋ถ๊ทผ์ด๋ผ ๋ถ๋ด์ด ์์ด์ ์ ๋ง์ด์ง ์ข์๊ณ ..! ๊ณต์ง๋ ๋์ค์ฝ๋๋ฅผ ํตํด ์งํ๋์๋ค. ์ฃผ์ ๋ ํฌ๊ฒ IT ๊ธฐ์
๊ณผ ๊ด๋ จ๋ ๊ฒ์ด๋ผ๊ณ ๋ง ๋์ค๊ณ ์ ์ผ ์ค์ํ ์ธ๋ถ ์ฃผ์ ๋ ๋น์ผ๋ ๊ณต๊ฐ๋์๋ค. ์
์ฅ ์์น๋ ๊ฐ๋จ์ญ ๋ถ๊ทผ์ ์์นํ '๋๋ฆผํ๋ฌ์ค ๊ฐ๋จ' ์ด์๋ค. ์์ค ์ ๋ง ๊นจ๋ํ๊ณ ํด์ปคํค์ ์ง์ค..
Ambassador/DEVOCEAN YOUNG
2023.09.07
์๋
ํ์ธ์. ๋ฐ๋ณด์
์ 2๊ธฐ ์๋ค์์
๋๋ค! ์ด๋ฒ 8์ ์๋ฐ์
์์๋ ๋ฐ๋ณด์
๋ง์คํฐ๋ถ๋ค์ ์์ฐฌ ๋ค๊ฐ์ง ์ธ์
์ ๋ค์ด๋ณผ ์ ์์์ต๋๋ค. ๊ฐ์ธ์ ์ผ๋ก ์ธ์ ๊น์๋ ๋ด์ฉ ์์ฃผ๋ก ์ธ๋ฏธ๋ ํ๊ธฐ ๋ฐ๋ก ์์ํ ๊ฒ์~! ์์ฆ PM์ ํจ๊ณผ์ ์ธ ํ๋ก์ ํธ ๊ด๋ฆฌ - ์ ์ฐฝ๊ตญ๋ ์ ๋ ์์ฆ PM ์ด๋ผ๋ ์ง๋ฌด์๋ ๊ด์ฌ์ด ๋ง์๋ฐ์. ํญ์ ๊ฐ์ด ํ๋ก์ ํธ๋ฅผ ์งํํ ๋ ๊ฐ์ด PM์ด๋ ํจ๊ป ์์
์ ํด์ ๋ ๊ด์ฌ์ด ๊ฐ๋ ๊ฒ ๊ฐ์์. ์ค์ ์ค๋ฌด์์ ์ด๋ป๊ฒ PM์ด ์งํํ๋ฉด ์ข์์ง์ ๋ํด์ ์ ์ ์์๋ ์ ์ตํ ์๊ฐ์ด์์ต๋๋ค. ์ ๋ต ์๋ฆฝํ๊ธฐ ์ฐฝ๊ตญ๋์ ์ฌ๋ฌ ์ ๋ต ์ค์์๋ 'ํต์ฌ ๋ชฉํ์ ์ง์คํ๊ธฐ' ๋ฅผ ์ ์ผ ์ค์ํ ์ ๋ต์ด๋ผ๊ณ ์๊ฐํ์
จ์ด์. ์๋๋ฉด ํ๋ก์ ํธ๋ฅผ ์ฒ์ ๋งก๊ฒ ๋๋ฉด ์งํ๋๊ณ ์๋ ํ๋ก์ ํธ์ ์ค๊ฐ์ ๋ค์ด๊ฐ๋ ๊ฒฝ์ฐ๋ ์๊ณค ํ๋ฐ, ์ด๋ด ๋ ํ๋ก์ ํธ ์ ์ฒด๋ฅผ ์ ๋ฐ์ ..
Ambassador/Code it
2023.09.05
๐ ๋ํ์ ์ฝ๋ฉ์บ ํ๋? ์ฝ๋์์์ ์ ๊ณตํ๋ ์ฝ๋ฉ์บ ํ๋ก, 4์ฃผ๋์ ํ๋ฃจ 10๋ถ! ์ํ๋ ๋ถ์ผ์ ์ฝ๋ฉ ๊ฐ์๋ฅผ ์๊ฐํ๊ณ ์ธ์ฆํ๋ฉด์ ๋งค์ผ ๊ณต๋ถํ๋ ์ต๊ด์ ๊ธฐ๋ฅผ ์ ์๋ ํ๋ก๊ทธ๋จ์ด์์. 100% ์จ๋ผ์ธ์ผ๋ก ์งํ๋ฉ๋๋ค. ๐ ์ฐธ์ฌ ๋ฐฉ๋ฒ ์ฝ๋ฉ ์บ ํผ๊ฐ ๋๋ฉด ์๊ฐ๊ธฐ๊ฐ์ 2๋ฐฐ๋ก ๋๋ฆด ์ ์์ด์. ์ด๋ ๊ฒ ๋๋ฉด ๋ ๋ฌ๋์ ๋ฌด์ ํ ๊ฐ์๋ฅผ ๋ค์ผ๋ฉฐ ํ์ตํ ์ ์์ด์ ! ๐ ์ฐธ์ฌ ํํ ๋ณด๋์ค ์๊ฐ ๊ธฐ๊ฐ ๊ธฐ์กด์ ์ฝ๋์ ๋ฉค๋ฒ์ญ์์ ๋ณด๋์ค ์๊ฐ๊ธฐ๊ฐ์ ์ต๋ 14์ผ ๋ฐ์ ์ ์์ด์ ํ๋ ๊ธฐ๊ฐ๋์ ๋ฏธ์
์ ์ฑ๊ณตํ๋ฉด ์ถ๊ฐ๋ก 14์ผ์ ๋ ์ค๋ค๊ณ ํ๋ค์! ํ๋ ์ธ์ฆ์ & ๊ฐ์ ์๋ฃ์ฆ ์ฝ๋์๋ง์ ์ธ์ฆ์์ ์๋ฃ์ฆ์ ์ ๊ณตํด์. ์ด๋ ฅ์ ๊ฟํ๋
ธํธ ์ฝ๋ฉ ์บ ํ์์ ๋ฐฐ์ด ๊ฒ๋ค์ ํ์ฉํ ์ ์๋๋ก ์ค๋ฌด์๋ค์ ๊ฟํ์ด ๋ด๊ธด ๋
ธํธ๋ฅผ ์ ๊ณตํด์ค์ ๋์งํธ ํ๋๋ & ์์ฝ๋ฉ ๋
ธํธ..
Ambassador/Code it
2023.09.05
์๋
ํ์ธ์ ์ค๋์ ์ฝ๋ฉ ๊ต์ก ์๋น์ค '์ฝ๋์'์ ๋ํด์ ์๊ฐํด๋ณผ๊นํ๋๋ฐ์. ์ฝ๋์, ์ด๋ฏธ ์ ๋ช
ํด์ ์์ค ๋ถ๋ค์ ๋ง์ด๋ค ์๊ณ ๊ณ์ค๊ฑฐ๋ผ ์๊ฐํด์! ๐ ์์ฆ ์ฝ๋ฉ ๊ต์ก ์๋น์ค๊ฐ ์ ๋ง ๋ง์ด ๋์ด๋๊ณ ์๋ ๊ฒ ๊ฐ์์. ์ ๋ ์ ์
์ ๋ ์ปดํจํฐ๊ณตํ๋ถ์ ์
ํํ๊ณ , ์ธํฐ๋ท ๊ฐ์๋ฅผ ํตํด์ ์ฝ๋ฉ์ ํ์ตํ๋๊ฒ ํจ์จ์ ์ด๊ณ ๋ฌด์๋ณด๋ค ์ฌ๋ฐ๋ค๋ ๊ฑธ ์๊ฒ๋๋ฉด์ ์ฝ๋ฉ ๊ต์ก ์๋น์ค๋ฅผ ์ ๋ง ๋ง์ด ์ฐพ์๋ค๋
๋ ๊ฒ ๊ฐ์์! ์ ๋ ์ฌ์ค ์ค๊ณ ๋ฑํ์ ๋๋ถํฐ ํ๋ก๊ทธ๋๋ฐ์ ํด์ค์ ๋ถ๋ค๊ณผ๋ ๋ฌ๋ฆฌ ๋ํ๊ต์ ์
ํํ๊ณ ์ฒ์ ์ฝ๋ฉ์ด๋ผ๋ ๊ฑธ ์ ํ์๋๋ฐ์. ์ ์
์ ๋ ๊ฐ๋ฐ๋์๋ฆฌ์ ๋ค์ด๊ฐ์, ์ ๋ฐฐ๋ค์๊ฒ ์น ํ๋ก๊ทธ๋๋ฐ์ ๋ํด์ ์ฒ์์ผ๋ก ๋ฐฐ์๋ณด๋ฉด์ ์ง์ ์น์ฌ์ดํธ๋ฅผ ์ฝ๋ฉํ๋๊ฒ ๋๋ฌด ์ ๊ธฐํด์ ์ฌ๋ฏธ๋ฅผ ๋ถ์ด๊ฒ ๋ ์ผ์ด์ค ๊ฐ์์. โฌ๏ธ 1ํ๋
๋ ํ์ด๋ ์ฒ์์ผ๋ก ๋ง๋ค์ด๋ณธ ์นํ์ด์ง..
Review
2023.09.04
์ง๋ 7, 8์์ '์์ธ์์ฐ๋จผํ
ํฌํด์ปคํค' ์ด๋ผ๋ ํด์ปคํค์ ์ฐธ์ฌํ์๋ค. ๋จํก๋ฐฉ์ ๊ณต์ ๊ฐ ๋๊ธธ๋ ํฅ๋ฏธ๊ฐ ์๊ฒจ์ ๊ฐ์ธ์ผ๋ก ์ง์์ ํด๋ณด์๋ค. ์ด์ฐจํผ ํ๋งค์นญ์ ์๋์ผ๋ก ํด์ค๋ค๊ณ ํ๋๋ผ! ์ฃผ์ ๋ ์ด๋ฏธ ๋์์์๊ณ , ๊ณต๋ชจ ๋ถ์ผ๋ฅผ ๋ฐ๋ก ์ง์์์ ์์ฑํด์ ๊ทธ ๊ณต๋ชจ ๋ถ์ผ๋ฅผ ๊ธฐ์ค์ผ๋ก ํ๋งค์นญ์ ํด์ฃผ๋ ์์ด์๋ค. ์๋ฅผ ๋ค์ด ๋ด๊ฐ ๊ฐ๋ฐ(ํ๋ก ํธ)์ '์์ด ํค์ฐ๊ธฐ ์ข์ ๋์' ๋ผ๋ ์ฃผ์ ๋ก ์ง์์ ํ๋ค๋ฉด '์์ด ํค์ฐ๊ธฐ ์ข์ ๋์' ์ฃผ์ ๋ฅผ ์ ํํ ๋ค๋ฅธ ๊ธฐํ, ๋์์ธ, ๋ฐฑ์๋ ๋ถ๋ค๊ณผ ํ๋งค์นญ์ด ๋๋ ์์ด๋ค. 4๊ฐ ๊ณต๋ชจ ๋ถ์ผ ์ค์์ ํ๊ฐ์ง๋ฅผ ์ ํํ๋ฉด ๋์๊ณ ์ ์ฒญ์์๋ ์ฐธ์ฌ ๋๊ธฐ, ๊ณํ, ์ฐธ์ฌ๋ชฉํ, ์์ด๋์ด ๊ตฌ์ฒดํ ๊ณํ์ ์์ฑํด์ ๋ด๋ฉด ๋๋ค. ์์ด๋์ด ๊ตฌ์ฒดํ ๊ณํ์ ๊ณต๋ชจ ๋ถ์ผ ์ค์์ ํ๋๋ฅผ ์ ํํด ์์ ์ ์์ด๋์ด๋ฅผ ์ ์ด์ ๋ด๋ ๊ฒ์ด๋ค. ๊ทผ๋ฐ ์ด..
Develop/React.js
2023.08.11
์ด๋ฒ ํ๋ก์ ํธ ๋ก๊ทธ์ธ ๋ถ๋ถ์ ๋ด๊ฐ ๋ด๋นํ๊ฒ ๋๋๋ฐ, ๋ก๊ทธ์ธ ๋ฐฉ์ ์ค์์ ์นด์นด์ค ๋ก๊ทธ์ธ์ ๊ตฌํํ๊ฒ ๋๋ค. ๋ฆฌ์กํธ ์นด์นด์ค ๋ก๊ทธ์ธ์ ๊ด๋ จํด์ ์ ๋ฆฌ๋ ๊ธ๋ค์ด ๋ง์ ๊ฐ๋ฐํ ๋ ์ฐธ๊ณ ํ๋ฉด์ ์งํํ ์ ์์๋ค. ํ์ง๋ง ๊น๋จน์ง ์๊ณ ์ ํ๋ฒ ์ ๋ฆฌํ๋ ค ํฌ์คํ
ํด๋ณธ๋ค. ๋ฐฉ์ ํ๋ก ํธ์๋์ ๋ฐฑ์๋๊ฐ ํ์
ํ๋ฉด์ ์นด์นด์ค ๋ก๊ทธ์ธ์ ๊ตฌํํ๋ ๋ฐฉ์์ด ๋ค๋ฅผ ์ ์๋ค. ๋๋ ์ด๋ฐ ๋ฐฉ์์ผ๋ก ํ๋ค- ๋ผ๋ ์ ๋๋ก ์ฐธ๊ณ ํ์๋ฉด ์ข์ ๊ฒ ๊ฐ๋ค. ๋๋ ํ๋ก ํธ์๋ ๋ด๋น์ด์ด์ ํ๋ก ํธ์๋ ์
์ฅ์์ ์์ ํด๋ณด๋ ค๊ณ ํ๋ค. ํ๋ก ํธ์๋์์ ์นด์นด์ค ๋ก๊ทธ์ธ ์์ฒญ / ์ธ๊ฐ ์ฝ๋ ๋ฐ๊ธฐ ์์ฒญ์ ํ๋ค ์นด์นด์ค์์ redirect url ๋ก ์ธ๊ฐ์ฝ๋๋ฅผ ํ๋ก ํธ์๋๋ก ๋ณด๋ด์ค๋ค. ๋ฐ์ ์ธ๊ฐ์ฝ๋๋ฅผ ๋ฐฑ์๋์๊ฒ ๋ณด๋ธ๋ค. ๋ฐฑ์๋๋ ์ด ์ธ๊ฐ์ฝ๋๋ฅผ ๋ฐ์ ์ฒ๋ฆฌํด์ AccessToken ์ ์๋ต์ผ๋ก ํ๋ก ..
Develop/React.js
2023.08.11
๋ก๊ทธ์ธ ์ฌ๋ถ์ ๋ฐ๋ผ์ ์ ์ํ ์ ์๋ ํ์ด์ง๋ฅผ ์ ํํ๋ ๋ฐฉ๋ฒ์ ๋ํด์ ํฌ์คํ
ํด๋ณด๋ คํ๋ค. ๋ ๊ฐ์ ๊ฒฝ์ฐ์๋ '/' ๊ฒฝ๋ก๋ ํ ํ์ด์ง ์ฌ์ ๋ก๊ทธ์ธ์ ํด๋, ์ํด๋ ์ ๊ทผ์ด ๊ฐ๋ฅํด์ผํ๊ณ ๊ทธ ์ธ์ ๋๋จธ์ง ํ์ด์ง๋ค์ isLogin ์ํ๊ฐ true ์ผ ๊ฒฝ์ฐ์๋ง ์ ๊ทผ๊ฐ๋ฅํ๋๋ก ๊ตฌํํ๊ณ ์ถ์๋ค. ์ ์ฒด ์ฝ๋๋ถํฐ ๋ณด์ ... import { userInfoState } from "./recoil/atoms/userState"; import { useRecoilState } from "recoil"; function App() { const [userInfo] = useRecoilState(userInfoState); const isLogin = userInfo.isLogin; return ( {isLogin ? ( ) : ..
Develop/React.js
2023.08.11
๋ฌธ์ ํ๋ก์ ํธ๋ฅผ ๊ฐ๋ฐํ๋ฉด์ ์ด๋ ๊ฒ ์ฌ๋ฌ๊ฐ์ ์ด๋ฏธ์ง ์ฌ๋ผ์ด๋๋ฅผ ๊ตฌํํ ์ผ์ด ์๊ฒผ๋ค. (๋ฐฑ์๋๋ ์ฐ๋ํ๊ธฐ์ ์ด๋ผ ์์ ๋ฐ์ดํฐ๋ฅผ ๋ฃ๊ณ ํ
์คํธํ๊ณ ์์๋ค.) ํ๋ฒ์ 5๊ฐ๊น์ง ๋ณด์ฌ์ค ์ ์๋๋ก ์ค์ ํ๊ณ ๋ฐ์ดํฐ๋ฅผ 8~9๊ฐ ์ ๋ ๋ฃ์ด๋๊ณ ํ
์คํธ๋ฅผ ํ๊ณ ์์๋ค. ์ด๋ settings ๋ ๋ค์๊ณผ ๊ฐ์๋ค. const settings = { dots: false, infinite: true, speed: 500, slidesToShow: 5, slidesToScroll: 3, arrows: true, // autoplay: true, }; ๊ทผ๋ฐ ์์ ๋ฐ์ดํฐ๋ฅผ 2๊ฐ๋ก ์ค์ด๊ณ ํ
์คํธํ๋ ๋ค์๊ณผ ๊ฐ์ด ์ด์ํ๊ฒ ์ค๋ณต๋์ด ๋์จ๋ค. ํด๊ฒฐ ๊ตฌ๊ธ๋ง์ ํด๋ณด๋๊น ๋๊ฐ์ ๋ฌธ์ ๋ฅผ ๊ฒช๋ ์ฌ๋๋ค์ด ์๋ ๊ฒ ๊ฐ์ ๋ณด์๋ค. react-slick ๋ ํฌ์งํฐ๋ฆฌ..
Develop/React.js
2023.08.10
๋ฌธ์ axios ๋ก post ์์ฒญ์ ๋ณด๋ด๋๋ฐ ์๊พธ api ํธ์ถ์ ๋๋ฒํ๋ ๋ฌธ์ ๊ฐ ์๊ฒผ๋ค. ๋ค๋ฅธ api ๋ฉด ๋ชจ๋ฅด๊ฒ ์ง๋ง ๋ด๊ฐ ์ฌ์ฉํ๋ api ๋ ๋๋ฒ ํธ์ถํ๋ฉด ์ค๋ณต๋ code ์ฌ์ ์ ํจํ code ๋ก ๋์ํ์ง ์์๊ธฐ ๋๋ฌธ์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํด์ผํ๋ค. ํด๊ฒฐ ๊ตฌ๊ธ๋ง์ ํ๋ค๋ณด๋ src/index.js ์์ React.StrictMode ๋ฅผ ์ง์๋ณด๋ผ๋ ๋ง์ ๋ฐ๋ผํ๋๋ ์ค๋ณต ํธ์ถ์ ๋ง์ ์ ์์๋ค.
Develop/React.js
2023.08.10
๊ฐ๋ฐ์ ํ๋ค๊ฐ ๋ ์ง๋ฅผ ์ ํํ๋ ๊ธฐ๋ฅ์ ๊ตฌํํ ์ผ์ด ์๊ฒผ๋ค. ์ด๋ค๊ฑธ ์ธ๊น ์ฐพ์๋ณด๋๋ฐ react-datepicker ๋ผ๋ ๊ฒ ์์๋ค. ๊ทผ๋ฐ... ์ข ๋ชป์๊ฒผ๋ค? ๋ฌผ๋ก ์ปค์คํ
์ ํ ์๋ ์์ง๋ง ์ง๊ธ ๋น์ฅ์ ์ปค์คํ
์์ด๋ ์ข ๋ ์์๊ฑธ ์ฌ์ฉํ๊ณ ์ถ์๋ค. ๊ทธ๋ฌ๋ค mui x ๋ผ๋ ๊ฑธ ์ฐพ์๋ค. https://mui.com/x/react-date-pickers/date-picker/ React Date Picker component - MUI X The Date Picker component lets the user select a date. mui.com ๋์ถฉ ์ด๋ฐ์์ผ๋ก ์๊ฒผ๋ค. ์ค์น npm install @mui/x-date-pickers // Install date library (if not already ins..
Ambassador/DEVOCEAN YOUNG
2023.08.06
์๋
ํ์ธ์. ๋ฐ๋ณด์
์ 2๊ธฐ ์๋ค์์
๋๋ค! ๋ฐ๋ณด์
์์ ํ๋ ์ค ํ๋๋ ๋ฐ๋ก ์๋ค๊ณผ ํจ๊ปํ๋ ๋ฐ์
! ์ธ๋ฐ์. ํ๋ฌ์ ํ๋ฒ์ฉ ์จ๋ผ์ธ์ผ๋ก ๋ง๋ ์ธ๋ฏธ๋๋ฅผ ๋ฃ๊ณ ํ์ง์๋ถ๋ค๊ณผ Q&A๋ฅผ ํ ์ ์๋ ์๊ฐ์ ๊ฐ์ง๋ต๋๋ค. ํ์ง๋ง ์ด๋ฒ 7์ ๋ฐ์
์ ๋ฐ๋ณด์
์์ ์ง์ธ๋ค๋ ์ฐธ์ฌํ ์ ์๋ ๋ฐ์
์ด์์ด์! ์ฃผ๋ณ ์ง์ธ๋ค์๊ฒ ๋ฐ์
๊ด๋ จํด์ ๊ณต์ ํด์ฃผ๋๊น ๋ค๋ค ์ข์ํ์๋๋ผ๊ตฌ์๐ฅน ์ด๋ฒ 7์ ๋ฐ์
๋ฐํ๋ ๋ค์๊ณผ ๊ฐ์๋๋ฐ์~ 1. ์์
๋งจ ์๋๋ฆฌ๋ ์ด๋ป๊ฒ ๋ฐ๋ณด์
์ ๋ฌธ๊ฐ๊ฐ ๋์์๊น? (์ํ์
๋) 2. ๊ฐ๋ฐ์์ ์ฑ์ฅ๊ณผ ์คํ์์ค, ๊ทธ๋ฆฌ๊ณ ์ปค๋ฎค๋ํฐ (๋ฐ์ ํ๋) 3. ์ปด๊ณต ํ๋ฐฐ๋ค์ด 3~4ํ๋
๋ ๊ฐ์ฅ ๋ง์ด ํ๋ ์ง๋ฌธ Top 10 (๊นํ์ฑ๋) 4. ์์ํ ์ทจ์
์ค๋น ๊ณผ์ ๊ณผ ํ (์ฌ์ฌํ๋) ๋ํ์๋ค์ด ๋ค๋ค ๊ถ๊ธํดํ๊ณ ๊ด์ฌ๊ฐ์ง๋งํ ๋ด์ฉ์ด์ฃ ? ์ ๋ง ๋ฐ๋ณด์
์ ๋ฐ๋ณด์
์..
Ambassador/DEVOCEAN YOUNG
2023.08.06
์๋
ํ์ธ์. ๋ฐ๋ณด์
์ 2๊ธฐ ์๋ค์์
๋๋ค! ์ค๋์ SKT Tํ์์์ ์งํ๋ ํฐ์ ํฌ์ด ์ฒดํ๊ณผ SKT ๋ณธ์ฌ๋ฅผ ๋ฐฉ๋ฌธํด๋ณธ ํ๊ธฐ๋ฅผ ํฌ์คํ
ํด๋ณผ๊นํฉ๋๋ค.์ ๋ ๋ฐ๋ณด์
์ ํ๋์ ์ผํ์ผ๋ก ํฐ์ํฌ์ด๋ฅผ ์งํํ๊ฒ ๋์๋๋ฐ์.์ง์ ์ฌ์ดํธ์์ ์์ฝํ๊ณ ๋ฐฉ๋ฌธํ ์๋ ์์ด์. ์์ฝํ ์ ์๋ ์ฌ์ดํธ๋ ์๋ ๋งํฌ๋ฅผ ์ฐธ๊ณ ํด์ฃผ์ธ์!https://tum.sktelecom.com/reservation/registReservation.do ๋ฏธ๋๊ธฐ์ ์ฒดํ๊ด T.um(ํฐ์)SKํ
๋ ์ฝค ๋ฏธ๋๊ธฐ์ ์ฒดํ๊ด, ์์ค ์๋ด, ๋ฐฉ๋ฌธ์์ฝ, ์ ์๊ด ์ ๋ณด, ์ฒดํ ์๋น์ค ๋ฑ ์ ๊ณต.tum.sktelecom.comํฌ์ด ์ ํ์๋ ์ ํ๋ธ ๋ผ์ด๋ธ ํฌ์ด์ ํ์ฅ ํฌ์ด๊ฐ ์๋๋ฐ ํ์ฅ ํฌ์ด๋ฅผ ์ ํํด์ฃผ์๋ฉด ๋ ๊ฒ ๊ฐ์์. ๋จผ์ ์์ง๋ก์ ์๋ SKT Tํ์์ ๋์ฐฉ์ ํ์ด์.๋ฐ๋ณด์
์๋ด๋น์๋..