Dart 6

(Dart) QQ Operator 와 Typedef

QQ Operator?? 와 ?= 의 의미와 사용 방법void main() { String? name; name ??= 'nico';}String capitalizeName(String? name) => name?.toUpperCase() ?? 'ANON'; ??= 의 의미: nullable 변수를 생성한 뒤 해당 변수가 null 이라면 nico 라는 값을 넣는다. left ?? right (name?.toUpperCase() ?? 'ANON';)    left 가 null 일 경우 right를 return     left 가 null 아닐 경우 left를 그대로 returnString? name;print(name ?? 'Unknown'); // 'Unknown' 출력name = 'John'..

Dart 2024.10.16

(Dart) Named Parameters

Named Parameters인자의 이름을 명시해서 값을 전달하는 방식으로 인자의 순서에 구애받지 않고 이름을 지정하여 값을 전달할 수 있기 때문에 가독성이 높아지고 선택적으로 인자를 전달할 수 있게 한다. (조건)- named argument 를 사용하기 위해서 parameter 리스트를 가지게 해야 함.ex) sayHello({String name, int age, String country,}) { }- null 값이 전달되고 해당 값을 참조하게 될 것을 Dart가 우려하기 때문에 매개변수의 기본값을 넣어줘야 함 (null 참조 방지)  null safety 방지 방법 2가지 1. default value를 줘서 방지하는 방법String sayHello({ String name = 'anon', ..

Dart 2024.10.16

(Dart) Dart의 특징에 대해 알아보자

DartDart는 구글이 개발한 프로그래밍 언어로 Flutter 프레임워크와 함께 모바일, 웹, 데스크탑 애플리케이션 개발에 널리 사용된다. (이러한 특징 때문에 Android/ios 를 동시에 개발하기 위해 Dart 공부를 시작했다!) 이것 외에도 다른 특징들이 있으니 알아보자. JIT (Just-in-Time) & AOT (Ahead-of-Time) 컴파일Null Safetyflutter & Dart 모두 구글에서 개발JIT (Just-in-Time) & AOT (Ahead-of-Time) 컴파일먼저 Dart 는 두 가지 컴파일 방식을 가지고 있다 AOT 방식은 우리에게 익숙한 방식으로 컴파일을 먼저 하고 그 결과인 바이너리를 배포하는 방식이다. 언어로 예를 들면 C/C++ 가 있다. UI 작업을 진..

Dart 2024.10.07

(Dart) final, late, const 키워드를 사용하여 변수 생성하기

저번에는 null safety 에 대해 알아보았다. 이번에는 final, late, const 키워드를 사용하여 변수를 생성하는 방법과 해당 키워드가 가진 기능에 대해 알아보도록 하자. Final먼저 final 에 대해 알아보자. 해당 키워드는 변수를 생성하고 최초로 준 값 이후에는 값을 수정할 수 없도록 하는 기능이 있다. 그렇기 때문에 변수의 값을 바꿀 수 없게 고정하고 싶다면 사용하면 된다. void main() { final name = '돗개진'; name = 'las'; // Error : The final variable '돗개진' can only be set once.} 위 코드를 확인해 보면 name 이라는 변수를 final 키워드를 사용해 생성한 뒤 해당 변수에 다른 값을 넣..

Dart 2024.10.06

(Dart) null safety 와 nullable 변수

이번엔 Dart 언어의 특징인 null safety 에 대해서 알아보도록 하자. kotlin 에서도 마찬가지로 개발자가 null 을 참조하는 것을 막아주는 기능을 제공하는데 해당 기능은 매우 중요하다. 왜냐하면 null 을 참조하게 될 경우 런타임 에러가 발생하게 되는데 이 에러는 앱을 사용하던 중에 발생하는 에러로 사용자가 해당 에러를 접하게 되기 때문이다. 따라서 컴파일 전에 해당 에러를 잡아내는 것이 이상적이다. 그렇다면 어떻게 해야 null 참조를 방지할 수 있으며 null 이 필요할 경우엔 어떤 방법으로 사용할 수 있을지 알아보도록 하자. void main() { String name = '돗개진'; name = null; // Error : null can't be assign..

Dart 2024.10.06

(Dart) var, dynamic 키워드

앞으로 flutter로 앱 개발을 하기 위해 필요한 Dart 언어를 공부해 볼 것이다. 먼저 var 와 dynamic 키워드를 사용하여 변수를 선언할 때 어떤 차이점과 기능이 있는지 알아보자 Var var 키워드는 타입을 지정하지 않고 Dart 가 타입을 추론할 수 있도록 변수를 생성하는 것이다. dart 스타일 가이드에 따르면 var를 가능한 한 많이 사용하는 것을 권장하고 있다.void main() { // var name = '멍멍'; // var 자리에 String 과 같이 타입을 직접 선언 가능 name = '슬슬'; // 선언한 변수는 값을 변수 선언 후에 바꿀 수 있음 } 위와 같이 var 키워드를 사용해서 타입 추론을 통해 변수를 사용해도 되지만 타입을 지정하고 싶을 경우에는 va..

Dart 2024.10.06