Wichita Serchuit
Under Ledger
Published in
3 min readFeb 15, 2022

--

Get started with blockchain development — Blockchain dev เริ่มยังไงดี?

ปฏิเสธไม่ได้เลยว่าตอนนี้ Blockchain development เป็นอีกหนึ่งศาสตร์ เป็นอีกหนึ่ง Topic ที่ชาว dev กำลังให้ความสนใจ

เนื่องจากกระแสของ DeFi, GameFi หรือการนำเทคโนโลยีของ Blockchain เข้ามาใช้ในการขยาย limitation และเพิ่ม Security ของ Application ให้ยิ่งดีขึ้น อีกทั้งยังเป็นเทคโนโลยีที่มีอนาคตอีกไกลแน่ๆ
(สามารถอ่านเพิ่มเติมได้ที่ The Future of Blockchain Technology in 2022)

แต่อยู่ๆ จะให้เริ่มศึกษาด้วยการเปิด Smart Contract ขึ้นมาอ่านเลย บางคนก็อาจจะจับประเด็นไม่ได้ หรืออาจจะไม่ได้เข้าใจการทำงานทั้งหมดรึเปล่า?

.
.
.

ไม่เป็นไรทุกคน เราไปงงและหายงงล่วงหน้ามาให้แล้ว!

ก่อนอื่นเลย พื้นฐาน programming language ก็คือสำคัญมาก
เริ่มต้นจากทำความเข้าใจเบสิก HTML ก่อน เพื่อเข้าใจพื้นฐานการสร้าง Web Application ซึ่งใช้เวลาไม่นานรับรองเกท จากนั้นต่อเลยที่ JavaScript กับ Solidity

ศึกษาการเขียน HTML และ JavaScript แนะนำเว็บ W3Schools เลย

ซึ่งอันที่จริงแล้ว Solidity ก็เป็นแค่หนึ่ง option ยอดฮิตเท่านั้น (สำหรับ chain ที่เป็น EVM-Based) แต่ว่าแต่ละ chain ก็มีภาษาที่ใช้เขียนแตกต่างกันไป ทั้งนี้อาจจะลองตั้งเป้าก่อน ว่าเราอยากจะเริ่มต้นกับ chain ไหน

ซึ่งในบทความนี้จะเน้นไปที่ EVM-Based ก่อนนะคะ

Top 6 smart contract platform in 2021
Top 6 smart contract platform (https://www.itransition.com/blog/smart-contract-platforms)

Environment, Steps และ Tools

  • Truffle Framework - ใช้เขียน smart contract และติดต่อกับ Blockchain ได้ง่ายขึ้น มี library ไว้ช่วยเขียนเยอะ
  • Ganache - Truffle suite ใช้สำหรับเป็น blockchain simulator
  • Remix IDE - อีกหนึ่ง tool ไว้สำหรับ code, compile และ deploy Smart Contract และสามารถใช้งานผ่าน browser ได้เลย ไม่ต้องติดตั้ง
  • Metamask - เอาไว้เก็บ Key ที่จะใช้ในการ Deploy Smart Contract
  • Blockchain Explorer - ใช้ monitor ธุรกรรมที่เกิดขึ้น เช่น EtherScan, BscScan หรือ PolygonScan แล้วแต่ว่าธุรกรรมเกิดบน chain ไหนเลย

โดยการติดตั้งโปรแกรมต่าง ๆ ที่ใช้ในการเขียน Smart Contract สามารถศึกษาเพิ่มเติมได้จากบทความ ติดตั้งเครื่องให้พร้อมเขียนภาษา Solidity ด้วย VSCode, Truffle, Infura และ Ganache อธิบายเข้าใจง่ายอยู่นะ

working process and related tools of DApp development
source: https://livebook.manning.com/book/blockchain-in-action/chapter-6/195

จากภาพด้านล่าง เป็นตัวอย่างของ DApp project diagram ซึ่งทำให้เห็นการใช้งานของแต่ละ tool ได้ชัดเจนมากขึ้น

Working flow and related tools of DApp development
source: https://github.com/tippi-fifestarr/proof-of-workout

DeFi Developer Road Map

แหล่งรวบรวมบทความและ website อ้างอิงที่ใช้ในการ สร้าง DeFi หรือ Blockchain โดยรวมเอาบทความ, skill ที่เกี่ยวข้อง, tool รวมถึง practice ที่น่าสนใจ
ทั้งนี้เจ้าของ GitHub เองเปิดโอกาสให้เราสามารถ Submit pull request เพื่อเสนอสิ่งที่น่าสนใจเพิ่มได้

ขอบอกเลยว่า Link ข้อมูลเยอะมากกกก ก.ไก่ล้านตัว มีหลายพาร์ทเลย ทั้งที่เป็น Smart Contract, Frontend รวมถึงการ Test Blockchain ด้วย

Master Solidity for Blockchain: Step-by-Step Guide:

บทความในตำนาน ที่บอกต่อกันรุ่นสู่รุ่น!
อธิบายการพัฒนา Smart contract ด้วยภาษา Solidity อธิบายไว้ละเอียดพอสมควรเลย โดยแบ่งออกเป็น 6 พาร์ทหลักๆ เริ่มตั้งแต่การแนะนำ Tool ที่ใช้ไปถึงการเขียน function พื้นฐานที่จำเป็น

และถ้าใครไม่อยากอ่านก็ดูใน YouTube channel ได้เลย นอกจากนี้ “Dapp University Channel” เขายังทำคลิปที่เกี่ยวกับ Blockchain อีกเพียบ แนะนำให้กด Subscribe ไว้รับรองมีประโยชน์แน่นอน

source: https://www.youtube.com/channel/UCY0xL8V6NzzFcwzHCgB8orQ

CryptoZombies:

ตัวช่วยในการเริ่มศึกษา “การเขียน Smart Contract ด้วยภาษา Solidity” ที่คนไม่ใช่เนิร์ดหรือเชี่ยวชาญ programming ก็สามารถเข้าใจได้อย่างง่าย มีการให้ลอง coding ด้วยตัวเอง และอธิบายการเขียนหรือ method ทีละสเตปๆ ตามลำดับที่ควรรู้

โดยสอนตั้งแต่พื้นฐานการเริ่มต้นเขียน smart contract ด้วยภาษา Solidity ผ่านการยกตัวอย่างการเขียน smart contact สร้างเกม NFT ซอมบี้

source: https://dappradar.com/loom/other/cryptozombies

แถมๆ

ทั้งนี้ทั้งนั้น Blockchain ปัจจุบันก็มี Chain ใหม่ๆ ผุดขึ้นมามากมาย (เพื่ออุดรูรั่วและเพิ่มประสิทธิภาพให้ตัวก่อนๆ) ซึ่งบางตัวก็อาจจะมีภาษา หรือ Tool ที่เกิดมาเพื่อ Chain นั้นๆ จึงอาจจะต้องศึกษาและอัพเดทเจาะไปเป็นตัวๆ ไป

--

--