[Solidity] CryptoZombies : Lesson 3 정리
·
Learning-Log/Computer Science
Lesson 3 고급 솔리디티 개념 Chapter 1 컨트랙트의 불변성 스마트컨트랙트는 불변성을 갖는다. 그 누구도 수정/변형 할 수 없다. 따라서 보안적 이슈가 있어도 새로운 스마트컨트랙트를 작성할 수 있을 뿐, 기존의 것을 수정할 수 없다. 이는 곧 코드작성에 있어서도 하드코딩을 기피해야하는 이유가 된다. 얘를 들어 interface에서 사용할 스마트컨트랙트 주소를 하드코드로 넣는 경우, 해당 스마트컨트랙트가 모종의 이유로 폐기된다면 우리가 작성한, 해당 스마트컨트랙트를 사용하고 있었던 스마트컨트랙트도 폐기해야한다. KittyInterface kittyContract; function setKittyContractAddress (address _address) external { kittyContra..
[Solidity] CryptoZombies : Lesson 2 정리
·
Learning-Log/Computer Science
Lesson 2 좀비가 희생물을 공격하다. Chapter 1 개요 Chapter 2 Mapping 과 Address address는 솔리디티에만 있는 독특한 자료형으로서, 지갑주소 등을 저장하는 타입이다. //cryptozombies 예제코드 mapping (address => uint) public accountBalance; mapping (uint => string) userIdToName; 매핑은 일종의 객체 비스무리한 녀석인데, 위 코드 중 첫 번째처럼 작성한다면, accountBalance의 address를 포인팅한 후 uint를 할당할 수 있다. 즉, 아래와 같이 사용할 수 있다. mapping (address => uint) public accountBalance; accountBalanc..