วันจันทร์, พฤษภาคม 20

มาออกแบบ App บน Blockchain กันเถอะ

สวัสดีครับผม..จากการเขียนบทความแนะนำเกี่ยวกับมุมมองต่างๆของ Blockchain มากันหลายมุมมองแล้ว วันนี้ทีมงานอยากขออนุญาตมาเขียนในมุมมองว่า

ถ้าเราจะออกแบบ Application ซัก 1 App บน Blockchain นั้นเราต้องคิดอย่างไรและมีมุมมองอย่างไรกันนะครับผมมม…

ขอเริ่มที่ MVC
ที่ขอเริ่มต้นที่ MVC Model เพราะคิดว่าเป็นรูปแบบที่นักพัฒนาระบบส่วนใหญ่จะรู้จักกันเป็นอย่างดีอยู่แล้ว ดังภาพเลยครับ

จากภาพเราจะเห็นว่า

  • View คือ ส่วนที่เรามีไว้ให้ผู้ใช้งานทำงานต่างๆอะไรก็สุดแล้วแต่ Application จะทำงานไป อาทิ ผู้ใช้งานเข้าใจว่ากดปุ่มนี้แล้วระบบจะบันทึกข้อมูลให้ซึ่งนับเป็นสิ่งสำคัญกับความเข้าใจของผู้ใช้งาน บางระบบออกแบบ View ไม่ดีแม้ว่าระบบหลังบ้านจะดีขนาดไหนผู้ใช้งานก็ไม่ชอบมันอยู่ดี
  • Control คือ ส่วนที่จะทำงานจริงๆ หลังจากที่ผู้ใช้งานกดปุ่มอะไรบางอย่างไปแล้วนั้นเองครับว่าจะให้ระบบเราทำอะไรเราก็จะมาเขียน Logic กันหนักๆกันตรงนี้ อาทิ หลังจากผู้ใช้งานกดปุ่มบันทึกแล้วระบบก็จะไปทำการตรวจสอบว่ามีไฟล์เดิมอยู่แล้วในระบบหรือไม่หากไม่มีก็จะบันทึกข้อมูลทันที หากมีข้อมูลอยู่แล้วก็จะถามผู้ใช้งานว่าจะลบไฟล์นั้นๆไหม
  • Model คือ ส่วนที่เราใช้ในการเก็บข้อมูลจริง โดยปกติที่นิยมในปัจจุบันก็คือ ระบบฐานข้อมูล ระบบไฟล์ ที่ง่ายและสะดวกในการเรียกคืนข้อมูลหากผู้ใช้งานต้องการจะได้ข้อมูลคืนมา

 

MVC เสริมด้วย Blockchain

ที่นี้ก็มาถึงคิวของ Blockchain กันบ้างครับ เวลาเราพัฒนา App บน Blockchain ก็ให้คิดเหมือนเดิมกับ MVC ปกตินี้หละครับง่ายดี แต่ที่เพิ่มเข้ามาคือ เจ้า Blockchain มันจะมาช่วยอำนวยความสะดวกใน Layer ของ Control และ Model ให้ไปในตัวเลยครับ ไปดูภาพกันก่อนดีกว่าครับ

จากภาพเราจะพบว่า อ้อออ..เราก็ยังคิดแบบเดิมได้นะในการพัฒนาระบบบน Blockchain และ Blockchain มันมาช่วยในแง่จัดการข้อมูลให้โดยอัตโนมัติเลยไม่ต้องปวดหัวว่าจะใช้ฐานข้อมูลอะไร จะ Write file เก็บไว้ที่ไหนและต้อง Backup ถี่มากน้อยแค่ไหน สมมติว่าองค์กรของท่านตั้ง Private Blockchain Network ขึ้นมาแล้วก็หมูเลยครับไม่ต้องไปเขียนต่อ Database ให้วุ่นวาย Application อะไรๆ ก็สามารถเอาข้อมูลมาเก็บบน Private Blockchain Network นี้ได้ทันทีเลย (ท่านใดสงสัยว่า Private Blockchain Network คืออะไรอ่านได้ที่นี้เลยครับ) และด้วยความทนทานและความพร้อมเรียกใช้งานของระบบ Blockchain นั้นทำให้ท่านหมดห่วงเลยกับปัญหาฐานข้อมูลตายที่เราเจอๆกันบ่อยๆ

Blockchain : Smart Contract มาช่วยตรงไหน

ให้คิดง่ายๆ ครับ Smart Contract ก็คือ Control แบบหนึ่งนั้นเอง ปกติเราเอาเงื่อนไขการทำงานใส่ไว้ใน Application ของเราใช่ไหมครับ ที่นี้เราแปลงมันให้มาอยู่ในรูปของ Smart Contract ซะ

ง่ายมากๆเลย หากในองค์กรมีเงื่อนไขที่ต้องตรวจสอบเหมือนกันและปกติเงื่อนไขเหล่านั้นจะถูกกระจายอยู่ใน Application ต่างๆ ที่นี้เราก็สามารถสร้างเป็นเงื่อนไขกลางขึ้นมาในรูปของ Smart Contract ได้เลยทันทีและนี้คือสิ่งที่ว่า Blockchain มาช่วย Control อย่างไร

เราก็พัฒนา Application ต่อยอดจาก Smart Contract กลางอีกนิดหน่อยก็เรียกว่า App เสร็จพร้อมเสริฟกันเลยทีเดียว
(ท่านในสงสัยว่า Smart Contract เขียนอย่างไร อ่านได้ที่บทความชุด Smart Contect ที่นี้เลยครับ)

ส่งท้ายครับ

เห็นไหมครับง่ายมากๆเลยกับมุมองในการพัฒนาระบบบน Blockchain จริงๆแล้วเทคโนโลยีตัวนี้ที่เค้าว่ากันว่าจะมาเปลี่ยนโลกนั้นไม่ไกลเกินเอื้อมครับ ทีนี้เราๆ นักพัฒนาระบบไทย ก็คงต้องปรับตัวกับเทคโนโลยีดีๆ เหล่านี้ที่จะเข้ามาเปลี่ยนแปลงโลกไปครับผมมม..วันนี้ขอจากกันแค่นี้ก่อนในโอกาสหน้าจะมาขอรับใช้พ่อแม่พี่น้องด้วยบทความต่อไปอีกนะครับผมม

Facebook Comments