블록체인 기반 핀테크 및 응용 SW 개발

    [Solidity] 3. 이더리움 토큰에 기능 넣고 실험해보기

    [Solidity] 3. 이더리움 토큰에 기능 넣고 실험해보기

    우분투에서 ganache-cli 를 입력하면 100이더가 들어있는 계정 10개가 뜬다. 메타마스크에서 네트워크를 로컬호스트로 바꿔주고 비공개 키로 계정을 2개 갖고오자. 그리고 truffle migrate로 생성되었던 contract address로 토큰을 추가하면 하나에는 2100만개의 토큰이, 나머지에는 0개의 토큰이 생긴다. 나는 프로젝트를 위해 이전 포스팅에서와 다른 토큰을 새로 생성해서 했다. 이제 token.sol파일의 내용을 수정해준다. 나는 코인을 새로 발행하는 mint와 발행된 코인을 태우는 burn 기능을 사용해볼 것이다. // SPDX-License-Identifier: MIT pragma solidity ^0.8.0; import '@openzeppelin/contracts/acce..

    [Solidity] 2. 만든 토큰을 ropsten testnet에 발행하기

    [Solidity] 2. 만든 토큰을 ropsten testnet에 발행하기

    https://coding-maggot.tistory.com/28 [Solidity] 1. 우분투에서 이더리움 토큰 만들고 MetaMask로 배포해보기 수업에서는 우분투 20.04 LTS, WSL과 편의를 위해 visual studio code를 사용했다. 초기 설치 필요 : node.js(14.x), truffle, ganache-cli (설치 방법은 추후 추가 예정) 우분투를 켜고 작업할 곳에 다음을 입력.. coding-maggot.tistory.com 에서 이어집니다. https://infura.io/ Ethereum API | IPFS API & Gateway | ETH Nodes as a Service | Infura Infura's development suite provides instan..

    [Solidity] 1. 우분투에서 이더리움 토큰 만들고 MetaMask로 배포해보기

    [Solidity] 1. 우분투에서 이더리움 토큰 만들고 MetaMask로 배포해보기

    수업에서는 우분투 20.04 LTS, WSL과 편의를 위해 visual studio code를 사용했다. 초기 설치 필요 : node.js(14.x), truffle, ganache-cli nodejs 14버전과 npm 최신버전을 설치해준다. sudo curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash - sudo apt-get install -y nodejs sudo npm install -g npm truffle과 ganache-cli를 설치해준다. npm install -g truffle npm install -g ganache-cli 우분투를 켜고 작업할 곳에 다음을 입력한다. 토큰명은 임의로 정하면 된다. mkdir magtoken cd..

    [React] 리액트에서 라우터 다루기

    [React] 리액트에서 라우터 다루기

    Node.js를 이용해서 중고거래 사이트를 만들었는데, 이번에는 리액트를 사용하여 팀프로젝트를 하게 됐다. 그래서 리액트를 사용하면 어떻게 라우팅을 해야하는지 정리하며 익혀보려 한다. 우선 npm으로 yarn을 설치하고, ' yarn create react-app 프로젝트명 ' 으로 프로젝트 폴더를 생성했다. 리액트에서 라우팅을 하기 위해 터미널의 기본 프로필을 cmd로 설정한 후 yarn add react-router-dom yarn으로 웹용 패키지인 react-router-dom을 설치했다. React-snippets 확장을 설치하면 rafce 단축키를 써서 리액트 기본코드를 만들 수 있다. 기본 컴포넌트 준비 src/App.js import {Route, Link, NavLink} from 'rea..

    블로킹/논블로킹, 스레드 - 싱글/멀티 스레드 정리

    동기나 비동기에 대해서는 많이 접해봤는데 이번에 블로킹과 논블로킹 개념을 조사하라는 과제를 통해 해당 개념을 처음 접하게 되었다. 그래서 이해한 내용을 토대로 블로그에도 다시한번 정리해보려고 한다. 1. 블로킹, 논블로킹 블로킹 : 자신의 작업을 하다가 다른 작업 주체가 하는 작업이 시작되면 끝까지 기다렸다가 다시 자신의 작업을 시작한다. 즉, 결과가 올때까지 작업을 중단하고 대기한다. => 설계가 간단하지만 경우에 따라 효율이 떨어짐 논블로킹 : 다른 주체의 작업과 상관없이 자신의 작업을 계속한다. => 설계가 복잡하지만 경우에 따라 효율이나 반응속도가 더 뛰어남 언뜻 보면 다른 작업을 기다렸다가 작업을 하는지 여부에 따라 개념이 나뉘는 동기/비동기와 비슷해보인다. 내가 이해한 두 개념의 차이는 다음과..

    팀플 게시판+댓글 db연동 후기(의식의 흐름)

    팀플 게시판+댓글 db연동 후기(의식의 흐름)

    21년 1월 27일~ 2월 9일까지 진행했던 팀프로젝트에서 내가 담당했던 부분을 기록해보려고 한다. 나는 사이트의 게시판과 댓글부분을 담당했다. 조장님이 메인을 엄청 깔꼼하게 뽑아줘서 다행이었다ㅜㅠ 회원가입과 로그인도 잘해줘서 게시판의 허접함이 좀 가려졌다^.^ 완전 백지인 상태로 DB연동을 하려고 부딪혀야 했다는 것과... 사람 때문에 순탄치 않았지만... 어떻게 하냐 왜 안되냐 욕하면서 하나하나 구글링하고 생활코딩 영상을 보면서 익혀나갔다. 멘탈 나간게 복구되고나서 보니 참 허전하다. 게시판의 이미지 크기랑 간격을 좀 더 늘렸으면 좋았을 것 같은데 동물 버프로 히히 귀여워 하고 넘어갔음ㅠㅠ 우선 내가 담당한 부분은 게시판 + 댓글이었고, 그 때는 뭐가뭔지 몰라서 여기에 db가 이렇게 많이 들어갈지 몰..

    과제를 통한 async, await 연습(+호이스팅, callback, promise 맛보기)

    과제를 통한 async, await 연습(+호이스팅, callback, promise 맛보기)

    저번 글에서 setTimeout을 해부하게 된 건 전적으로 요 과제 때문이었다. 교수님께서 내가 차면 상대방이 자동으로 1초 뒤에 차게끔 코딩해보라고 하셔서 딜레이를 사용했고, 승부차기 특성상 일정 점수 이상을 먼저 따면 중간에도 승패가 갈리게끔 코딩하고 싶었다. 그래서 중간중간 점수를 확인하면서 승패가 안 났을 때만 버튼을 활성화시키도록 했는데, 그냥 setTimeout(function , 1000), setTimeout( , 2000) 이런 식으로 순서를 주려고 했더니 위에서 딜레이를 실행하는 동안 밑에서 현재 점수로 검사하고 지맘대로 게임을 끝내버린 후 점수를 누적시켜서 다시 검사하더라.... 그래서 한국 차고 일본 차는 중인데 갑자기 한국 승! 나오더니 다시 일본이 차고 경기를 이어가거나 비겼다고..

    [JavaScript] setTimeout()의 형식과 익명함수, arrow 함수 공부

    [JavaScript] setTimeout()의 형식과 익명함수, arrow 함수 공부

    저번 승부차기 만들기 과제에서 상대가 1초 뒤 자동으로 공을 차게 하기 위해 setTimeout()을 사용했는데, 아직 setTimeout의 형태가 손에 잘 익지 않아 복습 겸 정리를 해본다. 자바스크립트에서는 딜레이를 주기 위해 setTimeout()을 사용한다. 일정 시간 간격마다 실행하고 싶다면 setInterval()을 사용하는데, 클럭처럼 사용해도 될 것 같다. 나는 주로 setTimeout()을 사용할 것 같으니 구조를 분해하며 알아보겠다. setTimeout(function(){ console.log('dddd'); }, 1000); //1초 뒤에 콘솔 로그에 dddd를 출력하는 코드 setTimeout 함수의 기본형은 위와 같다. 위의 코드는 setTimeout( ); 에 인자로 funct..