타입스크립트로 전환
- 자바스크립트용 타입스크립트 컴파일러 사용
//tsconfig.json파일을 통해 컴파일러 설정 세팅{ "complierOptions":{ "allowJs":true "checkJs":false //자바스크립트 파일에 대한 타입 체크 "outDir":"./Dist" "rootDir":"./src" "strict":false } }
export interface DealState {
dealInfo:object,
orderInfo:Array<string | number | Object>,
orderNum:number
}
// interface => 타입을 정의한 규칙
- html에서 바로 react 경험하기 // head부분에 아래 코드 추가
<!-- react사용을 위해 반드시 필요한 것 --> <script crossorigin src="https://unpkg.com/react@17/umd/react.development.js"></script> <script crossorigin src="https://unpkg.com/react-dom@17/umd/react-dom.development.js"></script> <!-- 리엑트에서 자바스크립트 문법 사용을 가능하게 해주는 자바스크립트 컴파일러 jsx문법 사용 가능. --> <script src="https://unpkg.com/@babel/standalone/babel.min.js"></script>
react 공식 문서
https://ko.reactjs.org/docs/introducing-jsx.html
react 참고 공식 git
https://github.com/ustwo/ustwo.com-frontend/tree/master/src/app/components
babel 관련 개념 참고 블로그
https://ljs0705.medium.com/babel-%EC%9D%B4%ED%95%B4%ED%95%98%EA%B8%B0-a1d0e6bd021a
// 리엑트의 SSR을 쉽게 구현할 수 있게 함. (리엑트 자체로도 SSR 구현을 하는 것이 가능은 함)
서버사이드렌더링 ( SSR : Server Side Rendering )
: 페이지가 전환될 때마다 새로운 페이지 전체를 렌더링 / 페이지 요청시마다 페이지 새로고침 발생 -> 페이지가 전환될 때 화면이 깜빡거림
- 검색엔진 최적화 ( SEO )
- 최초 페이지 렌더링을 빠름.
- 서버에서 미리 html 페이지를 그려서 브라우저로 보내줌.
=> 컴포넌트가 최초로 생성되는 시점이 브라우저가 아닌 node.js환경임.
클라이언트사이드렌더링 ( CSR : Client Side Rendering )
: 처음 렌더링된 한 페이지에서 사용자의 필요에 따라 부분적으로 필요한 부분만 새롭게 렌더링됨.
- 검색엔진 최적화 어려움
- 최초 렌더링 오래걸림 --> 사용자 이탈 가능성 커짐
// 최초 페이지 렌더링시 필요한 모든 데이터를 모두 불러옴.- 페이지 전환이 빠르고 자연스러움.
- 빈 html 페이지를 받아 브라우저를 그려줌.
검색엔진최적화 ( SEO : Search Engine Optimiztion )
: 구글 네이버 등에서 검색시에 사용자에게 본인의 사이트가 가능한 많이 노출될 수 있도록 하는 것.
-- Next.js 를 사용하는 가장 큰 이유 중 하나.
검색 엔진 작동원리
: 검색엔진은 사이트의 데이터 검색시에 HTML파일을 통해 데이터를 검색
-- CSR은 사용자가 페이지에 들어와 해당 페이지를 요청하기 이전까지 데이터가 없는 빈 페이지 상태이므로 검색 엔진에 노출되기 어려움.
-- SSR은 브라우저에서 이미 서버에서 페이지를 그려서 전달하기 때문에 HTML페이지는 검색을 위해 요구되는 데이터를 이미 담고있음.
HMR ( Hot Module Replacement )
: webpack이 제공하는 유용한 기능
: 브라우저의 새로고침 없이 빌드한 결과물이 실시간으로 반영될 수 있도록 하는 것.
// 나중에 공부해볼 것
검색엔진관련 참고 블로그
https://ivorycode.tistory.com/entry/Nextjs%EB%A5%BC-%EC%82%AC%EC%9A%A9%ED%95%98%EB%8A%94-%EC%9D%B4%EC%9C%A0
서버사이드렌더링 참고 블로그
https://joshua1988.github.io/vue-camp/nuxt/ssr.html#%E1%84%89%E1%85%A5%E1%84%87%E1%85%A5-%E1%84%89%E1%85%A1%E1%84%8B%E1%85%B5%E1%84%83%E1%85%B3-%E1%84%85%E1%85%A6%E1%86%AB%E1%84%83%E1%85%A5%E1%84%85%E1%85%B5%E1%86%BC%E1%84%8B%E1%85%B3%E1%86%AF-%E1%84%8B%E1%85%AB-%E1%84%8A%E1%85%B3%E1%86%AF%E1%84%81%E1%85%A1
서버사이드렌더링 관련 참고 블로그
https://velog.io/@ash3767/%EC%84%9C%EB%B2%84%EC%82%AC%EC%9D%B4%EB%93%9C-%EB%A0%8C%EB%8D%94%EB%A7%81-%ED%81%B4%EB%9D%BC%EC%9D%B4%EC%96%B8%ED%8A%B8-%EC%82%AC%EC%9D%B4%EB%93%9C-%EB%A0%8C%EB%8D%94%EB%A7%81
: 각 토큰 단위가 동일한 가치를 지니며 호환이 가능한 토큰
: 고유한 가치를 지니고 있어 토큰 간의 호환이 불가능한 토큰
NFT
- 블록체인 기술을 활용하여 고유한 해쉬값 부여하여, 디지털 소유권을 보장하고 거래 증명을 가능케 함.
- 실물 자산과 예술품 사치품 수집품의 토큰화에 활용됨
- NFT를 생성하는 다양한 프레임워크 존재 ex) ERC-721 / kip-17
- KIP-17은 카카오의 계열의 그라운드X에서 자체 개발된 NFT표준.
kip-17 참고 사이트
https://support.klaytnapi.com/hc/ko/articles/4403232605711-KCT-KIP-7-KIP-17-%EC%9D%80-%EB%AC%B4%EC%97%87%EC%9D%B8%EA%B0%80%EC%9A%94-
NFT 관련 참고 사이트
https://brunch.co.kr/@techmmedia/541
클레이튼과 트러플을 활용하여 나만의 NFT만들기 참고 사이트
https://ichi.pro/ko/klaytneseo-truffleeul-sayonghayeo-jasinman-ui-nftleul-mandeuneun-bangbeob-209666543079665
caver.js관련 클레이튼 공식문서 사이트
https://ko.docs.klaytn.com/bapp/sdk/caver-js
caver.js github
https://github.com/klaytn/caver-js
아마존 s3 공식 사이트
https://docs.aws.amazon.com/ko_kr/AmazonS3/latest/userguide/Welcome.html
s3 관련 참고 블로그
https://usefultoknow.tistory.com/entry/Amazon-S3%EB%9E%80-%EB%AC%B4%EC%97%87%EC%9D%BC%EA%B9%8C