Solidity 3

Solidity - 용어 정리

Address - 20바이트 형식의 변수 타입 (이더리움 주소 크기) - Solidity 에서 address를 선언하는 것은 변수를 이더리움 주소가 되도록 설정하는 것. Mapping - 키-값을 쌍으로 저장한다. - ex) mapping(address => uint) - 주소를 정수로 매핑. Scoping (변수의 범위) - State Variables (상태 변수) : 계약 저장소에 그 값이 영구적으로 저장됨. contract SolidityTest { uint storedData; constructor() public { storedData = 10; } } - Global Variables (전역 변수): 함수 외부에서도 쓸 수 있음. Constructors - Solidity에서 생성자는 계약 ..

Blockchain/Solidity 2023.01.08

Solidity - What is modifier?

Solidity 언어에는 다른 언어와 달리 modifier가 존재한다. Modifier는 함수안에 동작을 변경시키기 위해 사용되는데 즉, Modifier를 사용하면 함수를 실행시키기 전이나 후에 특정한 동작을 하게끔 만들 수가 있다는 뜻이다. 예를 들어, 함수를 동작시키기 전에 지정한 boolean 타입의 변수가 true인지 false인지 확인하고 동작시킬 수 있다. 위 코드처럼 require이 조건문처럼 쓰이고 조건에 부합하면 _; (underscore)를 통해 함수를 동작하게한다. 즉, 조건이 맞을 경우에 실행된다.

Blockchain/Solidity 2023.01.07

Solidity - Why write SPDX?

Solidity 코드를 작성할 때 맨 위에 SPDX 라이센스를 습관적으로 작성했는데 왜 작성하는지에 대한 의문점이 들었다. 찾아보니 Solidity 버전 0.6.8 이후 부터 코드 상단에 SPDX 라이센스를 요구 하는 것이 명시되었다고 한다. Solidity Docs에 의하면 라이센서를 명시함으로써 SmartContract에 대한 신뢰도를 높일 수 있고, 소스가 워낙 오픈되어 있기 때문에 저작권과 같은 문제를 해결하기 위해 명시를 한다고 설명되어 있다. SPDX 라이센스 리스트: https://spdx.org/licenses/ SPDX License List | Software Package Data Exchange (SPDX) SPDX License List The SPDX License List is..

Blockchain/Solidity 2023.01.03