Hãy triển khai công cụ sửa đổi trong hợp đồng Marketplace
của chúng ta. Chúng ta sẽ định nghĩa một công cụ sửa đổi onlySeller
để xác minh xem người gọi hàm có thực sự là người bán một mặt hàng hay không.
Marketplace
của chúng tôi được cập nhật với công cụ sửa đổi onlySeller
:Độ rắn
// SPDX-Mã định danh giấy phép: MIT
độ rắn pragma ^0.8.6;
Contract Marketplace {
// Xác định cấu trúc mới cho Item
struct Item {
string name;
uint price;
address payable seller;
bool forSale;
}
// Mảng chứa tất cả các item
Item[] public items;
// Công cụ sửa đổi kiểm tra xem người gọi có phải là người bán một mặt hàng hay không
công cụ sửa đổi onlySeller(uint _itemId) {
require(msg.sender == items[_itemId].seller, "Only the owner can execute this");
_;
}
// Chức năng xóa một mặt hàng khỏi đợt giảm giá, được cập nhật với công cụ sửa đổi 'onlySeller'
hàm RemoveItemFromSale(uint _itemId) public onlySeller(_itemId) {
items[_itemId].forSale = false;
}
// Hàm cập nhật giá của một mặt hàng, được cập nhật với từ bổ nghĩa 'onlySeller'
hàm updateItemPrice(uint _itemId, uint _newPrice) public onlySeller(_itemId) {
items[_itemId].price = _newPrice;
}
}
Với công cụ sửa đổi onlySeller
được áp dụng, chúng tôi đã làm cho các hàm removeItemFromSale
và updateItemPrice
trở nên hiệu quả và dễ đọc hơn.
Sau khi nâng cao hợp đồng Marketplace
, hãy làm theo các bước tương tự như trong các bài học trước để biên dịch và triển khai nó.
Sau khi hợp đồng được triển khai, bạn có thể tương tác với nó giống như trước đây. Với những cải tiến mà chúng tôi đã thực hiện trong bài học này, hợp đồng của chúng tôi hiệu quả hơn, dễ đọc và bảo trì hơn.
Chúc mừng! Bây giờ bạn đã học cách tạo, nâng cao và tương tác với thị trường phi tập trung cơ bản trên chuỗi khối Ethereum. Điều này đánh dấu sự kết thúc khóa học dành cho người mới bắt đầu của chúng tôi về phát triển hợp đồng thông minh với Solidity. Hãy tiếp tục thử nghiệm, học hỏi và xây dựng!
Chúc mừng! Bạn đã hoàn thành khóa học dành cho người mới bắt đầu về phát triển hợp đồng thông minh bằng Solidity. Trong suốt bốn bài học, chúng tôi đã khám phá cách tạo, triển khai và tương tác với các hợp đồng thông minh trong môi trường Ethereum mô phỏng bằng cách sử dụng Remix IDE.
Hãy tóm tắt lại những gì chúng tôi đã đạt được:
Item.sol
, xác định một mặt hàng duy nhất có thể được mua hoặc bán.Marketplace.sol
, cho phép tạo, niêm yết và mua nhiều mặt hàng.Tiến về phía trước, có rất nhiều con đường để bạn khám phá. Bạn có thể tìm hiểu sâu hơn về Solidity, tìm hiểu về các tính năng nâng cao hơn và những cân nhắc về bảo mật. Bạn có thể khám phá các nền tảng blockchain khác như Polkadot, Cardano hoặc Binance Smart Chain. Ngoài ra, bạn có thể muốn tìm hiểu về cách phát triển giao diện người dùng cho dApp bằng Web3.js hoặc Ethers.js, hoặc về việc triển khai hợp đồng của bạn trên mạng Ethereum thực tế.
Dù bạn chọn con đường nào, hãy luôn nhớ: cách học hiệu quả nhất là thực hành. Vì vậy, đừng ngại thử nghiệm, xây dựng, phá vỡ và xây dựng lại. Mỗi thử thách bạn gặp phải là một cơ hội để học hỏi và phát triển.
Cảm ơn bạn đã tham gia khóa học này và tham gia vào thế giới phát triển blockchain thú vị. Cuộc cách mạng blockchain chỉ mới bắt đầu và các nhà phát triển như bạn đang ở tuyến đầu. Vì vậy, hãy tiếp tục học hỏi, tiếp tục xây dựng và quan trọng nhất là hãy vui vẻ!
Chúc mừng mã hóa!
Hãy triển khai công cụ sửa đổi trong hợp đồng Marketplace
của chúng ta. Chúng ta sẽ định nghĩa một công cụ sửa đổi onlySeller
để xác minh xem người gọi hàm có thực sự là người bán một mặt hàng hay không.
Marketplace
của chúng tôi được cập nhật với công cụ sửa đổi onlySeller
:Độ rắn
// SPDX-Mã định danh giấy phép: MIT
độ rắn pragma ^0.8.6;
Contract Marketplace {
// Xác định cấu trúc mới cho Item
struct Item {
string name;
uint price;
address payable seller;
bool forSale;
}
// Mảng chứa tất cả các item
Item[] public items;
// Công cụ sửa đổi kiểm tra xem người gọi có phải là người bán một mặt hàng hay không
công cụ sửa đổi onlySeller(uint _itemId) {
require(msg.sender == items[_itemId].seller, "Only the owner can execute this");
_;
}
// Chức năng xóa một mặt hàng khỏi đợt giảm giá, được cập nhật với công cụ sửa đổi 'onlySeller'
hàm RemoveItemFromSale(uint _itemId) public onlySeller(_itemId) {
items[_itemId].forSale = false;
}
// Hàm cập nhật giá của một mặt hàng, được cập nhật với từ bổ nghĩa 'onlySeller'
hàm updateItemPrice(uint _itemId, uint _newPrice) public onlySeller(_itemId) {
items[_itemId].price = _newPrice;
}
}
Với công cụ sửa đổi onlySeller
được áp dụng, chúng tôi đã làm cho các hàm removeItemFromSale
và updateItemPrice
trở nên hiệu quả và dễ đọc hơn.
Sau khi nâng cao hợp đồng Marketplace
, hãy làm theo các bước tương tự như trong các bài học trước để biên dịch và triển khai nó.
Sau khi hợp đồng được triển khai, bạn có thể tương tác với nó giống như trước đây. Với những cải tiến mà chúng tôi đã thực hiện trong bài học này, hợp đồng của chúng tôi hiệu quả hơn, dễ đọc và bảo trì hơn.
Chúc mừng! Bây giờ bạn đã học cách tạo, nâng cao và tương tác với thị trường phi tập trung cơ bản trên chuỗi khối Ethereum. Điều này đánh dấu sự kết thúc khóa học dành cho người mới bắt đầu của chúng tôi về phát triển hợp đồng thông minh với Solidity. Hãy tiếp tục thử nghiệm, học hỏi và xây dựng!
Chúc mừng! Bạn đã hoàn thành khóa học dành cho người mới bắt đầu về phát triển hợp đồng thông minh bằng Solidity. Trong suốt bốn bài học, chúng tôi đã khám phá cách tạo, triển khai và tương tác với các hợp đồng thông minh trong môi trường Ethereum mô phỏng bằng cách sử dụng Remix IDE.
Hãy tóm tắt lại những gì chúng tôi đã đạt được:
Item.sol
, xác định một mặt hàng duy nhất có thể được mua hoặc bán.Marketplace.sol
, cho phép tạo, niêm yết và mua nhiều mặt hàng.Tiến về phía trước, có rất nhiều con đường để bạn khám phá. Bạn có thể tìm hiểu sâu hơn về Solidity, tìm hiểu về các tính năng nâng cao hơn và những cân nhắc về bảo mật. Bạn có thể khám phá các nền tảng blockchain khác như Polkadot, Cardano hoặc Binance Smart Chain. Ngoài ra, bạn có thể muốn tìm hiểu về cách phát triển giao diện người dùng cho dApp bằng Web3.js hoặc Ethers.js, hoặc về việc triển khai hợp đồng của bạn trên mạng Ethereum thực tế.
Dù bạn chọn con đường nào, hãy luôn nhớ: cách học hiệu quả nhất là thực hành. Vì vậy, đừng ngại thử nghiệm, xây dựng, phá vỡ và xây dựng lại. Mỗi thử thách bạn gặp phải là một cơ hội để học hỏi và phát triển.
Cảm ơn bạn đã tham gia khóa học này và tham gia vào thế giới phát triển blockchain thú vị. Cuộc cách mạng blockchain chỉ mới bắt đầu và các nhà phát triển như bạn đang ở tuyến đầu. Vì vậy, hãy tiếp tục học hỏi, tiếp tục xây dựng và quan trọng nhất là hãy vui vẻ!
Chúc mừng mã hóa!