inblog logo
|
jjack1
    Flutter

    [Flutter] Dart - 함수

    최재원's avatar
    최재원
    Jun 19, 2025
    [Flutter] Dart - 함수
    Contents
    일반 함수람다

    일반 함수

    💡
    외부의 영향을 받지 않는 것 → 함수
    들어오는 값이 동일하면 나오는 값도 동일해야 → 함수
    외부에 영향을 받는, 의존하는 것 → 메서드
    // 함수 // 어디서든 호출 가능한 것 -> 1급 객체 void f1(){ print("f1 호출됨"); } void f2(int n1, int n2){ print("f2 호출됨 : ${n1 * n2}"); } int f3(int n1, int n2){ return n1 * n2; } void main() { f1(); f2(5,6); int result = f3(8,4); print("f3 호출됨 : result = ${result}"); }
    notion image

    람다

    💡

    📌 람다의 정의

    람다는 이름 없이 정의할 수 있는 함수입니다.
    일반적인 함수와 달리 def나 function 같은 키워드 없이 정의되며, 한 번 쓰고 버리는 함수에 적합합니다.
    💡
    바인딩
    특정 요청에 따라 실행되는 이름 없는 함수를 바인딩 된 함수라고 한다
    Function f1 = (){}; // 익명함수 var f2 = (){}; // 람다 문장 var f3 = () => print("f3 호출됨"); // 람다 표현식 var f4 = () => 1; // 람다의 장점 코드가 짧아 가독성이 좋아짐 int f5(){ return 1; } void f6(){ print(1); } void main() { }
    • var f2 = (){}; → 대부분의 이름없는 함수 사용은 이렇게 하자
    • var f4 = () => 1; → 한줄로 리턴하는 경우에만 사용하자
    // 버튼 class Button { // 디자인 void onClick(Function be) { be(); } } class CheckBox { // 디자인 void onSelected(Function be) { be(); } } void main() { Button b = Button(); b.onClick(() { print("선 그리기"); }); CheckBox ch = CheckBox(); ch.onSelected(() { print("점 그리기"); }); }
    • 행위를 전달하는 방법

    이름이 있는 함수

    💡
    • 코드 줄이 너무 길거나
    • 재사용이 필요할 때
    Share article
    Contents
    일반 함수람다

    jjack1

    RSS·Powered by Inblog