6.0 Funkcje
Dart stawia na obiektwość wkońcu dlatego powstał . Funkcje w tym języku są obiekami w którym gdy nie określimy co ma zwrócić zawsze wzróci NULL . W parametrach funkcji możemy nadawać tytuły i w wywołaniu możemy wybrać tylko te co nas interesują odwołując się po tytułach innymi słowy nowa wizja posługiwania się funkcjami.
6.1 Metody tworzenia funkcji
void main() {
funkcja1("niebieski",1);
funkcja2("czerwony",2);
}
Pierwsza metoda z delkaracją zwracanego typu silnie zalecana
void funkcja1(String kolor,int numer){
print("funkcja1 kolor = $kolor , numer = $numer");
}
Druga metoda bez delkaracji zwracanego typu ,odbywa się automatycznie
funkcja2(String kolor,int numer){
print("funkcja2 kolor = $kolor , numer = $numer");
}
Wynik
funkcja1 kolor = niebieski , numer = 1
funkcja2 kolor = czerwony , numer = 2
Dla jedno linijkowych funkjcji
void main() {
funkcja1(1,2);
}
//Dla krótkich funkcj
void funkcja1(int a,int b)=>(print("${a*b}"));
6.2 Opcjonalne parametry
Za pomocą nawiasów kwadratowych możemy zaznaczyć te parametry które nie są obowiązkowe . Ich wartość w przypadku braku wyniesie domyślnie NULL no chyba ,że domyślnie przypiszemy jej jakąś wartość w przypadku braku.
void main() {
//bez dodatkowego parametru
funkcja1("niebieski",1);
//z dodatkowym parametrem
funkcja1("czerwony",2,"Adam");
}
//Utworzenie opcjonalnego parametru z domyślną wartością
void funkcja1(String kolor,int numer,[String imie="nieznany"]){
print("funkcja kolor = $kolor , numer = $numer imie : $imie");
}
Wynik
//bez dodatkowego parametru
funkcja kolor = niebieski , numer = 1 imie : nieznany
//z dodatkowym parametrem
funkcja kolor = czerwony , numer = 2 imie : Adam
6.3 Nadawanie tytułów zmiennych
Nadając tytuł zmiennym nie musimy znać kolejnosci ,a w paramaterach indentyfikować je to ich nazwie.
void main() {
funkcja1(kolor:"czarny",numer:2,imie:"Adam");
//Nie muszą być pokolei jeżeli odwołujemy się po nazwie
funkcja1(numer:2,kolor:"czerwony",imie:"Gregory");
}
//Otwiaramy klamrowy nawias i tytułami stają się nazwy zmiennych
void funkcja1({String kolor,int numer, String imie="nieznany"} ){
print("funkcja kolor = $kolor , numer = $numer imie : $imie");
}
Wynik
funkcja kolor = czarny , numer = 2 imie : Adam
funkcja kolor = czerwony , numer = 2 imie : Gregory