1. What is a smart contract? How are they deployed? You should be able to describe how a smart contract is deployed and the necessary steps.
Smart contract is essentially a piece of code or a program that resides in the blockchain. These contracts can be called directly by an external user or through other smart contracts. Smart contracts are primarily written in Solidity and must be compiled to its bytecode equivalent that can be understood by the EVM. To deploy the contract, a transaction must be made to the blockchain with the transaction’s receiver being the zero address. The bytecode is then appended to the transaction’s data field. The bytecode used in the process of a new contract deployment is referred to as the creation bytecode. Transaction with zero address as its receiver will be understood by the EVM as a contract creation transaction.
2. What is gas? Why is gas optimization such a big focus when building smart contracts?
Gas is a mechanism use