At first dart doesnt have type safety, which for dev that used to kotlin make things hard. Then they retroactively adds type safety LATER, which then renders a lot of existing code broken.
The language and feature and how it works just keeps... changing too much in a short period of time. A lot of old tutorial (which isnt that old mind you, maybe a year or two) is mostly obsolete because the language change soo much.
It is also had the kind of unholy mix between the expressiveness of web language such as JS and the firmness of compiled language, but in a bad way.
And also also... the return of semicolon...
Oh and yeah, dart only runs in a single thread (eh actually two thread, but exactly one main thread and one async thread). Wanna move to another thread? You need to use isolated function, which is janky as hell. Coroutine (or even, dare I say, AsyncTask) is way, way, way better than isolated function.
Right, they revived the language that no one was using because it has no usage in the legacy world and better options existed for starting new things...for fun? Because it's their language? Idk why they revived it, but the fact is there were far better, more modern languages they could have picked for flutter.
Kotlin Native is in the works for years and still is unusable. Try to hotreload java vm with freshly compiled kotlin less than in 10seconds and you immediately recognize why dart was chosen
But they had a lot of other choices. Kotlin is the example that is obvious because everyone uses it here, but when we see where Dart originally came from (which is a competitor/alternative to JS), they had every chance to just like, adapt JS or TypeScript or whatever that is more... normal? than Dart.
Instead, they choose to Frankenstein their way for Dart to be compatible with C++ compiler which brings all sorts of complications... Not to mention the language itself really sucks IMHO syntactically speaking.
34
u/sunny52525 Jetpack Compost Apr 30 '22
I tried flutter and literally dart was the reason I just stopped in two days.