관리 메뉴

블록체인 주변 것들

크립토좀비 : 이더리움 개발언어 솔리디티 solidity 배우는 학습도구 CryptoZombie 본문

가상화폐 관련 상품

크립토좀비 : 이더리움 개발언어 솔리디티 solidity 배우는 학습도구 CryptoZombie

납득이 스티마 2018.04.01 00:00

프로그램을 개발을 직접해본지 너무 오래 되었는데요. 이더리움의 스마트계약을 만들어 보고 싶은 생각이 들어서, 솔리디티 교육 프로그램을 찾아 보았습니다. 이더리움은 튜링완전성을 갖고 있는 솔리디티 스크립트 언어로 만들어져서, 단순 코인전송 뿐 아니라, 스마트계약, dApp, DAO 를 운영할 수 있게 되었습니다. 이로 인해서 코인은 이더리움 이전 시대와 이더리움 이후 시대로 분리된다고 표현을 합니다. 그만큼 이더움이 코인사에 미친 영향력은 크죠. 그러니 이 솔리디티를 배우지 않고서, 코인을 안다고 할 수가 없을것 같아 배우기를 시작해 보려 한 것입니다. 그런데 이게 웬일인가요? 솔리디티를 게임으로 배울 수 있도록 만들어 놓은 서비스가 있었네요. 정말 좋은 세상 입니다!!



크립토좀비 홈페이지 : https://cryptozombies.io


프로그래밍 공부를 하는건 좋지만, 영어라 스트레스좀 받겠다 싶을때, 우측 상단을 보니, 한국어 메뉴가 있습니다.




클릭을 해보니, 한국어로 설명이 나옵니다. 한글도 어색하지 않고, 적당 합니다.





"더 알아보기"를 클릭해서 좀 알아봐야 겠죠? 누가 만들었으며, 왜 무료인지 한번 보시죠. Loom Network"라는 곳에서 만들었네요. 코딩을 가르쳐 주는 프로그램을 만들 정도면, 블럭체인으로는 한가닥 하겠다 싶겠죠? 아마도 다양한 제안과 의뢰가 들어가고 있을것 같습니다. 물론 프로그램에 대한 문의가 훨씬 더 많겠죠. ^^





"시작하세요! 무료입니다" 버튼을 클릭해서 시작해 보겠습니다.

현재 4가지 레슨이 있습니다. 

  • 레슨1 : 좀비 공장 만들기

  • 레슨2 : 좀비가 희생물을 공격하다

  • 레슨3 : 고급 솔리디티 개념

  • 레슨4 : 좀비 전투 시스템





로그인을 하여, 진행하고 있는 과정을 저장할 수도 있으나, 그냥 진행해도 상관 없습니다. 이제부터 반말을 합니다. "환영한다, 인간이여!" 마치 게임의 세게에 들어간 느낌 입니다.





START버튼을 클릭 하면, 레슨1의 챕터1이 시작 됩니다. 왼쪽에 텍스트 내용을 읽으면서, 우측의 프로그래밍 요소를 조작 하면 됩니다.




레슨1의 챕터2는 컨트랙트에 대한 내용 인데요. 이제 부터 본격적인 프로그래밍 연습이라 할 수 있습니다. 우측의 코딩창에 좌측의 설명과 지시대로 코딩을 하고, 좌측 하단의 정답확인하기 버튼을 클릭하여, 내가 코딩한 결과가 맞는지 확인 합니다.





제대로 코딩을 하고나면, Victory 화면이 표시되고, 좀비가 화면 좌측에서 우측으로 지나 갑니다. 세러머니 인듯...




이러한 방식으로 진행을 하면, 레슨1에서만 14개의 챕터가 있습니다.

챕터 1: 레슨 개요

챕터 2: 컨트랙트

챕터 3: 상태 변수 & 정수

챕터 4: 수학 연산

챕터 5: 구조체

챕터 6: 배열

챕터 7: 함수 선언

챕터 8: 구조체와 배열 활용하기

챕터 9: Private / Public 함수

챕터 10: 함수 더 알아보기

챕터 11: Keccak256과 형 변환

챕터 12: 종합하기

챕터 13: 이벤트

챕터 14: Web3.js




이렇게 한 단계씩 진행을 하다 보면, 챕터 14에 도달 합니다. 아래 화면은 마지막 14챕터의 Web3.js 화면 입니다.





드디어, 레슨1은 모두 마치고 나면, 아래 화면과 같은 화면이 표시 됩니다. 이제 부터 레슨2를 진행하려면, 로그인을 해야 합니다. 





github 계정이나, google 계정이 있거나, 별도의 이메일로 가입해도 됩니다.





가입을 하고 나서, 레슨2로 넘어가면, 나오는 화면 입니다.




레슨1에 비해서 레슨2는 난이도가 확실히 올라갑니다. 이전에 프로그래밍을 해보신 분이라면, 쉽게 진행할 수 있을 수 있으나 그렇지 않다면, 상당한 난관이 부딪히실것으로 예상이 됩니다.


레슨3, 레슨4 까지 진행해 보시고,

부디 모든 난관이 해쳐나가시어 이더리움을 떡 주무르시듯 할 수 있으기를 바랍니다.


