When you are doing local development, the most common way to create a canister smart contract involves creating a new project, writing the front-end and back-end code, then running the dfx deploy command to register, build, and deploy your project.
Behind the scenes, the dfx deploy command performs the following steps:
- Creates one or more canister identifiers for your project.
- Compiles one or more program files for your project into WebAssembly.
- Deploys the project as a canister running on the Internet Computer blockchain mainnet.
If you are deploying on the network, you can use your cycles wallet to create a canister by registering a new canister identifier before writing any code.
For more information, check out various topics on the Developer Center.