이번에 진행하는 맛집 프로젝트는 기존 프로젝트와 다르게 yaml 파일을 사용하지않고 ConfigModule을 사용해 .env 파일에서 환경변수를 사용하게 되었다. app.module.ts에 미리 세팅해주신 덕분에 가져다 사용하기만하면 되고 isGlobal: true,
통계 API를 개발하던중 난관에 부딪히게 되었다. 여러가지 파라미터 조건들 중에 조회 시작일과 조회 종료일이 있는데 조회시작일: 2023-10-15, 조회 종료일: 2023-10-22 인 경우 게시글 작성일이 2023-10-15 ~ 2023-10-22 사이이며 파라미터
통계 데이터를 받는 api 작성중 typeorm으로 쿼리문을 작성할 일이 생겼다. 평소에 typeorm으로 객체에 매핑하는것에 익숙치 않던 난 연슴겸 많이 사용하는 repository.find({}) 형식으로 코드를 작성 예정이었다. 기존 쿼리문인 Raw Query
B Tree는 자식 노드의 개수가 최대 2개인 이진트리(Binary Tree)를 보완하고자 나온 자식의 개수가 2개 이상인 트리이다. B tree는 최대 M개의 자식을 가질 수 있고 이진트리와 달리 하나의 노드의 여러가지 key값을 가질 수 있으며 최대 M-1개의 ke
JWT 기능을 구현하면서 인증과 인가에 대해 공부했다. > authentication(인증) : 로그인을 하는 것(로그인을해서 토큰을 받아오는 과정) authorization(인가) : 로그인한 후, 로그인이 필요한 서비스들을 사용할 때 해당 유저임을 확인하는 것(리소
cors란 Cross-Origin-Resource-Sharing의 약자입니다. 직역해보면 교차 출처 리소스 공유 정책인데 이는 서로 다른 출처(Origin)를 가진 주소로 요청이 들어왔을 때 발생할 수 있는 에러입니다. 출처란 우리가 어떤 사이트를 접속할 때 URL을
Express는 웹 및 모바일 애플리케이션을 위한 일련의 강력한 기능을 제공하는 간결하고 유연한 Node.js 웹 애플리케이션 프레임워크입니다.많은 node.js 개발자들이 웹 서버를 만들 때 선택하는 프레임워크이죠. 각 종 라이브러리와 미들웨어가 내장돼어 있어 개발하
REST(Representational State Transfer)의 약자로 자원을 이름으로 구분하여 해당 자원의 상태를 주고받는 모든 것을 의미합니다. HTTP URI(Uniform Resource Identifier)를 통해 자원(Resource)을 명시하고, HT
ORM이란 Object-Relation-Mapping의 약자이다. 즉, 객체와 데이터베이스 매핑입니다. 우리가 프로그래밍에서 사용하는 객체(OOP-Object Oriented Programming)의 개념과 RDB(Relational Database)에서 사용하는 테이
Node.js®는 Chrome V8 JavaScript 엔진으로 빌드된 JavaScript 런타임입니다.node.js 공식 홈페이지에 나와있는 소개글이다. 기존 웹 어플리케이션을 만들기 위해선 브라우저 상에서 Javascript 언어를 사용해 만들었다.Javascrip
(이미지 출처 : https://story.pxd.co.kr/1632)Blockchain이란 Block + chain, 문자 그대로 블록이 체인처럼 연결되어 있는 것을 의미한다.그렇다면 이 블록들은 어떤 구조로 되어있을까?크게 두가지로 나눌수 있다. 블록 헤더
what is Blockchain? 블록체인이란 무엇일까? 블록체인을 설명하려면 수 페이지가 넘겠지만 최대한 간략하게 한 문장으로 설명하라고 하면 >탈중앙화된 네트워크에서 작동하는 분산원장 기술 이라고 설명 할 것이다. 블록체인은 다음과 같은 7가지 특징을 가지
오픈 제플린의 ERC-20을 이용하여 간단한 스왑을 만들었다.토큰의 교환비가 결정되도록 하는 알고리즘인 많은 AMM(Auto Market Maker)중에 가장 간단한 CSMM(Constant Sum Market Maker)으로 만들었다. CSMM은 다음과 같은 공식을
오픈제플린을 이용해 erc20토큰을 초간단하게 발행후 하드헷으로 다른 지갑으로 보내보는 아주아주 간단한 실습https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/token/ER
새 폴더 생성 후폴더 구성|artifacts //abi생성되는 폴더|cache|contracts //A.sol|node_modules|scripts //deploy.js|hardhat.config.js|package-lock.json|package.jsoncontra
앞에 두개는 베포된게 아님 (주소값만 나옴)이더리움에서 논스는 거래를 일으킨 숫자거래가 0이라서 처음두번은 주소만드는 환경값이 똑같으니까 주소값이 같게 나옴로컬에서 베포할떄는 거래가 추가되면서 다른값이 나옴기본적으로 하드헷은 알케미, 이더스를 사용하드헷은 자체적으로 v
truffle과 비슷하다는 hardhat 간단히 실습 hardhat은 verify를 자체적으로 할수있는 특징이 있다.베포나 관리면에서는 Remix보다 truffle, hardhat을 많이 쓴다고 한다.후 solidity 파일을 만든다.간단한 테스트 이므로 정도로만 만든
A.sol, B.sol 작성 후 C.sol작성이때 constructor에 들어갈 두 주소는 Deploy용 js파일에서 작성한다.3_C_sol.js먼저 A, B를 Deploy한후 C를 Migrate하면 된다. 그럼 A, B만 Migrate하는 방법은truffle migr
Remix에서만 solidity를 진행 하다가 드디어 truffle을 시작하게 되었다.Truffle은 스마트 컨트랙트 개발, 컴파일, 배포 그리고 테스팅을 쉽게 할 수 있도록 도와주는 프레임워크입니다. 실습 시작전 체크사항 Node.jsTrufflevsCodeGanac
실습 시작node 환경으로 이동web3.js이기 때문에 javascript문법이다. 터미널에서 쓰려니까 조금 어색함함수를 지정해서 쓸수있음getBalance()는 web3.eth.getBalance함수(잔액 조회 함수)를 더 간편하게 쓰려고 내가 지정한 함수.web3.