언어랑 API로 때려야 한다.
가장 기본적인 위젯 생성자에 null을 막을 수 없어서 인자로 null을 넣을 수 있는지 없는지 설명이 반을 차지하는 문서.
dart 언어는 어쩔 수 없는 선택이었지만 이건 치명적이었음. 해결은 했지만 언어를 고쳐서 패키지 전체에 광역기를 날림.
가장 큰 NNBD 이슈를 해결했어도 애초에 근본있는 언어는 아니었음. 내가 다트를 처음 본 건 Dartium이어서 자스를 대체하려나 싶었는데 당연히 묻힘.
원래 목적이 달라서였는지 타입 시스템 활용이 적어서 정적 분석이 많이 아쉬움. 뭐 당장 analyzer에서 nullability도 잘 판단이 안 되는 형국.
나도 Sum type이 꾸준히 아쉬웠는데 지금은 NNBD 후폭풍 처리하는 것으로 한 세월일 듯.
https://github.com/dart-lang/language/issues/349
너무 복잡해서 못 쓰겠다는 Navigator 2.0 API 이슈. 이걸 그나마 쉽게 해준다는 패키지들이 나오곤 있지만 근본이 복잡해서인지 빌빌거림.
https://github.com/flutter/flutter/issues/69315
테마를 써보면 테마를 써야하는지 따로 위젯을 만들어야 하는지 매번 고민할 정도로 자유도를 알기 힘들거나 일관성이 없음. 가령 colorScheme을 주로 쓰자고 합의해놓곤 안 쓰는 코드가 태반인 기술부채가 있다거나.
Intl 패키지도 플랫폼에 종속된 코드가 아닐 텐데도 업데이트가 없다시피 함. 버그가 없는게 아니라 많음.
솔직히 NNBD 하기 전엔 정말 별론데 하는 생각밖에 안 들었음. NNBD라도 하니까 개선 가능성이 있구나 생각이 들었지. 내가 언어만 너무 보는 경향이 있어서 그럴 수도 있지만.
와 주석 아찔하네
이런거보면 러스트가 null 없앤거 존나 잘한거같음