참고로, 이전에 이더리움 dApp 사이트크립토 키티를 포함하여, 대부분의 dApp이 웹사이트로 만들어져 있는 이유를 몰랐는데, 이번에 만들어 보민, javascript와 연동하여 웹과 이더리움 블럭체인이 연동될 수 있도록 기본구조가 되어 있었기 때문이라는 사실을 알게되었습니다. 더 고급 레벨로 가면, 다른 방법으로 이더리움 블럭체인을 호출하는 방법이 있겠죠.








14 Comments
  • 프로필사진 *저녁노을* 2018.04.01 05:25 신고 잘 보고 가요

    즐거운 주말 되세요^^
  • 프로필사진 납득이 스티마 2018.04.01 12:59 신고 노을님 즐거운 주말 되세요~ ^^
  • 프로필사진 Deborah 2018.04.01 08:58 신고 이런것은 생소한데요. 신기하게 봤네요.
  • 프로필사진 납득이 스티마 2018.04.01 13:01 신고 프로그램을 게임형태로 배우는 것입니다.
    배우는 사람에 따라 호불호가 많이 갈립니다.
  • 프로필사진 Deborah 2018.04.01 18:26 신고 아..이런식으로 배우면 아무래도 더 재미있게 배울것 같기도해요.
  • 프로필사진 peterjun 2018.04.02 00:51 신고 이렇게 배울 수 있군요.
    좀 더 재미있께 학습할 수 있는 것 같아요.
    전 프로그래밍을 전공했지만... 할 줄 모르네요.
    학교는 왜 다닌건지.. ㅠㅠ
  • 프로필사진 납득이 스티마 2018.04.02 09:29 신고 어느정도 이해가 있는 상태에서는 게임형태로 배우는게 재미 있는데요.
    그렇지 않은 상태에서 게임형태로 하다 보면, 기초도 못잡고 헤메는 경우가 있더라구요. 이게 정말 좋은 방식인지는 그래서 호불호가 갈리는것 같아요.

    프로그래밍을 전공하셨다면, 보고 들으신게 있으시기에, 조금만 해보시면, 아마도 하실 수 있으실것으로 예상해 봅니다. ^^
  • 프로필사진 공수래공수거 2018.04.02 08:13 신고 프로그램을 직접 개발도 하셨었군요
    이런분들을 보면 웬지 존경심이 앞섭니다 ㅎ
  • 프로필사진 납득이 스티마 2018.04.02 09:32 신고 어이쿠, 존경은요...
    프로그램은 요즘에는 초등학생도 코딩교육이라는 형식으로 배우고 있습니다.
    어르신들도 배우시구요.
    이제 프로그램은 우리 일상생활에서 써먹을 일이 많아 질것 같습니다. ^^;
  • 프로필사진 미구리 2018.04.03 22:25 신고 지피지기 백전백승이라고 코인에 투자하기전에 코인에 대해서 먼저 알아보려고 합니다. 코인은 제 전공과는 다른 부분이여서 굉장히 어렵게 느껴집니다. 공부용으로 코인 개발을 하고 싶은데 어디부터 시작해야 할지 막막합니다. 또 제 자녀가 이런것에 관심이 많아서 이따금 저에게 코인에 대해서 물어보면 대답을 못해주니 너무 안타깝습니다. 포스팅 해주신 사이트에 들어가서 마지막 단계까지 하면 좀 공부가 될까요?
  • 프로필사진 납득이 스티마 2018.04.04 11:03 신고 단번에 코인을 만든다고 한다면, 당연히 어렵겠지요.
    이번에 소개해 드린 사이트는 이더리움의 dApp을 만들때 사용되는 언어 입니다.

    먼저 여기에서부터 시작 하시고, 진짜 코인을 만드는 스터디를 하시겠다면, 개별 코인의 소스를 보셔야 할 겁니다.

    대부분의 코인은 github에 소스에 오픈되어 있으므로, 비트코인 소스를 받아서 공부를 하시면 좋을것 같습니다. 비트코인 소스를 분석하신 분들이 많이 있기에 관련 자료를 찾기도 편하실거구요. 다만, C++ 언어를 먼저 다룰줄 아셔어 공부가 수월하겠죠.

  • 프로필사진 버블프라이스 2018.04.11 05:12 신고 솔리디티를 게임으로 배울 수 있도록 만들어 놓은 서비스가 있다니 정말 유용하네요^^ 게임을
    통한 학습방법 정말 최고입니다 ㅎㅎ
  • 프로필사진 납득이 스티마 2018.04.11 23:19 신고 해보니, 게임으로 배운다기 보다, 게임 만들기를 배우는 것 같습니다. ^^
  • 프로필사진 초보자 2018.05.21 15:09 신고 선생님..! 몇가지 궁금한것들만 좀 여쭤봐도 될까요?? 블록체인에 관심이 많은 청년입니다.
    솔리디티를 배워서 스마트계약시스템을 언젠가 제가 만들고자 하는 웹에 도입하고 싶은데, 여기서 궁금한것은...
    1. 솔리디티는 다른 언어들과 융합되어 사용되는 것인가요?? 아니면 독자적으로 사용할 수 있게끔 되있는건가요??
    2. 같이 사용된다면 어플,웹페이지등을 만드려고 할때 필수적으로 배워야 할 언어들은 무엇인가요??
    (html,자바,자바스크립트 등등)

    솔리디티가 아직 흔한 언어가 아니라 혼자 알아보고 배우려니 힘들어서 도움을 청해봅니다.

    알려주세요..ㅠㅠ
댓글쓰기 폼