NULS Workshop: Smart Contracts — How to Develop, Deploy and Invoke

in #nuls6 years ago (edited)

NULS smart contract with modular-based design is Turing-complete, compatible with UTXO model, based on JVM (Java Virtual Machine) realization and in-built with NVM module; and its interpreter will provide seamless support for JVM system and other major programming languages in succession. So, developers can use the familiar languages to design NULS smart contract, and realize minute-level deployment. After finishing smart contract, developers can deploy it in link in a quick manner. Meanwhile, NULS smart contract will run in a fenced mode for security.

We intend to simplify the development, deployment and calling of smart contract so as to increase developers’ interest in application development, and create a smart contract repository in the coming future.

There are three steps for smart contract: developing, deploying and calling. In addition, we prepare the corresponding detailed operation documents for different steps, and wish they can provide better development experience for developers.

1. Developing smart contracts

Developers shall be experienced in developing smart contract and will get useful documents and tools from NULS.

Step 1: Developers may install NULS plugins in IDEA by reference to NULS IDEA Plugin User Manual HERE.

Step 2: NULS smart contract’s syntax is a subset of JAVA syntax, so developers have to be familiar with NULS Smart Contract Development Manual HERE.

Step 3: Where developers are to publish Token, the contract to be developed shall comply with the token interface standard. For NRC-20 Token Standard, click HERE.

2. Deploying smart contracts

After finishing developing smart contract, developers may deploy it via IDEA plugins or node wallet’s user interface.

  • To deploy it via IDEA plugins, please see IDEA Plugin User Manual HERE.
  • To deploy it via node wallet’s user interface, please refer to User Document of Wallet Smart Contract HERE.

Developers are strongly recommended to conduct a trial development and application on test-net. Please apply for NULS of test-net HERE.

3. Invoking smart contracts

NULS node wallet provides user interface for all users to call smart contract by readable or writable method. Calling writable method consumes NULS as service charges, then the account address calling writable method shall have enough NULS to avoid failure in calling. Calculation of service charges is referred to the document HERE.

To invoke smart contract via user interface, please refer to User Document of Wallet Smart Contract HERE.

Collecting bugs

In case of any bugs in development and test-net application, please raise questions in the community forum or leave messages in bug collection posts. We will process and reply as soon as possible.

Have you joined all our social media channels?

Official Website :https://nuls.io/
Official Telegram : https://t.me/Nulsio
Official News Telegram : https://t.me/NulsNews
Official Twitter : https://twitter.com/nulsservice
Official Reddit : https://www.reddit.com/r/nulsservice/
Official Medium : https://medium.com/@nuls
Official Chinese Telegram : https://t.me/Nulscn
Official Facebook : https://www.facebook.com/nulscommunity
Official Steemit : https://steemit.com/@nuls
Official Forum : https://nuls.community/

Sort:  

Thanks. I will look into it.

Congratulations @nuls! You have completed the following achievement on the Steem blockchain and have been rewarded with new badge(s) :

You got more than 10 replies. Your next target is to reach 50 replies.

Click here to view your Board of Honor
If you no longer want to receive notifications, reply to this comment with the word STOP

Do not miss the last post from @steemitboard:

SteemitBoard notifications improved

Support SteemitBoard's project! Vote for its witness and get one more award!