Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Why Using Dart, instead of TypeScript or Plain JavaScript ES6 ? #14382

Closed
GulajavaMinistudio opened this issue Jan 31, 2018 · 16 comments
Closed

Comments

@GulajavaMinistudio
Copy link

Why this framework using Dart ? not using more stable and robust like TypeScript or ES6 Javascript ?
Look at Angular and other TypeScript based framework, it stable and easy to understand for large team and beginner.

So any plan to leave Dart and using TypeScript language ?

@charafau
Copy link
Contributor

Because neither typescript nor javascript compiles to native code / dart vm. I'd say it's more possible to use native language like rust instead of those two.

@Rockvole
Copy link

Rockvole commented Feb 3, 2018

Apparently flutter was originally written in Javascript, but was rewritten in Dart. I cant find any articles relating to specifically why that was done, but I don't expect it was done without good reason.

@paritosh149
Copy link

paritosh149 commented Mar 1, 2018

@Rockvole, I found link to help get answer to your query.

@gimox
Copy link

gimox commented Mar 5, 2018

Why not use angular 6 with typescript?
The world do not need Dart , i don’t need Dart. Angular is so powerfull and is a very roboust Google project and use aot.
It has beautifull syntax with typescript and you can create the VIEW ( Yes a view, not a code spaghetti view) as you want, html, xml, custom. We need only a nativescript like framework with a material Ui and more speed, We don t need a new language like dart.

@zoechi
Copy link
Contributor

zoechi commented Mar 6, 2018

@sethladd
seems to be a dup of #11865

@sandangel
Copy link

I was convinced by this post https://hackernoon.com/why-flutter-uses-dart-dd635a054ebf

@gimox
Copy link

gimox commented Mar 6, 2018

Me not!

@gimox
Copy link

gimox commented Mar 6, 2018

@zoechi yes it can be a duplicated, but the flutter team has a strange way to resolve the conversations, when someone say something about implementing Typescript and Dart or template view they close the thread like #11865 as resolved. very bad!

@zoechi
Copy link
Contributor

zoechi commented Mar 6, 2018

@gimox this discussion is absolutely pointless.
The linked docs explain why the decision was made.

I don't even want argue about whether TypeScript is a good language or not, but there is no way to compile it to native code which is one of the main benefits of Flutter.

If you prefer Angular, why don't you just use Ionic.
What would be the point of making Flutter another Ionic?

Flutter is being worked on since about 2013 and is about to be released and you argue for just dropping all that and rebuild it in another language.
You didn't even provide an argument why TS would be a better fit, just that you prefer it.
Also running in the browser was even a non-goal, so Angular is not an argument as well.

@gimox
Copy link

gimox commented Mar 6, 2018

I don't want another ionic, ionic is perfect as is for simple project.

I'm looking at Nativescript! It's something like flutter but it's not a Google project.

Google is working hard on Angular for a mobile framework and Golang for data and api language with high performance, and Kotlin is officially endorsed as Android language.

So why use another language as Dart to do the same things as this languages done?

The linked document say something like... i need this, dart do this, etc etc... ok! Kotlin or angular/typescript can do the same things, and it do it from many time ago, it has a large user base and it's ready and tested...... by Google (and Microsoft for angular/typescript).

When Google released Angular, it endorsed Dart as main language, result: no one use it!!!! nobody use it with dart now, they changed approach so Typescript (aot) became the default. So angular now is one of the most used frontend/mobile framework.

So Flutter is very exciting and has something amazing like UI, it can be the real winner, and i think that Dart can damage the project.

I'm a developer, do you think that my team can write a:

  • nodejs(typescript) / golang backend API
  • a web frontend in Angular (typescript)
  • a mobile app in Dart and sometimes add native code in swift and kotlin or java (because the app in a real word need some native code, you know)

OR

write a:

  • nodejs backend,
  • a frontend in typescript/angular for web and, with some minimal refactoring, create a mobile app with Nativescript or ionic

We need solutions not technologies, do not introduce new tech to do what we have already!

