클레이튼 블록체인 강의(그라운드X)(12일차)

민식킴·2021년 3월 12일
0

블록체인 일지

목록 보기
7/9

컨트렉트에 어떤걸 하고 선언하고 정의할 수 있나요?

  • state variables (상태변수)
  • functions (함수들)
  • function modifiers (함수 제어자)
  • events (이벤트)
  • struct types (struct, 구조체)
  • enum types (바뀌지 않는 상수)

state variables (상태변수)

  • 블록체인에 영구히 저장할 값은 상태변수로 선언
  • public 키워드를 사용하여 변수를 외부에 노출가능 (이때 함수실행을 돕는 getter함수가 생성됨)

functions (함수들)

  • external, public(모두 공개), internal, private중 하나로 visibility 설정
  • payable(function () public payable), view, pure등 함수의 유형을 정의가능

function modifiers (함수 제어자)

함수 실행전 require과 같이 실행시킬지 분기 발생.
함수 제어자 내부 마지막에 _;를 넣음

events (이벤트)

로깅같은 것?

  • 이벤트가 실행될 때마다 트랜잭션 로그에 저장(나 이 블록에 포함되면서 이거했다~)
  • 저장된 로그는 클라이언트가 스무스하게 listening할 수 있음
    매번 새롭게 함수를 불러오기보다 액션이 있을때만 이 이벤트를 실행시키자!
    이를 이용해 다른일을 유용하게 쓸 수 있다고 한다,,

struct types (struct, 구조체)

구조체.
자기자신을 넣을 순 없음.

enum types (바뀌지 않는 상수)

월화수목금토일 과 같은 바뀌지 않는 것들

enum status{
	Open;
    Closed;
}

이런 것들을 표현할 때 유용할 수 있다.

profile
우리의 꿈, 우리의 희망

0개의 댓글