728x90
반응형
플러터 개발을 하면서 자주 접하게 되는 기술 용어와 파라미터에 대해 알아보겠습니다.
이 단어들을 익히면 플러터 문서를 읽거나 코드를 작성할 때 큰 도움이 될 것입니다. 자, 그럼 시작해볼까요?
1. Parameter (파라미터)
- 설명: 함수나 메서드에 전달되는 값으로, 그 함수의 동작을 제어하는 데 사용됩니다. 파라미터는 여러 옵션을 가질 수 있습니다.
- 예시: void myFunction(int number, {String? name})에서 number는 필수 파라미터이고, name은 선택적 파라미터입니다.
2. Argument (인수)
- 설명: 함수 호출 시 실제로 전달되는 값입니다. 인수는 파라미터의 값으로 사용되며, 함수의 동작을 변경합니다.
- 예시: myFunction(5, name: 'Alice')에서 5는 number 파라미터에 대한 인수이고, 'Alice'는 name 파라미터에 대한 인수입니다.
3. Constructor (생성자)
- 설명: 클래스의 객체를 생성할 때 호출되는 특별한 메서드입니다. 객체의 초기 상태를 설정하는 데 사용됩니다.
- 예시:
class Person {
String name;
int age;
Person(this.name, this.age); // 생성자
}
4. Named Parameter (명명된 파라미터)
- 설명: 파라미터를 명시적으로 이름으로 지정하여 전달하는 방식입니다. 순서에 상관없이 사용할 수 있습니다.
- 예시:
void greet({required String name}) {
print('Hello, $name!');
}
greet(name: 'Alice');
5. Positional Parameter (위치적 파라미터)
- 설명: 파라미터의 위치에 따라 값을 전달하는 방식입니다. 호출 순서가 중요합니다.
- 예시:
void add(int a, int b) {
print(a + b);
}
add(3, 5); // 3과 5가 각각 a와 b에 전달됩니다.
6. Return (반환)
- 설명: 함수가 실행된 후 결과값을 내보내는 것입니다. return 키워드를 사용합니다.
- 예시:
int add(int a, int b) {
return a + b; // a와 b의 합을 반환합니다.
}
7. Default Parameter (기본 파라미터)
- 설명: 파라미터에 기본값을 설정하여 호출 시 값을 제공하지 않으면 기본값을 사용합니다.
- 예시:
void greet({String name = 'Guest'}) {
print('Hello, $name!');
}
greet(); // 'Hello, Guest!' 출력
8. Property (속성)
- 설명: 객체의 상태를 나타내는 변수입니다. 클래스의 멤버로 존재하며, 객체가 가진 데이터입니다.
- 예시:
class Car {
String color; // 속성
Car(this.color);
}
9. Method (메서드)
- 설명: 클래스에 정의된 함수로, 객체의 동작을 정의합니다.
- 예시:
class Dog {
void bark() {
print('Woof!');
}
}
10. Library (라이브러리)
- 설명: 특정 기능을 수행하는 코드의 모음입니다. 재사용 가능하게 만들어집니다.
- 예시:
import 'dart:math'; // 수학 관련 라이브러리 가져오기
11. Widget (위젯)
- 설명: 플러터의 기본 UI 구성 요소입니다. 모든 화면 요소가 위젯으로 만들어집니다.
- 예시:
Text('Hello, World!'); // 텍스트 위젯
12. Build Context (빌드 컨텍스트)
- 설명: 위젯이 위치한 트리를 나타내는 정보입니다. 다른 위젯에 접근할 때 사용됩니다.
- 예시:
Widget build(BuildContext context) {
return Text('Hello');
}
13. Future (퓨처)
- 설명: 비동기 작업의 결과를 나타내는 객체입니다. 나중에 값이 완성될 것임을 의미합니다.
- 예시:
Future<String> fetchData() async {
return 'Data loaded';
}
14. Stream (스트림)
- 설명: 비동기 데이터의 연속적인 흐름을 처리하는 객체입니다. 실시간 데이터 전송에 사용됩니다.
- 예시:
Stream<int> countStream() async* {
for (int i = 1; i <= 5; i++) {
yield i; // 값을 방출합니다.
await Future.delayed(Duration(seconds: 1));
}
}
15. Error (오류)
- 설명: 프로그램 실행 중 발생하는 문제입니다. 오류를 처리하기 위한 방법이 필요합니다.
- 예시:
try {
var result = 10 ~/ 0; // 오류 발생
} catch (e) {
print('Error: $e');
}
16. Null Safety (널 안전성)
- 설명: 변수가 null 값이 될 수 있는지를 안전하게 체크하는 기능입니다. 앱의 안정성을 높입니다.
- 예시:
int? nullableNumber; // nullable 타입
17. Inherited Widget (상속 위젯)
- 설명: 자식 위젯에게 데이터를 전달하는 데 사용되는 특별한 위젯입니다. 상태 관리를 쉽게 합니다.
- 예시:
class MyInheritedWidget extends InheritedWidget {
final String data;
MyInheritedWidget({required this.data, required Widget child}) : super(child: child);
}
18. Provider (프로바이더)
- 설명: 상태 관리를 위한 라이브러리로, 데이터를 쉽게 전달하고 관리할 수 있게 도와줍니다.
- 예시:
Provider.of<MyModel>(context); // 데이터를 가져오는 방법
19. Mixin (믹스인)
- 설명: 클래스에 기능을 추가할 수 있는 방법으로, 상속 없이도 여러 기능을 재사용할 수 있습니다.
- 예시:
mixin Flyer {
void fly() {
print('Flying!');
}
}
20. Asynchronous Programming (비동기 프로그래밍)
- 설명: 코드가 실행되는 동안 다른 작업을 할 수 있게 해주는 프로그래밍 방법입니다. 주로 async와 await 키워드를 사용합니다.
- 예시:
Future<void> loadData() async {
var data = await fetchData(); // 데이터를 비동기적으로 가져옵니다.
}
21. 플러터 기본 개념
- Widget: UI의 기본 구성 요소. 버튼, 텍스트, 이미지 등 다양한 종류가 존재.
- State: 위젯의 상태를 관리하는 클래스. 상태가 변경되면 UI가 다시 렌더링됨.
- StatelessWidget: 상태가 변경되지 않는 위젯.
- StatefulWidget: 상태가 변경될 수 있는 위젯.
- BuildContext: 위젯 트리에서 현재 위젯의 위치를 나타내는 정보.
- RenderObject: 위젯을 실제 화면에 그리는 객체.
- Element: 위젯과 RenderObject 사이를 연결하는 중간 단계.
22. 레이아웃
- Row: 위젯을 가로로 배치.
- Column: 위젯을 세로로 배치.
- Stack: 위젯을 겹쳐서 배치.
- Container: 다른 위젯을 감싸서 크기, 패딩, 마진 등을 조절.
- Padding: 위젯 주변에 여백을 추가.
- Margin: 위젯 사이의 간격을 추가.
- Align: 자식 위젯을 특정 위치에 정렬.
- Center: 자식 위젯을 중앙에 배치.
23. 상태 관리
- Provider: 상태를 공유하고 관리하는 방법.
- ChangeNotifier: 상태 변경을 알리는 클래스.
- Consumer: Provider에서 제공하는 데이터를 사용하는 위젯.
- Bloc: 상태 관리 패턴 중 하나.
- Cubit: Bloc의 간소화된 버전.
24. 네비게이션
- Navigator: 화면 간 이동을 관리하는 위젯.
- MaterialPageRoute: Material 디자인 스타일의 화면 전환 애니메이션을 제공.
- CupertinoPageRoute: iOS 스타일의 화면 전환 애니메이션을 제공.
- NamedRoute: 이름으로 특정 화면을 지정.
25
. 기타
- Dart: 플러터에서 사용하는 프로그래밍 언어.
- Hot Reload: 코드 변경 시 앱을 다시 시작하지 않고 바로 반영.
- Hot Restart: 앱 상태를 유지하면서 코드 변경을 반영.
- Widget Tree: 위젯들이 계층 구조로 구성된 트리.
- BuildContext: 위젯 트리에서 현재 위젯의 위치를 나타내는 정보.
26. 플러터 용어와 일반 개발 용어 비교
플러터 | 용어일반 | 용어설명 |
Widget | Component | UI의 기본 구성 요소 |
State | State | 객체의 상태 |
StatelessWidget | Stateless Component | 상태가 변경되지 않는 컴포넌트 |
StatefulWidget | Stateful Component | 상태가 변경될 수 있는 컴포넌트 |
BuildContext | Context | 현재 실행 컨텍스트 |
RenderObject | Render Tree | 실제 화면에 그려지는 객체 |
Element | Virtual DOM | 위젯과 RenderObject를 연결하는 중간 단계 |
27. 플러터 개발에 자주 사용되는 영어 단어
- Flutter: 플러터 프레임워크
- Dart: 플러터에서 사용하는 프로그래밍 언어
- Material Design: 구글의 디자인 시스템
- Cupertino: iOS 스타일 디자인
- Scaffold: 앱의 기본 구조를 제공하는 위젯
- AppBar: 앱 상단에 위치하는 앱바
- Drawer: 좌측 또는 우측에서 슬라이드하여 열리는 메뉴
- BottomNavigationBar: 앱 하단에 위치하는 탭 바
- ListView: 리스트 형태의 데이터를 보여주는 위젯
- GridView: 그리드 형태의 데이터를 보여주는 위젯
- FutureBuilder: 비동기 데이터를 처리하는 위젯
- StreamBuilder: 스트림 데이터를 처리하는 위젯
이 단어들을 잘 기억하면 플러터 코드를 이해하고 작성하는 데 큰 도움이 될 것입니다. 궁금한 점이나 더 알고 싶은 내용이 있다면 언제든지 질문해 주세요!
구독!! 공감과 댓글,
광고 클릭은 저에게 큰 힘이 됩니다.
Starting Google Play App Distribution! "Tester Share" for Recruiting 20 Testers for a Closed Test.
728x90
반응형
'Flutter' 카테고리의 다른 글
Flutter에서 Optimistic Response Cache 완벽 가이드 (2) | 2024.11.07 |
---|---|
플러터 클린 아키텍처: 작은 앱에서 큰 프로젝트까지의 맞춤 설계 (4) | 2024.11.04 |
플러터 탄생 배경과 활용 분야 - 초급자를 위한 쉬운 설명 (4) | 2024.09.21 |
플러터 DevTools를 이용한 메모리 관리: 초보자를 위한 가이드 (1) | 2024.09.09 |
Shorebird Code Push: Flutter 앱 업데이트의 새로운 대안이 될까? (3) | 2024.09.09 |