Dart & Flutter 11

[Flutter] Hello World 출력해 보기

Flutter : Cross Platform, UI Toolkit이라 불리며Flutter의 UI의 기본적인 단위는 Widget이다.Stateless Widget / Stateful Widget특정한 상황에 따라 화면갱신이 필요할경우 Stateful Widget 변화가 필요없다면 Stateless Widget을 사용한다.기본적으로 Widget 단위로 움직인다는 개념을 가지고 가면 좋다.Main.dart 파일에 Hello World 나오게하는 코드를 만들어보기import 'package:flutter/material.dart';void main() { runApp(MaterialApp( home: Scaffold( body: TestWidget() )));}class TestWidget e..

Dart & Flutter 2024.05.26

[Dart] switch와 if문을 활용하여 가위바위보 게임 만들기

가위바위보 게임을 Dart코드를 통해서 만들어봤다.1. 컴퓨터의 가위바위보는 랜덤함수를 이용하여 가위바위보를 결정2. 플레이어의 경우 직접 Input을 넣어서 가위바위보를 지정3. 1,2의 결과를 출력4. 2번에서 가위,바위,보외 다른 값을 입력할 경우 예외처리import 'dart:convert';import 'dart:io';import 'dart:math';void main() { /// 1. 유저에게 가위 바위 보를 입력 받음 print('가위, 바위, 보 중 하나를 정해주세요'); // final 상수 지정 final String userInput = stdin.readLineSync(encoding: utf8) ?? 'Error'; /// 2. 컴퓨터가 어떤것을 낼지 결정하는 함수 ..

Dart & Flutter 2024.05.20

[Dart] 비동기, 동기 프로그래밍

void main() { /// 비동기 프로그래밍 /// 동기성 / 비동기성 /// 동기 : 모든 코드가 순차적으로 진행되는 형태 /// 비동기 : 코드가 동시 다발적으로 실행되서, 순차적으로 보장을 할 수 없는 형태 /// async / await / Future : 1회만 응답을 돌려받는 경우 /// async* / yield / Stream : 지속적으로 응답을 돌려받는 경우 // Future todo(int second) async { // await Future.delayed(Duration(seconds: second)); // print('TODO Done in $second seconds'); // } // // todo(3); // todo(1); // t..

Dart & Flutter 2024.05.02

[Dart] 예외처리문 (try-catch, finally, on, throw, rethrow)

코드를 치다보면 Error를 발생할때가 많은데 그때마다 특정 코드를 실행하거나 print문을 작성하여 error형태를 잡는다.1번 try-catch문을 가장 많이 쓰인다. (catch문에서 모든 error가 넘어가기때문에...)1. try - catch 문 2. finally 문3. on 문4. throw / rethrow 문 1~2. try-catch문 예시 ( + finally 문 )void main() { int num1 = 5; try { /// 예외가 발생할 것으로 예상되는 코드를 넣는다. print( num1 / 0 ); } catch(error, stack){ /// 에러가 발생했을떄 실행하고자 하는 코드를 넣는다. print(error); print(stac..

Dart & Flutter 2024.05.02

[Dart] Dart 기본 함수, 반복문, 분기문

기본 함수 사용법반환해야하는 변수의 type을 유의하면서 쓰자 /// 함수 / 매서드 : 동작의 단위(프로그래밍의 기본 단위) /// 리턴 타입 함수명 (매개변수) { /// 함수내 동작 할 코드 /// } void main() { int num1 = 10; int num2 = 20; int sum = add(num1, num2); print(sum);}/// return 해야할 값이 int이므로 맨앞에 int를 붙이고 만약에/// 아무것도 반환하지 않을거면 void를 쓰면된다.int add(int num1, int num2){ return num1 + num2;} 분기문프로그래밍시에 if문을 가장 많이 쓰지만 가끔씩 switch문도 쓰임 void main() { /// 분기문과 반복..

Dart & Flutter 2024.05.01

FVM(Flutter Version Management)로 version 관리하기

FVM 설치하기https://fvm.app/documentation/getting-started/installation Installation – FVM fvm.appbrew tap leoafarias/fvmbrew install fvm FVM releases를 통해서 Stable version이 나오는데 해당건 설치하기fvm install 3.19.6fvm list fvm global 3.19.6 Android Studio에 들어가서 SDK Path 설정 다시 하기.fvm파일로 들어가면된다.(만약에 .fvm파일이 안보인다면 CMD+Shift+. 으로 보기) 상황1. 현재 본인의 PC에서는 3.9.16ver 인데 지금 현재 프로젝트의 경우 3.10.1ver을 써야한다.fvm install 3.10.1# ..

Dart & Flutter 2024.04.29

Flutter 기본 환경 세팅하기 (Flutter SDK, Android Studio, Xcode)

Flutter SDK 설치하기Flutter 기본적인 환경 세팅을 진행https://docs.flutter.dev/get-started/install/macos/mobile-ios?tab=download Start building Flutter iOS apps on macOSConfigure your system to develop Flutter mobile apps on macOS and iOS.docs.flutter.dev1. 사이트에 들어가서 자신의 PC에 맞는 기종을 선택하기2. 나와있는대로 CMD를 진행하면 development라는 폴더에 자동으로 형성된다.3. 만약에 본인이 다른 폴더로 하고싶으면은 development쪽을 바꾸고 하면된다.4. 환경 변수 설정이 잘 안된다면 두번째껄로 확인해보기..

Dart & Flutter 2024.04.27

[Dart] Dart 기초 : Class (Constructor)

Class : Template이라고 비유할 수 있음 필드 : 클래스 내부에 선언된 데이터( 변수 / 상수 등등) 매서드 : 클래스 냅부에 선언된 기능 (함수) 생상자 : 클래스 인스턴스를 생성할 때 사용되는 코드 생성시 특정 작업을 지시하는 등의 활용이 가능 생성자, Constructor 클래스의 인스턴스를 생성하는데 사용되는 코드 생성자를 활용하여 매개변수 전달 및 필드내 초기값 설정 작업 가능 Default 기본 Named : 개발자가 필요의 의해 지어진 것 Redirecting : 생성자 overwriting이랑 비슷한 개념 Const, : 상수들, 불변하는 객체 Factory : 매번 새로운 인스턴스를 만들지않는 즉 이미 존재하는 인스턴스 반환 혹은 연산 등에 사용

Dart & Flutter 2024.04.10

[Dart] Dart 기초 : 변수, 연산자

기본적인 것들은 여기서 연습 가능 https://dartpad.dev/ DartPad dartpad.dev 변수 변수 선언시 타입은 가급적 선언하면 좋다. (안해도 되긴함) 프로그래밍상 정의가 정확하면 좋다.. 프로젝트를 같이 하다보면 그게 꼭 좋음! var : 최초 한 번 부여된 다입이 고정적 사용 Dynamic : 타입이 코드 진행중에라도 언제든 변환 ( 예. char -> int 로 변환되어야 할 경우) 상수 const : compile 시점에 상수 처리 될 경우에 활용 final : 프로그램의 진행 중 상수 처리 될 경우 활용 연산자 프로그래밍 언어에서 사용되는 기호로 하나이상 변수 활용하여 수행할 연산을 나타내는 단위 산술연산자,비교연산자,논리연산자,할당연산자,삼항연산자,비트연산자 등등 다양한 ..

Dart & Flutter 2024.04.09