Top 33 Solidity 문법 Trust The Answer

You are looking for information, articles, knowledge about the topic nail salons open on sunday near me solidity 문법 on Google, you do not find the information you need! Here are the best content compiled and compiled by the https://chewathai27.com/to team, along with other related topics such as: solidity 문법 Solidity 튜토리얼, Solidity, Solidity 예제, 솔리디티 자바, 솔리디티 강좌, Solidity 언어, 솔리디티 예제, solidity 나무위키


블록체인 Core 완전 정복 4-2 스마트 컨트랙트 Solidity 기본 문법
블록체인 Core 완전 정복 4-2 스마트 컨트랙트 Solidity 기본 문법


솔리디티 – 01. 기본 문법 1 (자료형과 연산)

  • Article author: merrily-code.tistory.com
  • Reviews from users: 34269 ⭐ Ratings
  • Top rated: 4.8 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about 솔리디티 – 01. 기본 문법 1 (자료형과 연산) 솔리디티(Solity)는 *계약 지향 프로그래밍 언어로, 다양한 블록체인 플랫폼의 스마트 계약 로직을 작성할 때 사용됩니다. (쉽게 설명하면 이더리움 … …
  • Most searched keywords: Whether you are looking for 솔리디티 – 01. 기본 문법 1 (자료형과 연산) 솔리디티(Solity)는 *계약 지향 프로그래밍 언어로, 다양한 블록체인 플랫폼의 스마트 계약 로직을 작성할 때 사용됩니다. (쉽게 설명하면 이더리움 … 솔리디티(Solidity)는 *계약 지향 프로그래밍 언어로, 다양한 블록체인 플랫폼의 스마트 계약 로직을 작성할 때 사용됩니다. (쉽게 설명하면 이더리움 계열의 블록체인은 솔리디티로 작성됐다고 보면 됩니다.) ✅..
  • Table of Contents:

즐겁게 코드

솔리디티 – 01 기본 문법 1 (자료형과 연산) 본문

티스토리툴바

솔리디티 - 01. 기본 문법 1 (자료형과 연산)
솔리디티 – 01. 기본 문법 1 (자료형과 연산)

Read More

Solidity — Solidity 0.5.10 documentation

  • Article author: solidity-kr.readthedocs.io
  • Reviews from users: 49971 ⭐ Ratings
  • Top rated: 4.4 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about Solidity — Solidity 0.5.10 documentation Solity는 스마트 컨트랙트를 구현하기 위한 컨트랙트 기반의 고급 … Emacs Solity: 문법 강조 기능과 편집 에러 알림을 제공하는 Emacs editor 플러그인. …
  • Most searched keywords: Whether you are looking for Solidity — Solidity 0.5.10 documentation Solity는 스마트 컨트랙트를 구현하기 위한 컨트랙트 기반의 고급 … Emacs Solity: 문법 강조 기능과 편집 에러 알림을 제공하는 Emacs editor 플러그인.
  • Table of Contents:

Notice for Korean¶

번역¶

유용한 링크¶

Solidity 통합 도구들¶

Solidity 도구들¶

서드파티 Solidity 파서와 문법¶

Language Documentation¶

Solidity — Solidity 0.5.10 documentation
Solidity — Solidity 0.5.10 documentation

Read More

[solidity] 개발자를 위한 속성 문법

  • Article author: doitnow-man.tistory.com
  • Reviews from users: 24478 ⭐ Ratings
  • Top rated: 4.2 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about [solidity] 개발자를 위한 속성 문법 [solity] 개발자를 위한 속성 문법 … pragma 라는 keyword를 사용해서 smart contract가 지원하는 solity 버전 을 … pragma solity ^0.8.4; … …
  • Most searched keywords: Whether you are looking for [solidity] 개발자를 위한 속성 문법 [solity] 개발자를 위한 속성 문법 … pragma 라는 keyword를 사용해서 smart contract가 지원하는 solity 버전 을 … pragma solity ^0.8.4; … 개요 본 post는 적어도 하나의 언어를 안다는 가정에 하에 작성 되었습니다. 그리고 모든 code의 test는 https://ide.klaytn.com/ 에서 테스트 되었습니다. Solidity의 관점에서 컨트랙트란 무수한 코드들(함수)과..it 개발 전문 블로거 [email protected]
  • Table of Contents:
[solidity] 개발자를 위한 속성 문법

개요

Solidity의 관점에서 컨트랙트란

기본 구조

contract를 구성하는 항목

1 중요 키워드

2 constructor()

3 state variable

4 struct type

5 enum

6 Function

8 Event

contract는 간결 해야한다

참조사이트

티스토리툴바

[solidity] 개발자를 위한 속성 문법
[solidity] 개발자를 위한 속성 문법

Read More

[Ethereum] Solidity 문법 이해(1) | 잡동사니 수집광

  • Article author: d2fault.github.io
  • Reviews from users: 35708 ⭐ Ratings
  • Top rated: 4.7 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about [Ethereum] Solidity 문법 이해(1) | 잡동사니 수집광 솔리디티 소스 파일 솔리디티 소스 파일의 확장자는 .sol이다. 파일 내에서 pragma solity를 사용, 컴파일러 버전을 지정할 수 있다. …
  • Most searched keywords: Whether you are looking for [Ethereum] Solidity 문법 이해(1) | 잡동사니 수집광 솔리디티 소스 파일 솔리디티 소스 파일의 확장자는 .sol이다. 파일 내에서 pragma solity를 사용, 컴파일러 버전을 지정할 수 있다. 문법,Ethereum,Solidity솔리디티 소스 파일 솔리디티 소스 파일의 확장자는 .sol이다. 파일 내에서 pragma solidity를 사용, 컴파일러 버전을 지정할 수 있다. 1pragma solidity ^0.4.21 스마트 컨트랙트 구조 컨트랙트는 클래스와 비슷하여 상태 변수, 함수, 함수 변경자, 이벤트, 구조체, 열거형을 포함한다. 상속과 다형성 또한 지원한다. 1234
  • Table of Contents:
[Ethereum] Solidity 문법 이해(1) | 잡동사니 수집광
[Ethereum] Solidity 문법 이해(1) | 잡동사니 수집광

Read More

Solidity 문법 정리

  • Article author: rosypark.tistory.com
  • Reviews from users: 4522 ⭐ Ratings
  • Top rated: 3.4 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about Solidity 문법 정리 Solity 문법 정리 · 1. 배열 · 2. 랜덤문자 생성 · 3. 형변환 · 3.1 uint · 3.2 캐스팅 · 4. 이벤트 · 5. Address · 6. Mapping. …
  • Most searched keywords: Whether you are looking for Solidity 문법 정리 Solity 문법 정리 · 1. 배열 · 2. 랜덤문자 생성 · 3. 형변환 · 3.1 uint · 3.2 캐스팅 · 4. 이벤트 · 5. Address · 6. Mapping. 1. 배열 Person[] public people uint[] memory result = new uint[](3) 2. 랜덤문자 생성 keccak256(“aaaa”) 3. 형변환 uint a = 5; uint b = 6; uint8 c = a*uint8(b) 3.1 uint 3.2 캐스팅 – uint32(uint256 변..
  • Table of Contents:

티스토리 뷰

티스토리툴바

Solidity 문법 정리
Solidity 문법 정리

Read More

Solidity, 핵심만 정리했습니다 | Beyond the Developer

  • Article author: candykick.kr
  • Reviews from users: 1943 ⭐ Ratings
  • Top rated: 3.1 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about Solidity, 핵심만 정리했습니다 | Beyond the Developer 이더리움, 클레이튼에서 지원하는 스마트 컨트랙트 언어. 일반적인 프로그래밍 언어와 그 문법, 사용은 유사하지만 몇 가지 제약이 존재. ex) 포인터의 … …
  • Most searched keywords: Whether you are looking for Solidity, 핵심만 정리했습니다 | Beyond the Developer 이더리움, 클레이튼에서 지원하는 스마트 컨트랙트 언어. 일반적인 프로그래밍 언어와 그 문법, 사용은 유사하지만 몇 가지 제약이 존재. ex) 포인터의 … Solidity에 대해 공부한 내용들을 최대한 핵심만 요약해서 정리했습니다.blockchain, transaction, solidity, smartcontract, BApp, contract
  • Table of Contents:

Menu

Contract에서 선언할 수 있는 것들

Data Types

Contract 설계 원칙

Solidity, 핵심만 정리했습니다 | Beyond the Developer
Solidity, 핵심만 정리했습니다 | Beyond the Developer

Read More


See more articles in the same category here: Chewathai27.com/to/blog.

01. 기본 문법 1 (자료형과 연산)

솔리디티(Solidity)는 *계약 지향 프로그래밍 언어로, 다양한 블록체인 플랫폼의 스마트 계약 로직을 작성할 때 사용됩니다.

(쉽게 설명하면 이더리움 계열의 블록체인은 솔리디티로 작성됐다고 보면 됩니다.)

✅ TIP – 솔리디티를 처음 학습하는 입장이라면 이 “계약 지향” 이라는 말이 굉장히 생소하게 느껴질 수 있는데요, 보면서 느끼시겠지만 계약(contract)은 문법상 자바 등의 “클래스” 와 굉장히 유사한 구조입니다.

따라서, 앞으로 나올 “컨트랙트” 라는 말이 어색하다면 “클래스” 와 비슷한 개념이라고 어렴풋이 이해하고 계셔도 될 듯 합니다.

솔리디티의 큰 특징은 다음과 같습니다.

정적 타입 언어

Ethereum Virtual Machine (EVM) 위에서 실행됨

문장의 끝을 반드시 세미콜론(;)으로 표현함

솔리디티는 공식 IDE인 remix.ethereum.org/ 에서 실행할 수 있으며, visual studio나 VS Code에서도 지원합니다!

1. 첫 사용시

pragma solidity ^0.4.19;

pragma solidity ^버전명 으로 사용할 솔리디티 언어 버전을 명시해줘야 함.

=> 그래야 컴파일러가 버전에 맞게 컴파일할 수 있음.

2. 컨트랙트

pragma solidity ^0.4.19; contract ZombieFactory { }

이더리움과 비트코인의 가장 큰 차이중 하나인 컨트랙트, 모든 코드의 실행은 이 “컨트랙트” 안에서 실행되어야 합니다.

(위에서 잠깐 언급했지만, 자바의 클래스와 유사합니다.)

3. 자료형

주요 자료형

uint (부호 없는 정수형) – uint는 기본적으로 256비트 자료형으로, 보다 작은 자료형은 uint32, uint64 등으로 선언할 수 있습니다.

int (정수형)

bool : 논리 자료형

string : UTF-8 인코딩 문자열

bytes : 바이트

address : 이더리움 주소 값 (0xaDc7192A0…)

pragma solidity ^0.4.19; contract ZombieFactory { uint a = 16; }

연산

솔리디티는 사칙연산과 나눗셈(모듈로) 연산, 지수 연산을 지원합니다.

pragma solidity ^0.4.19; contract ZombieFactory { uint a = 16; uint b = a ** 10 // b는 16의 10승 }

구조체

구조체는 struct 키워드로 생성할 수 있으며, 컨트랙트 내부에서 정의되어야 합니다.

pragma solidity ^0.4.19; contract ZombieFactory { uint a = 16; uint b = a ** 10 struct Zombie { string name; uint dna; } }

배열

솔리디티에는 정적 배열과 동적 배열이 존재합니다.

정적 배열 : uint[4] fixedArray 처럼 미리 사용할 배열의 크기를 지정함.

동적 배열 : uint[] dynamicArray 처럼 고정된 크기가 없어 계속 커질 수 있음.

new 키워드를 활용한 배열 : new uint[](5) 처럼 길이 인자를 반드시 명시해줘야 함.

pragma solidity ^0.4.19; contract ZombieFactory { uint a = 16; uint b = a ** 10 struct Zombie { string name; uint dna; } Zombie[5] zombies; // Zombie 구조체를 저장하는 크기 5의 배열 }

public 속성 배열

배열에는 public 이라는 속성을 부여할 수도 있습니다.

public 속성과 함께 배열을 선언하면 다른 컨트랙트에서도 배열을 읽을 수 있게 되지만, 쓸 수는 없습니다.

pragma solidity ^0.4.19; contract ZombieFactory { uint a = 16; uint b = a ** 10 struct Zombie { string name; uint dna; } Zombie[5] public zombies; // 다른 컨트랙트에서도 zombies 배열을 읽을 수(만) 있음. }

반응형

Solidity — Solidity 0.5.10 documentation

Solidity는 스마트 컨트랙트를 구현하기 위한 컨트랙트 기반의 고급 프로그래밍 언어입니다. Solidity는 C++, Python, 그리고 JavaScript의 영향을 받아 만들어졌습니다. 그리고 Ethereum Virtual Machine(EVM)에서 구동되도록 설계되었습니다.

Solidity는 정적 타입이며, 상속, 라이브러리 그리고 복잡한 사용자 정의 자료형을 지원합니다.

문서에서 살펴볼 수 있듯이 투표, 크라우드 펀딩, 블라인드 옥션, 멀티 시그 월랫 등 다양한 컨트랙트를 작성할 수 있습니다.

주석 Solidity를 연습하기 가장 좋은 방법은 현재 Remix (로딩되는데 다소 시간이 걸릴 수 있습니다.)를 사용하는 것입니다. Remix는 Solidity 스마트 컨트랙트를 작성하고, 배포하고, 실행할 수 있는 웹 브라우저 기반의 IDE입니다.

경고 소프트웨어는 사람에 의해 만들어지기 때문에 버그가 생길 수 있습니다. 따라서 스마트 컨트랙트는 잘 알려진 모범사례들을 참고하여 작성되어야합니다. 스마트 컨트랙트를 작성할 때는 코드리뷰, 테스팅, 회고 그리고 정확성 증명을 해야합니다. 또한 사용자가 코드 작성자보다 코드를 더 신뢰하는 경우가 있다는 것을 기억해야합니다. 마지막으로, 블록체인 자체적으로 주의해야할 사항들이 있습니다. 다음 섹션을 참조해 주세요. 보안 측면 고려사항.

Notice for Korean¶ 아직 번역이 진행중입니다. 누구나 참여하실 수 있으며 해당 solidity-korea/solidity-docs-kr repo 에 편하게 Pull Request 주셔서 참여하실 수 있습니다.

번역¶ This documentation is translated into several languages by community volunteers, but the English version stands as a reference. Simplified Chinese (in progress)

Spanish

Russian (rather outdated)

Solidity 도구들¶ Dapp Solidity 를 위한 빌드 도구, 패키지 매니저, 배포 도우미 도구

Solidity REPL 커맨드 라인 기반으로 Solidity 를 바로 사용해볼 수 있는 도구

solgraph Solidity 흐름을 시각화 하고, 잠재적인 보안 위협을 강조해주는 도구

evmdis Raw EVM operations 보다 높은 추상화를 제공하기 위해 바이트 코드에 직접 정적 분석을 수행하는 EVM Disassembler

Doxity Solidity 를 위한 문서 생성기

서드파티 Solidity 파서와 문법¶ solidity-parser Javascript 를 위한 Solidity 파서

Solidity Grammar for ANTLR 4 Solidity grammar for the ANTLR 4 parser generator

[solidity] 개발자를 위한 속성 문법

728×90

반응형

개요

본 post는 적어도 하나의 언어를 안다는 가정에 하에 작성 되었습니다.

그리고 모든 code의 test는 https://ide.klaytn.com/ 에서 테스트 되었습니다.

Solidity의 관점에서 컨트랙트란

무수한 코드들(함수)과 데이터(상태)가 Ethereum 블록체인의 특정 주소에 존재하는 것입니다.

기본 구조

1. Licsense 명시

– SPDX-License-Identifier: GPL-3.0

2. 버전 명시

– pragma 라는 keyword를 사용해서 smart contract가 지원하는 solidity 버전 을 명시 합니다.

1) 특정 지원 버전 명시

– pragma solidity ^0.8.4;

2) 지원 범위 명시

– pragma solidity >=0.4.0 <0.6.0; 3. 계약 정의 - contract "계약명" { } - 계약 정의는 일반 적인 programming과 동일 하게 작성이 됩니다. 4. contract 기본 구조 // 1. 라이센스 명시 // SPDX-License-Identifier: GPL-3.0 // 2. 버전 명시 pragma solidity ^0.8.4; // 3. contract 정의 contract basic{ // 여기에 코드를 작성 } contract를 구성하는 항목 - contract는 다음 7가지를 사용하면 만듭니다. 1. 중요 키워드 2. constructor() 3. state variable 4. struct type 5. enum 6. function 7. modifier 8. event 1 중요 키워드 - 다음 키워드드들은 변수 또는 함수에서 사용되는 중요 키워드들을 나열한 것입니다. 1. visibility (접근 제어자) 항목 설명 public - 변수를 외부에 노출이 가능 하게 만듭니다. 외부에 노출 가능하다는 의미는 다른 contract에서 호출 가능 하다는 의미 입니다. - public을 사용 할 경우 자동으로 해당 변수 값을 돌려주는 Getter 함수가 생성이 됩니다. Getter함수는 변수명이랑 동일한 이름으로 생성됩니다. - contract 내부 함수들끼리 참조하여 사용 가능 private - 컨트랙 내부만 호출가능 external - 상태 변수에서 사용 못함. - 외부 컨트랙트만 호출 가능 - 상태변수는 external 사용 불가 - contract 내부 함수들 끼리 서로 참조해서 사용 못함 - public으로 변경 가능 internal - 컨트랙 내부 호출 가능. - 상속받은 컨트랙도 호출 가능. - 상태변수는 디폴트로 internal 선언 2. 자료형의 type type keyword 설명 reference memory - 함수 내에서 유요한 여역에 저장 - storage 이외는 모두 memory이다. - 휘발성 data reference storage - state variables와 같이 영속적으로 저장되는 영역에 저장 - block chain에 기록 되는 값들 입니다. reference calldata - external 함수 인자에 사용되는 공간 1) 유의 사항 - 서로 다른 영역을 참조하는 변수 간 대입이 발생시 데이터 복사 Ex) storage => memory / calldata

anything => storage

3. 유형

유형 설명 view 데이터 read-only pure – 데이터 읽지 않음

– 인자 값만 활용해서 반환 값 정함 constance – 0.4.17 버전이전에는 view/pure 대신쓰임 (현재는 사용 할일 없을듯) payable 함수에서 사용 시 : ethereum을 송/수신 할때 사용 합니다.

2 constructor()

– contract를 생성 할 때 단 한번 실행 되는 code

3 state variable

1. 정의

– solidity에서는 함수 밖에서 선언한 변수를 상태변수(state variable)이라고 부른다.

– state variable이라고 불리는 이유는 블록체인에 영구히 기록 되기 때문 입니다.

– 단, 함수에서 안에서 선언한 변수는 블록체인에 기록 되지 않기 때문에 state variable이 아닙니다.

2 선언에 사용되는 자료형

종류 값 비고 boolean true, false int ~ int256 – int256 = int

– 8비트 단위로 존재 uint ~ uint256 – (uint256 =uint)

– 8비트 단위로 존재 fixed/ufixed – 고정 소수점 address

-Address 관련

– 20바이트(이더리움 address의 크기)를 담을 수 있습니다. – balance, transfer, send, call, callcode, delegatecall 의 멤버를 가지고 있습니다.

bytes ~ bytes32

bytes2 test = ‘ab’;

test[1] //a test[2] //b test[1] = ‘cc’ //error – 고정 크기 바이트 배열

– byte[]로도 사용 가능 하지만, 배열 아이템간 31byte 패딩이 추가되어

공간 낭비가 발생한다. bytes

– 동적 크기 바이트 배열

– 임의의 길이의 원시 바이트를 처리 할 때 사용 string

“test” – 동적 크기 바이트 배열

– 임의이 길이의 문자열(UTF-8)데이터를 처리 할 때 사용 function https://solidity-kr.readthedocs.io/ko/latest/types.html#function-types 함수 타입의 변수는 함수에서 할당 될 수 있으며 함수 타입의 함수매개변수는 함수가 호출될 때, 함수를 전달하거나 반환하는데 사용될 수 있습니다. 함수 타입에는 두 종류가 있습니다 – 내부 및 외부 함수 입니다: mapping – 제약 사항

– storage로만 쓸 수 있다. (state variable로만 선언가능)

– 함수안에서 사용 불가능 하다

– hashtable과 유사

– 배열 처럼 사용 array T[k] x; // 1차원 배열

T[][k] x; // 2차원 배열 c++언어에서의 개념과 같음 그러나 사용법이 상이

– storage로 선언된 array만 size가 가변적으로 늘어날수 있습니다.

– memory로 선언시 크기를 고정 해야 합니다.

– 차원 배열시 특시정

T[][k] x; // k개의 T를 담을 수 있는 가변 배열 x선언

// 일반 적인 언어에서는 T[k][] 한다.

– push로 아이템 추가 가능

– delete 하면 array가 초기화 됩니다.

3. 선언 방식

자료형 visibility 이름 = data;

contract Count { uint public count = 0; address public lastParticipant; }

4 struct type

1. 정의

– solidity에서 제공하지 않는 새로운 자료형을 만들때 사용 합니다.

– c나 c++ 에 존재하는 strcut 와 동일 합니다.

– struct를 구성 할 때의 자기 자신을 넣을 수 없다는 것외에는 어떤 것을 넣든지 제약은 없습니다.

2. 예제

contract Ballot{ struct Voter { uint weight; bool voted; address delegate; uint vote; } }

5 enum

1. 정의

– 변경되지 않는 상수를 정의 할때 사용 합니다.

– c나 c++의 enum과 동일 합니다.

2. 예제

contract Ballot{ enum Status { Open, Closed } }

6 Function

1. 함수의 역활

– 솔리디티 함수는 코드 안에 변수로 선언된 변수를 변경하거나 불러옴.

2. 함수 문법

3. 문법 항목 설명

1) visibility (접근 제어자)

– contract 외부에서 해당 함수를 볼수 있을지 없을지를 설정 합니다.

– 상속에도 영향을 준다.

항목 설명 public – 변수를 외부에 노출이 가능 하게 만듭니다.

외부에 노출 가능하다는 의미는 다른 contract에서 호출 가능 하다는 의미 입니다.

– public을 사용 할 경우 자동으로 해당 변수 값을 돌려주는 Getter 함수가 생성이 됩니다.

Getter함수는 변수명이랑 동일한 이름으로 생성됩니다. private – 컨트랙 내부만 호출가능 external – 상태 변수에서 사용 못함.

– 외부 컨트랙트만 호출 가능

– 상태변수는 external 사용 불가

– contract 내부 함수끼리 서로 참조 못함. internal – 컨트랙 내부 호출 가능.

– 상속받은 컨트랙도 호출 가능.

– 상태변수는 디폴트로 internal 선언

2) 유형

