Introduction
Optional parameters let you call a method without giving all the values. This makes your code simpler and easier to use.
When a method has many parameters but some usually have the same value.
When you want to give users of your method the choice to skip some arguments.
When you want to avoid writing many method overloads for different parameter sets.
When you want to provide default behavior but allow customization.
When you want to make your API easier to understand and use.