Flutter 레이아웃의 기본, Container 위젯을 이해하자 Flutter에서 Container 위젯은 레이아웃을 구성하는 데 가장 기본적이면서도 강력한 도구입니다. 이를 비유하자면, 빈 상자(Box) 또는 캔버스처럼 생각할 수 있습니다. 이 빈 캔버스 위에 원하는 스타일, 정렬, 크기 등을 적용해 다양한 레이아웃을 구성할 수 있습니다.1. Container란 무엇인가? Container 위젯은 Flutter에서 레이아웃을 꾸미고 배치하는 데 사용되는 다목적 위젯입니다. 주요 기능은 다음과 같습니다: • 크기 조절: width, height를 통해 크기를 조정할 수 있습니다. • 스타일링: color, decoration을 사용해 배경색, 테두리, 그림자 등을 추가할 수 있습니다. • 배치: 내부 ..
Flutter의 didChangeDependencies 함수란?Flutter에서 didChangeDependencies 함수는 StatefulWidget의 상태가 변경되었거나, 위젯이 의존하고 있는 어떤 값이 변경되었을 때 호출되는 함수입니다.쉽게 말해, "위젯이 외부에서 제공받는 데이터가 변경되었을 때 실행되는 함수"입니다. didChangeDependencies의 주요 특징특정 상황에서 호출:위젯의 의존성이 변경되었을 때 호출됩니다.예: InheritedWidget의 값이 변경되었을 때.initState 다음에 호출:위젯이 처음 생성될 때, initState 이후에 한 번 호출됩니다.그 이후에는 의존성이 변경될 때마다 호출됩니다.데이터 의존성이 있을 때 사용:위젯이 상위 위젯에서 제공하는 데이터를 사..
Flutter의 initState 함수란?Flutter에서 initState 함수는 StatefulWidget의 상태를 초기화할 때 사용하는 메서드입니다.쉽게 말해, "앱이 처음 실행될 때 한 번만 호출되는 준비 작업 함수"라고 생각하면 됩니다.예를 들어, 데이터를 불러오거나 타이머를 설정하는 등 초기화가 필요한 작업을 initState에서 수행합니다.initState의 주요 특징딱 한 번 호출됨initState는 State 객체가 처음 생성될 때 한 번만 호출됩니다.이후 상태가 변경되어도 initState는 다시 호출되지 않습니다.초기화 작업에 적합데이터를 불러오거나 리스너를 추가하는 등 초기 설정 작업에 사용됩니다.super.initState() 호출 필요initState를 오버라이드할 때 super..
Flutter의 createState 함수란?Flutter에서 createState 함수는 StatefulWidget과 함께 사용되며, 화면의 변경 가능한 상태(state)를 관리하는 중요한 역할을 합니다. 쉽게 말해, StatefulWidget을 위한 "상태 관리자"를 만들어주는 함수입니다.왜 createState가 필요한가?StatefulWidget은 두 가지 주요 구성 요소로 이루어져 있습니다:StatefulWidget: 화면에 정적인 부분을 정의합니다.State: 화면의 변경 가능한 부분(예: 버튼 클릭, 입력 값)을 관리합니다.createState 함수는 StatefulWidget이 화면의 상태를 관리할 수 있도록 State 객체를 연결합니다. createState 함수의 기본 구조createS..
Flutter의 build 함수란?Flutter에서 UI를 만드는 핵심 메서드 중 하나가 바로 build 함수입니다. 앱 화면에 표시되는 모든 것은 이 build 함수에서 정의됩니다. 쉽게 말해, build 함수는 화면에 어떤 위젯을 보여줄지 "그리는 설계도"라고 할 수 있습니다. build 함수의 역할위젯 트리를 구성:build 함수는 Flutter에게 어떤 위젯을 화면에 보여줄지 알려줍니다.이 함수 안에서 다양한 위젯을 조합해 "위젯 트리(widget tree)"를 만듭니다.UI 업데이트 처리:앱의 상태(state)가 바뀌면, Flutter는 build 함수를 다시 호출해 변경된 UI를 업데이트합니다.build 함수의 기본 구조build 함수는 반드시 구현해야 하는 함수로, 모든 Flutter 위젯에..
Dart의 Constructor(생성자)생성자(Constructor)는 클래스의 인스턴스를 생성하고 초기화하는 데 사용되는 특별한 메서드입니다. Dart에서 생성자는 클래스와 동일한 이름을 가지며, 객체를 생성할 때 호출됩니다. 생성자는 객체의 초기 상태를 설정하거나, 특정 작업을 수행하면서 객체를 초기화할 때 주로 사용됩니다.생성자의 주요 특징클래스와 동일한 이름을 가집니다.객체가 생성될 때 자동으로 호출됩니다.반환 타입이 없습니다.기본 생성자가 없을 경우, Dart는 자동으로 기본 생성자(매개변수 없는 생성자)를 제공합니다.생성자의 종류1. 기본 생성자Dart에서 생성자는 클래스와 동일한 이름을 가지며, 매개변수를 통해 필드 값을 초기화할 수 있습니다.예시:class Person { String n..
Dart는 Flutter 앱 개발에 사용되는 언어로, 다양한 변수 타입을 제공합니다. 프로그래밍을 배우는 데 있어, 변수 타입을 이해하는 것은 매우 중요합니다. 변수는 데이터를 저장하고 조작하는 기본적인 단위이기 때문입니다. 이번 글에서는 Dart에서 제공하는 주요 내장 변수 타입에 대해 초보자들도 쉽게 이해할 수 있도록 설명하겠습니다.1. 숫자 타입 (int, double)Dart에서 숫자는 두 가지 주요 타입으로 나눠집니다: 정수와 실수입니다.int: 정수형 변수로, 소수점이 없는 숫자를 저장합니다.double: 실수형 변수로, 소수점을 포함하는 숫자를 저장합니다.예시:void main() { int age = 25; // 정수형 변수 double price = 10.99; // 실수..
1. 플러터에서 변수란?플러터(Flutter)는 Dart 언어를 기반으로 동작하며, Dart에서도 변수는 데이터를 저장하고 관리하기 위한 기본 요소입니다. Dart의 변수는 프로그램 내에서 값들을 저장하고 이를 조작하는 데 사용됩니다. Flutter를 사용한 UI 구성이나 상태 관리에서도 변수는 필수적입니다.2. 변수 선언과 초기화Dart에서 변수를 선언하려면 var, final, 또는 const 키워드를 주로 사용합니다. 또한, 변수의 자료형을 명시적으로 선언할 수도 있습니다.1. var 키워드Dart는 변수에 저장된 값에 따라 자료형을 자동으로 추론합니다.한 번 값이 할당되면 같은 자료형의 값만 저장 가능합니다.void main() { var name = "가디사는 개발자 주녘"; // Dart가 ..
1. 앱 아키텍처란? 앱 아키텍처는 애플리케이션의 전반적인 구조와 구성요소, 그리고 이러한 구성요소 간의 관계와 상호작용을 정의하는 청사진 또는 설계 원칙을 의미합니다. 쉽게 말해, 앱을 구축하는 데 필요한 구성요소와 이러한 구성요소들이 어떻게 함께 작동하고 연결되는지를 설명하는 방법론이라고 할 수 있습니다. MVC, MVP, MVVM, VIPER 등 너무나 많은 아키텍처가 존재 한다. 하지만 원리는 거의 동일 하다. 역할 별로 레이어를 나눈다. 각 레이어는 각자의 역할에만 집중하게 설계하고 자신 밖에 업무에서 가능한 신경을 끈다. 각 레이어를 나누게 되면 수정 및 테스트 유지 보수가 용이하다. 2. MVC (Model-View-Controller) 패턴을 사용하는 주된 이유는? MVC (Model-Vi..
프로젝트 명 : blog_web_app 개발 환경 : 플러터 SDK : 3.3.x 미션 : 웹뷰를 사용해서 웹사이트를 앱으로 포장해보기 기능 : 웹뷰를 사용해서 앱에서 웹사이트 실행하기 핵심 구성요소 : StatelessWideget, AppBar, WebView, IconButton 플러그인 : webview_flutter: 3.0.4 📝 콜백 함수 콜백함수란 일정 작업이 완료되면 실행되는 함수를 말합니다. 함수를 정의해두면 바로 실행되지 않고 특정 조건이 성립될 때 실행되기 때문에 콜백이라고 합니다. 📝 코딩해보기 1) pubspec.yaml 설정 pubspec.yaml 파일은 플러터 프로젝트와 관련된 설정을 하는 파일입니다. dependencies: flutter: sdk: flutter # The..