본문 바로가기

반응형

분류 전체보기

(34)
Dart 핵심 개념 한눈에 정리! (변수, 타입, Nullable, Enum, Loop 등) 1️⃣ 문자열 내 변수 삽입Dart에서 문자열에 변수를 넣고 싶다면 변수명을 사용하면 된다.void main() { String name = '홍길동'; print('안녕하세요, $name님!'); // 결과: 안녕하세요, 홍길동님! } 만약 중괄호 {}를 사용하면 표현식을 사용 가능void main() { int a = 5; int b = 3; print('두 수의 합: ${a + b}'); // 결과: 두 수의 합: 8 } 2️⃣ var vs dynamicvoid main() { dynamic value = 'Hello'; // dynamic은 타입이 자유롭게 변할 수 있음 value = 10; // int로 변경 가능 print(value); // 결과: 10 var text = 'Dart'..
flutter 내 지갑 만들기 (알면 좋은거) 플러터로 내 지갑 만들면서 알게 된 것들플러터로 "내 지갑" 프로젝트를 만들면서 배운 개념들을 정리해봤다.  1. Row랑 Column → 축 개념 Row → 가로 연결, MainAxis(주축) = 가로, CrossAxis(교차축) = 세로Column → 세로 연결, MainAxis(주축) = 세로, CrossAxis(교차축) = 가로쉽게 말해, Row는 좌우로 연결되고, Column은 위아래로 연결된다.Row( mainAxisAlignment: MainAxisAlignment.center, // 가로 방향 정렬 crossAxisAlignment: CrossAxisAlignment.start, // 세로 방향 정렬 children: [Text("A"), Text("B")],); Column( m..
Flutter의 동작과정 1. Flutter vs 다른 Framework 🚀일반적인 Framework들은 OS에 직접 요청하여 버튼, 애니메이션 등의 요소를 만들도록 한다. 하지만 Flutter는 다르다! Flutter는 자체 엔진(C/C++ 기반)을 통해 Framework를 실행하고 UI를 직접 그려낸다. 🎨즉, OS와 직접 소통하지 않기 때문에 OS의 제약 없이 동일한 UI를 제공할 수 있다. 💡 OS를 사용하지 않기 때문에 안드로이드나 ios의 기본 아이콘을 사용하지 못하지만플러터 개발자들이 만들어 놓은 ios와 비슷한 위젯들이 있다!  2. Flutter 동작 과정 🔄Flutter 앱이 실행되는 과정을 간단히 정리하면 다음과 같다.플랫폼(안드로이드, 윈도우 등)이 Flutter 엔진을 실행Flutter 엔진이 'r..
Dart 클래스 classes (2) 🎯 1. Cascade Notation (.. 연산자)✅ 같은 객체에 대해 여러 개의 프로퍼티를 연속으로 변경할 때 사용✅ ..을 이용하면 객체를 계속 참조하면서 값을 변경할 수 있음✅ 예제 코드class Player { String name; int age; String description; Player({ required this.name, required this.age, required this.description, }); void showInfo() { print("이름: $name, 나이: $age, 설명: $description"); }}void main() { var jisoung = Player(name: "jisoung", age: 17, des..
Dart 클래스 classes (1) ✅ 클래스 속성 정의하기클래스의 속성(property)을 선언할 때는 타입을 반드시 명시해야 된다(함수 내에서 타입을 명시하지 않아도 되는 var과는 다르다.) class Player { final String name = 'nico'; // String 타입의 property 정의 int xp = 1500;}void main() { // class의 instance, 즉 object 생성! var player = Player(); // `new`를 사용하지 않아도 된다! print(player.name); // "nico"}✅ this는 웬만하면 사용하지 않는다!Dart에서는 this를 잘 사용하지 않아.하지만 지역 변수와 클래스의 속성 이름이 겹칠 경우 사용!class Player { St..
함수 | Function Dart 함수 개념 정리Dart는 객체 지향 언어이므로 함수도 객체이며, Function 타입을 가진다.즉, 함수를 변수에 저장하거나 다른 함수의 인자로 전달할 수 있다. 1. 함수 정의 방법✅ 기본 함수String sayHello(String name) { return "Hello $name, nice to meet you.";}String sayHello(String name) → name을 매개변수로 받는 함수return을 이용해 문자열을 반환✅ 단축 함수 (화살표 함수)String sayHello(String name) => "Hello $name, nice to meet you.";한 줄짜리 함수라면 {}와 return 없이 =>를 사용할 수 있음2. Named Parameters (이름 있는..
데이터 타입 Data Type 1. 기본 데이터 타입Dart에서는 다음과 같은 기본 타입을 사용할 수 있다.void main() { String name = "tom"; // 문자열 bool isPlay = true; // 참/거짓(boolean) int age = 10; // 정수 double money = 52.55; // 실수 num x = 12; // int와 double 모두 가능 num y = 1.2; }✅ num 타입은 int와 double을 모두 포함하는 타입이다.2. 리스트(List) 다루기리스트는 배열과 비슷한 자료구조이다. Dart에서는 두 가지 방식으로 선언할 수 있다.void main() { List case1 = [1, 2, 3, 4, 5]; ..
Variables 변수 1️⃣ dynamic👉 "아직 타입을 정하지 않았어!"어떤 타입이든 될 수 있어! (문자, 숫자, 리스트, 객체 등)하지만 타입이 없어서 컴파일러가 체크를 못해 → 실수할 가능성이 높아짐정말 필요할 때만 사용! void main() { dynamic x = 10; // 숫자로 시작 print(x); // 10 x = "Hello"; // 문자열로 변경 가능 print(x); // Hello}변수를 선언할 때 dynamic을 쓰거나 값을 지정하지 않으면 dynamic 타입을 가진다. ⚠️ dynamic을 남발하면 버그가 생길 확률이 높아지니까 웬만하면 var, final, const 등을 쓰는 게 좋아!2️⃣ final👉 "한 번 값을 정하면 바꿀 수 없어!"하지만 처음 선언할 때 값을 정하지 ..