Một tập tin Solidity sẽ có đuôi mở rộng là .sol và có chứa các thành phần cơ bản như sau:

  • SPDX license.
  • Version pragma.
  • Các định nghĩa struct, contract, hàm, etc.

SPDX License

Là một dòng comment cho biết giấy phép của code. Dòng này có thể có dạng như sau:

// SPDX-License-Identifier: MIT

Version Pragma

Một tập tin Solidity luôn chứa một dòng khai báo version của Solidity compiler.

Chẳng hạn, nếu ta muốn contract cần được biên dịch bằng compiler có version lớn hơn hoặc bằng 0.5.0 và bé hơn 0.6.0 thì ta khai báo như sau:

// SPDX-License-Identifier: MIT
pragma solidity >=0.5.0 <0.6.0;

Hoặc khai báo compiler có phiên bản từ 0.8.0 trở về sau:

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

Phiên bản trong Solidity được viết theo kiểu Sematic Versioning (SemVer).

Việc khai báo version giúp đảm bảo rằng contract tương thích với compiler vì Solidity là một ngôn ngữ mới và do đó mà compiler của nó liên tục được cập nhật.

Contract

Tất cả code ở trong Solidity đều được đóng gói ở bên trong các contract. Contract là đơn vị cơ bản trong các ứng dụng Ethereum.

Có thể xem contract ở trong Solidity tương tự với một class ở trong OOP. Vì thế, contract cũng sẽ có các thuộc tính và phương thức.

Khai báo contract bằng từ khóa contract như sau:

contract HelloWorld {
	
}

Một contract sẽ gồm những thành phần sau:

Footnotes

  1. Xem thêm Solidity - Data Types