Required Named Parameters
Part of the Fundamentals section of Coddy's Dart journey — lesson 74 of 94.
The required keyword forces named parameters to be provided when calling a function. Without it, named parameters are optional by default.
Create a function with required named parameters:
void createUser({required String name, required int age}) {
print('User created: $name, $age years old');
}
Call the function with all required parameters:
void main() {
createUser(name: 'Alex', age: 30);
}
After executing the above code, the output will be:
User created: Alex, 30 years oldIf you try to omit a required parameter, Dart will show an error:
// This would cause an error:
// createUser(name: 'Alex'); // Missing required parameter 'age'
Challenge
BeginnerIn this challenge, you'll practice using the required keyword with named parameters in Dart. The required keyword ensures that a named parameter must be provided when calling a function.
Complete the createUserProfile function by adding the required keyword to make both the name and age parameters required.
Try it yourself
void main() {
// This function call is already set up for you
String profile = createUserProfile(name: 'Alice', age: 30);
print(profile);
// Uncomment this line to see what happens when required parameters are missing
// String invalidProfile = createUserProfile(name: 'Bob');
}
// TODO: Add the 'required' keyword to make both parameters required
String createUserProfile({String name, int age}) {
return 'User Profile: $name, $age years old';
}
This lesson includes a short quiz. Start the lesson to answer it and track your progress.
All lessons in Fundamentals
4Operators Part 2
Comparison OperatorsLogical ANDLogical ORLogical NOTType Test OperatorsRecap - Making Comparisons7Working with Strings
String ConcatenationString InterpolationMulti-line StringsString PropertiesBasic String Methods10Collections - Maps Basics
What are Maps?Creating a MapAccessing Values by KeyKey-Value PairsGetting Map SizeGetting KeysGetting ValuesChecking if a Key Exists13Null Safety In Depth
Understanding NullNullable TypesNon-Nullable TypesNull Assertion OperatorLate InitializationRecap - Handling Null Safely16Fundamentals Challenges
Challenge: List of calculationChallenge: Sum of numbersChallenge: Find product2Variables and Basic Data Types
What are Variables?StringsIntegers (int)Doubles (double)Booleans (bool)Type Inference with 'var'Final VariablesConstant VariablesNaming ConventionsBasic Null SafetyRecap - Declaring Variables8Control Flow - Loops
The 'for' LoopThe 'while' LoopThe 'do-while' LoopUsing 'break' in LoopsUsing 'continue' in LoopsRecap - Repeating Code3Operators Part 1
Arithmetic OperatorsInteger DivisionModulo OperatorIncrement and DecrementAssignment ShortcutsRecap - Simple Calculations6Control Flow - Decision Making
The 'if' StatementThe 'else' StatementThe 'else if' StatementRecap - Simple DecisionsNested 'if' StatementsThe 'switch' Statement9Collections - Lists Basics
What are Lists?Creating a ListAccessing by IndexGetting List LengthAdding ElementsRemoving ElementsChecking if a List is EmptyIterating Over a List12Functions Advanced
Optional Positional ParametersNamed ParametersRequired Named ParametersDefault Parameter ValuesRecap - Function Parameters15Project: Simple Calculator
Setting UpDeclaring Number