블록체인

패스트캠퍼스 환급챌린지 26일차: 한 번에 끝내는 블록체인 개발 A to Z 강의 후기

hyzl 2025. 3. 30. 23:28

본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다.


3월 30일 학습 후기

 

오늘은 블록체인에서 가장 핵심적이라 할 수 있는 스마트컨트랙트의 개념과 구조에 대해 학습했다. 스마트컨트랙트는 단순한 코드가 아니라 블록체인 위에 올라가는 하나의 서비스 로직이라는 점이 인상 깊었다. 개발자는 Dapp의 서비스 논리를 스마트컨트랙트로 작성하고 이를 네트워크에 배포한다. 사용자는 해당 컨트랙트를 통해 상태를 조회하거나 변경하며, 이러한 변경 사항은 블록체인 위에 투명하게 기록된다. 기존 서버 기반 애플리케이션과 달리 한번 배포된 스마트컨트랙트는 수정이 어려우며, 신뢰와 보안을 전제로 동작한다는 점에서 설계 단계부터 많은 고민이 필요하다는 것을 느꼈다. 

 

스마트컨트랙트는 튜링 완전성을 지니기 때문에 어떤 논리든 표현 가능하지만, 그만큼 복잡한 동작과 보안 위협에 노출될 수 있다는 점도 함께 인식하게 되었다. 개발 언어로는 Solidity가 가장 널리 사용되며, 이 외에도 보안 중심의 Vyper, 초보자 친화적인 FE, 저수준 최적화가 가능한 Yul과 Yul+까지 다양하게 존재한다. 

 

특히 Solidity는 객체지향 기반으로 상속과 사용자 정의 타입을 지원하여 효율적인 코드 구성이 가능하다는 점이 흥미로웠다. 컴파일 과정을 거쳐 생성되는 바이트코드와 OPCODE, 그리고 ABI는 각각 배포, 가스 계산, 사용자와의 통신에 활용된다는 구조도 이해할 수 있었다. ABI를 통해 프론트엔드와 스마트컨트랙트가 연결되고, 사용자 요청이 실제로 어떤 함수와 데이터를 호출하는지 명확히 매핑된다는 점에서 인터페이스 설계의 중요성을 실감했다. 

 

조회 함수는 블록체인에 기록되지 않지만 상태를 변경하는 함수는 트랜잭션으로 기록되며 가스가 소모된다는 점은 실무적으로 매우 중요한 부분이다. 또한 스마트컨트랙트 간의 호출은 블록체인에 직접 기록되지 않지만 내부 트랜잭션으로 처리되며 trace를 통해 확인할 수 있다는 점도 실무에서 디버깅 시 고려해야 할 요소라고 느꼈다.

 

 마지막으로 스마트컨트랙트를 업그레이드 가능하게 만드는 Proxy 패턴은 기술적으로 어려워 보였지만, 실질적인 유지보수를 고려했을 때 반드시 익혀야 할 개념이라고 생각했다. 이번 학습을 통해 스마트컨트랙트는 단순한 코드가 아니라 하나의 계약이며 서비스의 핵심 로직이라는 점, 그리고 보안성과 변경 불가능성을 전제로 설계와 구현이 이루어져야 한다는 점을 깊이 있게 이해하게 되었다.

 


학습 일기

 

1. 공부 시작 
시간 인증(왼)
2. 공부 종료 시간 인증 (오)

 

3. 수강 인증

 

4. 학습 인증샷

 

 

 


https://bit.ly/4hTSJNB

#패스트캠퍼스 #직장인자기계발 #직장인공부 #환급챌린지 #패스트캠퍼스후기 #오공완