어떤 프로덕트를 만드냐에 따라 선택을 하는게 옳습니다.
프로덕트의 레벨이 높지 않아 플랫폼의 정책을 크게 신경쓰지 않고 구현하고자 하는 인터랙션 또는 기능에 제약이 없다면 플러터로도 충분합니다.
하지만 그 반대나 플러터 개발 정책과 다르다면 역시 플랫폼 별로 네이티브 코드를 작성해야합니다.
간단한 예로 플러터는 PG 결제를 구현하기위해 웹뷰 컨트롤 조차도 필요한 플랫폼 별로 네이티브 코드를 작성해야 하고 빌드와 디버깅을 위해서는 각 플랫폼의 정책에 맞춰 변경해야 합니다.
가장 좋은 것은 네이티브를 먼저 학습하고 플러터를 이용하는 게 좋습니다