블록체인/디파이 (Defi)

솔리디티 란

개발정리 2024. 1. 13. 19:30

솔리디티?

- 스마트 컨트렉트를 작성하기 위해 고안된 언어

- EVM 에서 작동하게 디자인된 언어

- 컴파일시 변수의 타입이 결정되는 정적 타입 언어

- 튜링 완전 언어

 

 

 

EVM? 

  • 솔리디티 코드를 통해 스마트 컨트렉트에 배포 및 실행과 같은 특정 작업을 수행하려 할 때 코드를 실행시켜주는 가상의 컴퓨터
  • 이더리움에 정의된 규칙에 따라 코드가 정상적으로 완료되면 상태를 변경하여 스마트 컨트렉트가 블록체인 데이터에 영향을 주도록 한다. 
  • 블록체인 데이터가 무분별하게 스마트 컨트렉트에 의해서 수정되지 않게 보호하는 역할도 해준다. 

 

솔리디티 작성 -> 컴파일하여 이더리움 바이트 코드로 변환 (EVM 이 인식할 수 있도록 하기 위한 컴파일) -> EVM 이 해당 코드 실행하여 통과되면 블록체인에 반영

 

 

 

정적타입?

  • 변수 선언 시 타입을 미리 정의해야함. 
  • 타입이 맞지 않으면 컴파일 시 에러 발생. 
  • e.g. c, c#, c++, java

 

 

 

반대로 동적타입

  • 변수 선언 후 원하는 값을 넣으면 런타임에 타입 결정이 이루어짐. 
  • 유지보수가 어려움.
  • e.g. js, ruby, python

 

 

완전 튜링 언어

- 조건 분기 문이 있다.

- 임의 위치의 메모리 값을 바꿀 수 있다. (프로세스르 충분히 분할할 수 있을 만큼 작은 단위를 사용할 수 있어야 한다.)

 

 

 

chainlist.org 

  • chain ID
  • chain 통화
  • 제공중인 RPC URL

 

메타마스크에 체인을 등록 할때, code 작성 중 public rpc 를 찾아서 넣어야 할 때 도움이 되는 사이트이다. 

 

 

 

크립토 좀비 

  • tool 구성, 환경구성 없이 웹에서 솔리디티 기본 문법을 익힐 수 있는 사이트

'블록체인 > 디파이 (Defi)' 카테고리의 다른 글

돈과 금융이 불안정한 사회  (0) 2024.05.26
돈과 금융의 역할 (2/2)  (0) 2024.05.26
돈과 금융의 역할  (0) 2024.05.19
hardhat 환경세팅 (feat. VSCode)  (0) 2024.01.13
디파이 란  (1) 2023.10.07