1 Entering the Lottery - Ether 함수를 호출할 때 마다 일정량의 이더 지불(payable) - "0x5B38Da6a701c568545dCfcB03FcB875f56beddC4" 주소 추가 - 다른 사람이 보내는 금액에 액세스 하기 위해 ether에 대한 조건 추가 2 The Remix Debugger - 솔리디티 디버그 창 - 데이터가 계약 주변에서 어떻게 흐르는지 더 잘 확인할 수 있음 3 Pseudo Random Number Generator - 무작위성에 대한 개념을 포함하지 않기 위한 코드 작성 - winer를 뽑는 함수 random 미래 타입으로 생성 - 현재 블록 난이도, 현재 시간, 플레이어 주소를 가짐 4 Sending Ether from Contracts
1 The Lottery Contract - 상금 풀과 상금 풀에 참가하는 사람들의 목록 존재 - 계약에 보내는 에테르는 특정 시점에 상금 풀에 보관 - 승자의 선택은 계약에 타라서 채결 _ 조건을 성립한 대상에게 2 Lottery Design - 관리자: 계약을 만든 사람의 주소 (Address type) - 승자: 관리자 만이 승자를 선택하도록 계약 작성 - 플레이어: 복권에 당첨된 사람들의 목록 - Ether 함수: 트랜잭션을 보내고 도면에 자신을 입력할 수 있는 기능 - 응모한 사람들의 목록에서 당첨자를 뽑아내는 기능의 함수 - 다양한 타입이 존재 크기가 클수록 더 많은 보관 비용을 지불해야 함 - 복잡한 계약을 이더리움 안에서 수행하면 비용이 늘어남 - address: 실제 주소를 저장하면 송금..
1 Deployment with Infura - 비용적인 문제로 링크B에 배포하나 실제와 동일한 과정임 - 지금까지의 코드로 새로운 계약을 생성하고, 호출하여, 보냄 - Web3는 자체적으로 동작하지 않으므로 공급자를 필요로 했음 -> 실제 배포는 몇가지 더 필요 - 자동으로 생성된 계좌를 가져오는 것 X - 네트워크 내에 존재하는 노드에 연결해야 배포가 가능함 -> Infure API 사용 2 Infura - endPoint를 링키B로 설정하여 키를 생성할 수 있음 - deploy.js에 배포를 위한 코드를 작성함 3 Updating Your Inbox Project to Solc v0.8.9
1 Deployment with Web3 - 이더리움 모듈에서 특정 계약 속성에 액세스하고 있음 - ABI: 중개, 전환에 대한 인터페이스를 얻는 방법 -> 생성자의 첫번째 인자 - deploy 라인에서 실제로 Web3로 배포하고 알림 -> 새로운 트랜잭션 개체의 생성 - send 라인에서는 계약을 생성하는 사람(from)과 gas 값을 명시 - 이미 배포된 계약과 상호작용 하려는 경우 API를 알아야 함 - 계약을 수행하는 작업을 js 코드로 변환 -> 바이트코드 필요 X - 배포된 계약과 상호작용하기 위해서는 배포된 위치(주소)를 알아야 함 2 Asserting Deployment - setMessage를 사용하여 메세지를 변경할 수 있는가? - 주소가 있다는 것은 계약이 로컬에 성공적으로 배포되었음..