메소드를 저장해서 계속 쓸 수는 없나요?
223
작성한 질문수 5
항상 잘 보고 있습니다. 이미 몇 번이나 봤는데도 심심하면 와서 보게 되네요.
그러던 중 문득 궁금한 점이 생겼는데요.
강의를 보면 앱바는 _buildAppBar라는 이름의 메소드를 만들고 바디는 _buildBody라는 이름의 메소드를 만들어서 사용하시잖아요?
물론 각 페이지(다트파일)이 달라지면 메소드의 이름은 같아도 내용이 달라서 그때마다 그 페이지에서 새로 만들어서 메소드를 사용하시는데 만약 여러 개의 페이지에서 같은 내용의 메소드를 사용할 경우 한 페이지마다 계속 메소드를 선언한 후 사용해야 한다면 너무 귀찮을 것 같아서요.
물론 복사 붙여넣기가 있지만 프로그래밍 자체가 효율적으로 작업을 하기 위한 것인데 분명 플러터에도 이런 기능이 있을 것 같습니다.
혹시 알고 계신다면 이름이라도 간단히 소개해주시겠어요?
답변 1
1
다른 언어들 처럼 static을 지원합니다. 다음 예를 참고하시어 반복되는 메서드는 static으로 선언하여 재사용할 수 있습니다.
import 'dart:math'; class Point { num x, y; Point(this.x, this.y); static num distanceBetween(Point a, Point b) { var dx = a.x - b.x; var dy = a.y - b.y; return sqrt(dx * dx + dy * dy); } } void main() { var a = Point(2, 2); var b = Point(4, 4); var distance = Point.distanceBetween(a, b); assert(2.8 < distance && distance < 2.9); print(distance); }
과거 ai없을때 듣고 다시 듣는 중인데
1
55
1
40번 수업이 완료가 되지 않아요.
0
62
1
최신버전 firebase_ui_auth 할때 EmailAuthProvider 오류 잡는 방법
0
158
1
애뮬레이터로 main.dart를 실행하면 컴퓨터가 멈춥니다.
0
331
2
혹시 재촬영 계획이 있으신가요?
0
250
1
애뮬레이터 Intel HAXM 다운로드가 안돼요
0
559
2
에뮬레이터 홈화면
0
259
1
종속성 충돌 질문
0
341
1
plugin 중에서 에러 발생시 발생한 코드 위치에 바로 에러 표시해주는 기능 있을까요?
0
426
1
firebase option 오류
0
375
2
alt+enter 가 맥북에서는 option enter로 알고 있는데 단축키가 먹히지 않습니다 ㅜㅜ
0
1465
11
파이어베이스 연결시 갑자기 다른 오류가 발생했어요 ㅠㅠ
0
409
1
Failed assertion: line 246 pos 15: 'items.length >= 2': is not true.
0
1322
1
Firebase로 이메일 로그인 기능 구현
0
355
1
GridView에 데이터가 표시가 안됩니다.
0
298
1
The Android Gradle plugin supports only Kotlin Gradle plugin version 1.5.20 and higher. 해결법을 모르겠습니다
0
6896
4
안드로이드 에뮬레이터 실행오류
1
1011
1
firebase 연동 중 오류 질문
0
468
1
05. AccountPage UI 작성강의 설명문의
0
372
1
firestore에서 List<String>을 받아오고 싶을 때
0
543
1
firebase 이메일 로그인 설정 관련 오류 문의의 건
0
1092
1
기본위젯
0
2731
1
firebase에 upload 에러가 발생했습니다
0
1284
3
디버그 서명 인증서 SHA-1가 구해지지 않습니다.
1
319
1





