# Deploy a contract **Published by:** [boater](https://paragraph.com/@boater/) **Published on:** 2023-01-31 **URL:** https://paragraph.com/@boater/deploy-a-contract ## Content 1、open this website with chrome.2、accept and then click next, done.3、click the small button(create new file),name new file with Function.solYou can get:4、copy this code to Function.sol// SPDX-License-Identifier: MIT pragma solidity ^0.8.4; contract FunctionTypes{ uint256 public number = 5; constructor() payable {} // 函数类型 // function (<parameter types>) {internal|external} [pure|view|payable] [returns (<return types>)] // 默认function function add() external{ number = number + 1; } // pure: 纯纯牛马 function addPure(uint256 _number) external pure returns(uint256 new_number){ new_number = _number+1; } // view: 看客 function addView() external view returns(uint256 new_number) { new_number = number + 1; } // internal: 内部 function minus() internal { number = number - 1; } // 合约内的函数可以调用内部函数 function minusCall() external { minus(); } // payable: 递钱,能给合约支付eth的函数 function minusPayable() external payable returns(uint256 balance) { minus(); balance = address(this).balance; } } 5、click the red “1” and then click “2” to compile the file use a high level compiler , such as 0.8.8 6、Turn the metamsk network to scroll alpha testnet, click “red 1”, then choose injected provider-metamsk, and then click deploy ## Publication Information - [boater](https://paragraph.com/@boater/): Publication homepage - [All Posts](https://paragraph.com/@boater/): More posts from this publication - [RSS Feed](https://api.paragraph.com/blogs/rss/@boater): Subscribe to updates