Hey flutter team, why don't you call your brother angular team, combine experience, extend user's base?

We need Flutter!!!!!!

@sandangel
Copy link

I think decision has been made and we can't change anything by firing issues like this. If no one adopt it, may be they will reconsider.

@gimox
Copy link

gimox commented Mar 6, 2018

I think that everything can change if many people have this opinion.
For this round, I stay with Nativescript, and take a look at flutter, waiting something new...

@zoechi
Copy link
Contributor

zoechi commented Mar 6, 2018

@gimox you seem to have some prejudices that you just refuse to give up

When Google released Angular, it endorsed Dart as main language, result: no one use it!!!! nobody use it with dart now, they changed approach so Typescript (aot) became the default. So angular now is one of the most used frontend/mobile framework.

When Google started Angular2 they wanted to target both JS and Dart developers.
It turned out to be too painful to develop for two languages from a single language,
and 2 years both are developed individually.

Angular is for the browser, Flutter is for native apps.
There is a big difference that you seem to generously overlook.

And as mentioned several times. This discussion is so redundant that there is hardly a comparison.
Flutter works great and there is a ton of great feedback about Flutter itself and also for Dart.
There close to zero reasons to even think about alternatives.
There will always be people who want something different, but there is no reason to drop years of work and an already successful project just because some people think TypeScript (which is completely inappropriate for Flutter) should be used instead.

I can ensure you that you never beat a horse more dead than this one before ;-)

With Flutter and the ability to reuse code between native mobile apps and mobile/desktop browser applications AngularDart is gaining popularity. Still far from TypeScript, but things are changing.
There are even attempts to make Flutter apps run on Desktop (OSX, Linux, Windows) https://github.com/google/flutter-desktop-embedding

@gimox
Copy link

gimox commented Mar 6, 2018

@zoechi I hope nobody at angular team read this thread...

Angular has SSR (server side rendering), take a look at Nativescript and Ionic, it change Render according with custom rules, angular is not angularJS. So angular is not only for browser, the big new motto of angular 2 is: for mobile not for browser, please take a look at angular.io website.

Yes flutter work great and many people like it. But we are debating about if it can be better?

Angular team choices is to write a framework that use Js, typescript or dart, as you mentioned, this is fantastic, why flutter can't do it using typescript or kotlin (this is not a angular sponsorship)?

I have used flutter, to try a complex app, and i think that view and code organization is too confuse for complex app. But this my opinion.

And about AngularDart... please tell me one name of people that use it!! tell me a company that use it!!
(except the team that build it)

The initial porting of flutter desktop is fantastic, but now it can not be usable. So for now electron is my choice

We are writing code now, for future i don't know if i will use angular, Go, nodejs, flutter, electtron, nativescript, c++ or other, certainly i will use the most performace, simple and supported and stable framework and language, i hope this can be Flutter.

take a llook at: https://vsavkin.com/writing-angular-2-in-typescript-1fa77c78d8e8 .

@sethladd
Copy link
Contributor

sethladd commented Mar 6, 2018

Thanks for all the comments!

We published https://hackernoon.com/why-flutter-uses-dart-dd635a054ebf to help answer the questions. Because we think the article does a good job at explaining our thoughts, we are going to close the comments on this issue.

@flutter flutter locked as resolved and limited conversation to collaborators Mar 6, 2018
@Hixie
Copy link
Contributor

Hixie commented Mar 6, 2018

One thing I would add is that we would be very happy to see people develop similar frameworks in other languages. For example, someone could take TypeScript or Kotlin and develop an equivalent framework using those languages. You could even follow Flutter very closely, with the same class hierarchy, names, etc, copying the documentation, and so forth. If such projects were developed, we would be interested in being involved at a high level in coordinating designs and sharing experiences.

If anyone is interested in doing this and would like to talk about it, please don't hesitate to reach out to me by e-mail: ian@hixie.ch

@Hixie Hixie closed this as completed Mar 6, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

9 participants