[Solidity] Invariants

냐옹·2023년 7월 31일
0

Solidity

목록 보기
2/13
post-thumbnail

Invariants

Invariants는 소프트웨어 공학 용어로서, 프로그램의 실행 도중에 항상 참이어야 하는 조건을 의미합니다.

다시 말해서, 프로그램의 특정 부분에서 값이나 상태가 변경되더라도 해당 불변성(invariants)은 항상 유지되어야 합니다.

예를 들어서 학생의 나이는 항상 0보다 커야한다는 것이 한가지 불변성일 수 있습니다. 이것은 프로그램의 어떤 시점에서도 학생의 나이가 0보다 작아지는 일이 없어야 함을 의미합니다.

솔리디티와 같은 스마트 컨트랙트 언어에서 불변성은 중요한 개념입니다. 아무래도 스마트 컨트랙트가 디파이와 같은 중요한 돈과 관련된 업무를 처리하기 때문입니다.
일반적으로 assert 키워드를 사용해서 불변성을 검사하고, 이를 통해서 스마트 컨트랙트의 안전성을 높이는 것이 일반적입니다.

profile
developer

1개의 댓글

comment-user-thumbnail
2023년 7월 31일

좋은 글 감사합니다.

답글 달기