Bước 2: Đọc hiểu ứng dụng Web3 – NEAR Certificated Developer

To Share and +4 nLEARNs

Trong phần trước bạn đã tìm hiểu về Web3, kiến trúc ứng dụng Web3 và giới thiệu về Near Protocol. Để chuẩn bị xây dựng ứng dụng Web3 trên Near trong những bài tiếp theo, ở bài này bạn sẽ tập trung vào học cách đọc các contract. Cùng tìm hiểu xem những contract đó quản lý tiền, tài sản, danh tính và quyền sở hữu như thế nào nhé!

Để học tốt bài này

Mục tiêu bài học hôm nay là bạn cố gắng để đọc được nhiều smart contract nhất có thể. Với mỗi contract hoặc project hãy đặt những câu hỏi:

  • Mục đích của contract này là để làm gì?
  • Nó đang được viết như thế nào?
  • Tại sao nó lại được viết như vậy?

Lưu ý:

  • Có rất nhiều contract với các ngôn ngữ lập trình Javascript, Rust, Assembly Script. Bạn hãy chọn ngôn ngữ phù hợp với chính mình nhé.
  • Bạn không cần phải build hay test bất kì contract nào
  • Bạn cũng không cần hiểu toàn bộ từng dòng code
  • Bạn hãy tập trung đọc những gì cơ bản nhất của contract, liên kết nghiệp vụ của contract với những dòng code.

Đến đây, có thể bạn vẫn chưa thực sự hiểu rõ mình nên làm thế nào? bắt đầu từ đâu? Không sao cả, LNC sẽ hướng dẫn bạn cách đọc một project cơ bản nhất nhé!. Chúng ta cùng bắt đầu với…

Hello NEAR projects – Javascript

Github project: https://github.com/nearvndev/hello-near-ts.git

Hello NEAR là một dApps đơn giản dùng để lưu trữ một lời chào lên NEAR và hiển thị cho người dùng. Ứng dụng gồm 2 phần chính:

  • Một smart contract cho phép lưu trữ và thay đổi một lời chào
  • Giao diện web đơn giản hiển thị lời chào và cho phép người dùng thay đổi

Ở đây chúng ta sẽ tập trung vào đọc project Hello NEAR với ngôn ngữ lập trình Javascript.

Cấu trúc của project gồm:

  • Code frontend – ReactJs trong folder /frontend
  • Code smart contract trong folder /contract

Contract

Bạn truy cập vào file /contract/src/contract.ts

Trong contract lúc này có class HelloNear đại diện cho smart contract:

  • Smart contract lưu trữ một biến greeting có giá trị ban đầu là “Hello”
  • Function get_greeting được đánh dấu @view({}), tức là function này chỉ đọc data trong blockchain, hoàn toàn không mất phí giao dịch. get_greeting trả lại giá trị greeting đang lưu trữ.
  • Function set_greeting được đánh dấu @call({}), function thay đổi giá trị đang lưu trữ trên blockchain vì vậy khi gọi function sẽ mất phí giao dịch. set_greeting lưu lại giá trị greeting mới do người dùng nhập vào.

Rất đơn giản đúng không, nhiệm vụ của bạn sẽ là đọc thật nhiều contract nhất có thể trong danh sách dưới đây và hoàn thành bài tập cuối bài nhé!

Hoạt động chính

Đọc hiểu các contract theo ngôn ngữ mà bạn yêu thích, hãy bắt đầu từ những contract cơ bản đến nâng cao nhé:

Generate comment with AI 2 nL

✅ Bây giờ, là thời gian để bạn tổng hợp lại kết quả của buổi học !

Scroll to Top