I just have a few questions about upgradeable contracts. I watched the UUPS tutorial on youtube, and wanted to implement it into my project. Currently, I’m working on a NFT marketplace (token contracts, and marketplace contracts), and I was wondering,
-
Is UUPS the proper upgradeable pattern to go with? (
-
Do all contracts in my project have to be “Upgradeable”? Is it possible to use contracts that use constructors as well?
-
Do I need to add the
uint256[50] private __gap;
line at the bottome of every contract I write?
Any help would be helpful thank you.