- Dart
- Stream 비동기 지원 : 데이터가 끊임 없이 흘러들어올 경우 사용
- 인스턴스 하면 안되는 내부 값은 "throw"를 사용하여 예외 처리
- NullSafety 구분을 위해 dynamic과 Objectm Object? 차이를 둘 수 있다.
- dart에서 Undifined 할 경우 null 취급된다.
- void 는 값이 되지 않기때문에 print()할 수 없다. print는 인자를 출력해야하는데 인자가 없기 때문이다.
- function() => value; : dart에서
=> 는 return 을 생략하고 한 문자의 value값으로 바꿀수있게 해준다.
"""...""" : 다중라인 문자열, r'...' : row
...(Spread operator) : 컬렉션 내의 요소들을 각각 꺼내어 전개한다. > List가 nullable list일 경우 ...사용 시 에러가 발생하고, ...?list를 사용해야하고, 이 경우 list가 null일 경우 추가되지 않는다.
list.asMap(): dart 에서 asMap은 key값이 숫자index로 들어가기 때문에 value에 중복값이 허용된다.
list.toSet(): set의 경우 중복값이 제거되면서 Set형태로 만들어진다.
- Map에서 조회 시 key가 존재하지않을 경우 null값 반환한다.
- Callable classes : class 객체 안에 함수를 만들고 객체명을 함수처럼 사용가능하다.
- Named parameters
- void function({bool? a, required bool b}){...}
- function(a: true, b:false);