Classes Dart는 객체지향 프로그래밍(OOP) 언어이다. 자바 공화국의 나라에서 대부분의 개발자들은 JAVA를 통해 이미 객체지향에 대해서 알고 있을지도 모른다.객체지향에서 실제 현실세계를 대상을 반영한 객체(Object)를 메모리에 작성되어 인스턴스(Instance)가 된다.이 인스턴스화를 위해 설계도가 필요한데, 이 설계도가 바로 클래스(Class)이다. 클래스 안에는 해당 객체가 표현할 수 있는 속성을 가지는데 이를 프로퍼티(Property)라고 한다. Constructors(생성자)생성자는 인스턴스화 하는 방법을 제공하는 메소드이다.Dart는 기본 생성자를 제공하는데 기본 생성자는 클래스의 이름과 생성자의 이름을 동일하게 사용하여야 한다. 클래스와 생성자를 정의하는 방법은 아래 코드와 ..
Typedeftypedef 키워드는 타입에 alias를 참조하게 만드는 방법이다.복잡한 프로그램을 만들때 자료형을 명확히 하여 개발자로 하여금 헷갈림을 방지하는데에 도움이 될 수 있기 때문에 꼭 알아보자! 코드 예제로 알아보자. 예를 들어 아래 코드와 같이 숫자 List를 역정렬하여 반환하는 reverseListOfNumbers라는 함수가 있다고 하자.List reverseListOfNumbers(List list) { return list.reversed.toList(); } void main() { List list = [1,2,3,4,5]; print(reverseListOfNumbers(list)); } 이때 함수 사용을 위해 반복적으로 사용되는 List라는 타입이 해당 함수를 위한 것임을 typ..
Functions파라미터는 크게 positional parameter와 named parameter가 존재한다.positional parameter는 순서에 따라 파라미터의 값을 넣어주는 것이고, named는 '이 파라미터가 어떤 파라미터다~' 라고 명시해줌으로써 코드를 작성하는 것을 의미한다. Named Parametersdart에서 function을 만들 때 arguments는 기본적으로 null이 될 수도 있다.named parameter는 function 내부에서 parameter를 참조하였으나, 호출부에서 정의해주지 않아서 런타임 에러가 발생할 수 도 있는 위험을 제거하고자 할 때 사용한다.예를 들어, 아래와 같은 sayHello라는 메소드가 있다고 정의해보자.String sayHello(Str..
Data TypesDart의 기본 자료형은 다음과 같다Dart 자료형의 종류string : '' 또는 "" 둘 다 사용 가능하여 초기값 정의 가능, $ 또는 ${}를 통해서 변수의 값을 차용하여 사용할 수 있다. boolintdoubleObject (class) : String, int, double과 같은 자료형도 타입정의가 class로 이루어진 객체 타입이다.List : collection if, collection for를 지원MapSet ListCollection-Ifcollection if는 List를 만들 때 조건으로 있을수도 없을수도 있는 값을 추가할때 사용할 수 있다.코드로 예를 들자면, 기존의 클래식한 코드스타일 가이드에서 조건에 의해 List의 요소를 추가한다면 아래와 같은 방식으로 코..
Final 예약어한 번 정의된 변수를 수정할 수 없게 만들기 위해 final 키워드를 사용하여 변수를 정의할 수 있다.void main() { final String name = 'dart'; name = 'flutter'; //Warn: The final vairable can only be set once.} Late 예약어late 는 final이나 var앞에 붙여쓸 수 있는 수식어 이다.late 수식어는 변수를 초기 데이터 선언없이 정의하도록 사용하는 키워드이다.void main() { late final String name; // hit the api and save the values in late variable}late 키워드를 사용하면 변수를 먼저 만들고 ..
Keyword변수를 만드는 방법은 두가지다,첫째로 명시적으로 타입을 부여해서 변수를 선언하는 것 이다.class에서 변수나 property를 선언할 때 주로 명시적 타입 선언을 활용한다.String name = 'dart';두번째는 var 키워드를 사용하여 변수를 정의한다.dart에서는 var 키워드를 통하여 변수를 정의하면, 타입을 지정할 필요가 없이 타입 추론에 의해서 변수를 정의한다.var name = 'dart';관습적으로 함수나 메소드 내부에 지역변수를 선언할 때 var를 사용하는것을 권장한다.하지만 주의할 점은 초기에 정의한 변수와 같은 타입으로만 업데이트가 가능하다.var name = 'dart';name = 1; //error ocuured! Dynamic Variabl..