유형 설명 view 데이터 read-only pure – 데이터 읽지 않음

– 인자 값만 활용해서 반환 값 정함 constance – 0.4.17 버전이전에는 view/pure 대신쓰임 (현재는 사용 할일 없을듯) payable 함수에서 사용시 : ethereum을 송/수신 할 때 사용 합니다.

3) modifier – modifer 함수를 명시 합니다 (아래에서 modifier가 뭔지 설명 합니다)

7 Function modifier

1. 정의

– 함수의 실행 전, 후 성격을 정의

– 대부분의 경우 함수의 실행 조건을 정의하는데 사용됨.

2. 정의 방법

– require() 함수로 실행 조건을 명시

Ex) require(msg.sender == chairperson, “only ther chaireperson can call”);

// require에서 앞에 조건이 true이면 문제 없음.

// 조건이 false이면 , 뒤에 메시지를 보여주면서 종료가됨

3. 예제 코드

– msg.sender (함수를 실행한 사람의 주소)

contract Ballot { constructor() public { chairperson = msg.sender; } address chaireperson; modifier onlyChair { require(msg.sender == chairperson, “only ther chaireperson can call”); // require에서 앞에 조건이 true이면 문제 없음. // 조건이 false이면 , 뒤에 메시지를 보여주면서 종료가됨 _; } function giveRightToVote(addreess to) public onlyChair { // ‘onlyChair’ modifier ensures that this function is called by ther chaireperson } }

8 Event

1. 정의

– EVM(Ethereum Virtual Machine)로깅을 활용한 시스템 입니다.

2. 기능

– event가 실행 될 때 마다 transaction Log에 저장 합니다.

– 저당된 Log는 contract 주소와 연동되어 client가 RPC로 조회 가능하게 해줍니다.

3. 언제 사용된는가

– transaction을 보내고 transaction이 block에 기록될 때 마다 transaction은 자기 로그를 남길 수 있습니다.

그래서 event를 생성하면 transacntion Log라는 공간에 기록을 남기게 됩니다.

그리고 나중에 contract 주소로 조회가 가능 합니다.

– client가 event를 listenning 하는데 사용 됩니다. block이 나올 떄 마다 어떤 event를 발생 했는지 확인이 가능 합니다.

client는 listening하고있는 contract의 event가 발생하면 무언가 하게끔 만들 수 있습니다.

4. 예제 코드

1) contract 예제 코드

– Voted라는 event를 만들고 vote가 실행되면 emit을 사용하여 Voted event를 발생 시킵니다.

contract Ballot{ event Voted(address voter, uint proposal); function vote(uint proposal) public { … emit Voted(msg.sender, proposal); } }

2) client 예제 코드

– caver를 사용해서 contract를 생성하고 해당 contract의 event를 listenning 하는 코드 입니다.

const BallotContract = new caver.klay.Contract(abi, address); BallotContract.event.Voted( { fromBlock: 0 }, function(error,event) { console.log(event); } ).on(‘error’, console.error)

contract는 간결 해야한다.

1. proxy contract로

참조사이트

https://solidity-kr.readthedocs.io/ko/latest/

728×90

반응형

So you have finished reading the solidity 문법 topic article, if you find this article useful, please share it. Thank you very much. See more: Solidity 튜토리얼, Solidity, Solidity 예제, 솔리디티 자바, 솔리디티 강좌, Solidity 언어, 솔리디티 예제, solidity 나무위키

Leave a Comment