SecuFiby TechFi
SOLIDITY 0.8.xEVM · REMIX IDE2일차 강의자료 기반

솔리디티 기초 문법 실습

스마트 컨트랙트 개발 언어 Solidity의 핵심 문법을 단계별로 학습합니다.
데이터 타입부터 에러 처리까지 — Remix IDE에서 바로 실습할 수 있는 코드와 함께 배웁니다.

📚 9개 챕터💻 20개 실습 예제🛠️ Remix IDE 완전 정복🎯 미니 퀴즈 5문제🔒 보안 패턴 포함

솔리디티(Solidity)란?

개요

스마트 컨트랙트를 구현하기 위해 설계된 객체지향 고급 프로그래밍 언어입니다. EVM(이더리움 가상 머신)에서 실행되며, C++·Python·JavaScript의 특징을 결합했습니다.

특징설명
정적 타입변수 타입을 컴파일 시 결정 — 런타임 오류 최소화
객체지향상속, 인터페이스, 라이브러리 지원
EVM 대상이더리움 가상 머신에서 바이트코드로 실행
보안 중심require/revert/assert + ReentrancyGuard 내장 패턴

개발 환경

도구
도구역할URL
Remix IDE브라우저 기반 편집·컴파일·배포·디버거 통합remix.ethereum.org
Ganache로컬 가상 이더리움 네트워크 (100 ETH 테스트 계정)trufflesuite.com/ganache
MetaMask브라우저 확장 지갑 (개인키 관리·트랜잭션 서명)metamask.io
OpenZeppelin감사된 보안 라이브러리 (ReentrancyGuard 등)openzeppelin.com
💡
Remix IDE는 설치 없이 브라우저에서 바로 사용 가능합니다. 100 ETH 테스트 계정을 기본 제공하므로 별도 설정 없이 실습할 수 있습니다.

배포 흐름

5단계
1

Remix IDE에서 .sol 파일 작성

컨트랙트 코드 작성

2

컴파일 → ABI와 바이트코드 생성

Solidity Compiler 탭 사용

3

MetaMask에서 개인키로 트랜잭션 서명

Injected Provider 선택

4

Ganache(가상 네트워크)에 배포

로컬 테스트용

5

함수 호출 및 동작 검증

Remix 콘솔에서 확인

Hello World

첫 실습

가장 기본적인 스마트 컨트랙트입니다. Remix IDE에서 직접 배포해보세요.

HelloWorld.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

contract HelloWorld {
    string public message;

    constructor() {
        message = "Hello, Blockchain!";
    }

    function setMessage(string memory _msg) public {
        message = _msg;
    }

    function getMessage() public view returns (string memory) {
        return message;
    }
}
ℹ️
constructor()는 컨트랙트 배포 시 딱 한 번 실행됩니다. view 함수는 상태를 변경하지 않으므로 가스비가 없습니다.

실제 환경에서 배포해보세요

🚀 Remix IDE에서 실습하기