목록전체 글 (121)
개발공부일지
목차 1. 이더리움(Ethereum) 2. 상태 변환 시스템 3. 스크립팅 4. 이더리움 어카운트 5. 메시지와 트랜잭션 6. 이더리움 GAS 1. 이더리움(Ethereum) - 비탈릭 부테린 - 차세대 스마트 컨트랙트와 탈중앙화된 어플리케이션 플랫폼 - 비트코인은 결제라는 포커스에 맞춰 구현했다면 이더리움은 탈중앙화된 어플리케이션을 제안한다! - 블록체인 기술을 사용한 대안적인 어플리케이션 - 사용자 정의 화폐와 금융 상품을 블록체인으로 표현하기 위한 컬러드 코인 - 물리적 대상의 소유권을 표현하는 스마트 자산 - 도메인 이름과 같은 비동질적 자산을 기록하는 네임 코인 - 임의적인 계약의 규칙을 구현한 코드에 의해 디지털 자산을 좀 더 편리하게 관리함! → 스마트 컨트랙트가 탄생됨 - 블록체인을 기반으..
목차 1. Transaction 2. UTXO(Unspent Transaction Output) 3. TEST하기 1. Transaction - 자산을 전송하거나 기록하는 디지털 자산 전송 - 트랙잭션 입력 및 출력 (INPUT, OUTPUT) 있다. - 입력 INPUT : 이전 트랙잭션의 출력을 참조 - 출력 OUTPUT : 자신이 받을 수 있는 주소와 양을 정의 - 트랜잭션 검증을 위해 서명(개인키로 서명하고) 공개키로 검증, 트랙잭션 승인 - 트랙잭션 풀에 담겨있는 트랜잭션을 블록에 기록한다. - 블록 채굴을 하면 트랜잭션 처리가 되고 블록 생성 권한을 얻음( 마이닝 퀴즈 해결하면) - 블록이 정상적으로 체인에 추가 되면 트랜잭션 처리됨 → 이때 새로운 블록의 첫번째 트랜잭션이 코인베이스 트랜잭션 ..
** P2P 네트워크 - client와 server의 코드를 같이 작성하는 것 (둘다 작동되는 서버) - 프로그램을 작성할 때 clinet코드와 server코드를 같이 구현한다는 뜻! - front에서 작성했던 socket코드, back에서 작성했던 socket코드가 같이 구현되는것 ** 블록체인 P2P - node net 라이브러리 사용했던것처럼 사용, http, ws, tcp 사용함 - node - http : express - ws : node의 피어 전달해서 사용 - 클라이언트 - 블록 추가(마이닝 → 롱기스트 체인룰 검증) - 전체 블록 조회 - 마지막 블록 조회 import { P2P } from './server/p2p'; import Chain from './chain/chain'; imp..
목차 1. hash 2. Merkle Tree (머클트리) 3. transaction , Tx (트랜잭션) 4. 블록체인의 주요 4대 요소 기술 5. 합의알고리즘 종류 6. block 7. chain 1. hash ** SHA256 (알고리즘 Secure Hash Algorithm 256-bit) - 데이터의 무결성을 검증하고 암호학적 보안을 제공하기 위한 해시 함수 - 주로 비밀번호 저장, 디지털 서명, 블록체인 블록의 해시 등 다양한 보안 관련 작업에 사용 - SHA256를 사용하려면 crypto-js 라이브러리 사용해야함 const { SHA256 } = require('crypto-js'); const str = 'hello'; console.log('해시결과 : ', SHA256(str).toS..
- 초기 세팅하기 tsc --init npm init -y npm i nodemon concurrently - nodemon 설치 후 scripts 수정하기 { "name": "sort", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "start:build": "tsc -w", "start:run": "nodemon build/index.js", "start": "concurrently npm:start:*" }, "keywords": [], "author": "", "license": "ISC", "dependencies": { "concurrently": "^8.2.2", "nodemon": "^3.0.2" } } *..
★ 목표 ① google map api 서비스영역을 제한 ② interface 활용 ③ implements 활용 ★ 목차 1. percel 2. faker 3. google map api 4. marker 5. implements 1. percel npm i -g parcel-bundler npx parcel index.html → 브라우저 열어서 http://localhost:1234 2. faker https://fakerjs.dev/ npm i @types/faker import { faker } from '@faker-js/faker'; import { faker } from '@faker-js/faker'; export class Company { companyName: string; catch..
목차 1. 전략패턴(Strategy Pattern)이란 2. 활용1 (로그인 로직) 3. 활용2 (상품 할 로직) 1. 전략패턴(Strategy Pattern)이란 - 객체지향적으로 프로그래밍할때 가장 많이 사용하는 패턴 중 하나. - 클래스의 재사용성을 높이고, 클래스 각각의 내용을 따로 분리해서 만들어 사용하므로 유지보수 용이함. → 새로운 기능을 추가해야한다면, 새로운 클래스를 만들어주어 사용! - 각각의 전략(strategy)을 구현하는 인터페이스를 만들고, 그걸 구체적인 클래스가 구현! 2. 활용1 (로그인 로직) ① 로그인 진행에 대한 각각의 interface를 만들고 더보기 // 로그인 진행 interface AuthProps { email: string; password: string; }..
목차 1. typescript 작성하기(자료형) 2. 제네릭(Generics) 3. 배열선언방식과 tuple 4. interface 1. typescript 작성하기(자료형) 변수명 : 타입 = 초기값 let num: number = 20; const str: string = "typescript"; const nan: number = NaN; const infinity: number = Infinity; const bool: boolean = true; const nullValue: null = null; const undefinedValue: undefined = undefined; const obj: object = {}; // 함수의 경우 반환되는 타입까지 지정해줘야함, 반환되는값이 없다면 voi..
목차 1. typescript란 2. typescript를 사용하는 이유 3. typescript 설치 4. node 런타임 환경 실행 5. tsconfig 설정 : tsconfig.json ( compilerOptions, include, exclude) 6. paths 별칭 사용시 주의 7. build 1. typescript란 - javascript에 타입의 정의가 추가된 언어 - 클래스형으로 작성하고 타입을 지정함 (오류방지가능함) - js의 확장된 언어 → javascript의 상위 집합 슈퍼셋(상위확장) - path(경로) 변수처럼 별칭을 정해서 사용가능함 - 런타임 환경없음, 컴파일 언어 (컴파일러가 존재) ts → js - ts로 작성한 코드는 브라우저에서 읽을 수 없어서 해석가능한 js로..
** 프로젝트 github : https://github.com/Stacker-Labs/KGA-React-Project ** 배포: https://eunjae.store/ ** API명세 : https://api.subin.kr/api/ ** 발표자료 : https://docs.google.com/presentation/d/1SOk42-FVH7GwYIztDuq8l47He3BJ500XuKWtMjfsUVs/edit?pli=1#slide=id.g14c2555d3ae_0_33 1. 초기 디자인 페이지 (반응형 - 태블릿, 모바일) 2. 완성페이지 (반응형 그대로 진행, 다크모드 추가)