B
B
beduin012014-07-17 08:19:45
Dart
beduin01, 2014-07-17 08:19:45

What is the difference between Dart and Go in terms of their positioning?

On the one hand, the answer may seem obvious: Go is for web services, and Dart is for browsers.
However, how then is it possible that one of the most productive web servers in general is written in JavaScript? If so, then it turns out that Dart can also successfully compete with Go in this market?
Explain which niches of these languages ​​overlap and which differ?

Answer the question

In order to leave comments, you need to log in

5 answer(s)
S
Sergey Lerg, 2014-07-17
@Lerg

Go isn't just for web services anymore. It is also suitable for system programming.
Dart is by definition a "JavaScript replacement", so where JavaScript is used, Dart can be used as well. The goal of Dart is to give developers a better tool for complex and high-load web applications, while at the same time increasing performance.
Dart can compete with Node.js, but not with Go, as it will be more of a hack. On an absolute scale, the performance of Node.js is not that great (compared to C).
Obviously, Go and Dart are fundamentally different languages, Dart is dynamic and Go is static.

S
SilentFl, 2014-07-17
@SilentFl

Dart was built as a replacement for js, so a lot of developer effort was focused on supporting all the actions that can be done from the browser. Well, as a consequence of this development, it can, like js Node, be used on the server.
Go, on the other hand, was created as a systems programming language, with an eye on network applications. Accordingly, it is convenient to make network tools, web services, various auxiliary utilities from Go, but there will be an ambush from the user interface - this is either html + js, or bindings on Qt.
Dart can be used in the "Go area", but it will be terribly inconvenient. And on Go, you can "poke your head into the Dart area", but this will also be a torment. You can draw an analogy in terms of functionality: Dart is js, Go is Python, and apply them accordingly.

P
Puma Thailand, 2014-07-17
@opium

Toda is clearly not a competitor of the year
and the node has high performance only in certain cases

L
lookid, 2014-07-17
@lookid

Ordinary languages ​​with static typing, which are quite easy to learn. Surely some MIT will give a course on machine learning or discrete analysis in Go / Dart / Python and other Java, rather than C.
Oh, well, nonsense. If a page with Javascript is given as a response to a client request, this does not mean that the service is written in Javascript. It may well be in Go. How do you know the server side.

K
kelegorm, 2015-04-02
@kelegorm

I would like to emphasize that Dart was not designed to be a "replacement for js", it's just that they compete in the same area. If you want - write in Dart, compile in JS, if you want - write directly in JS. Who is more comfortable.
It's more convenient for me to write in Dart because... it's more typed. I do not have much experience with JS libs, I am not attached to JS at all, so I am equally new to both JS and Dart. But Dart as a language is closer to me.
It is much more interesting to look at Dart on the server, here it competes very seriously with Node.js. Here's why: Node doesn't have as much reputation as js in the browser. Moreover, on the Dart server, the code no longer needs to be compiled into JS, and it can work itself, natively. And faster than JS. Again, it is convenient when the client and server have the same language and the same libs.
Go and Dart are completely different things, although you can write the same thing in them. Dart is a scripting language, while Go is a compiled, lower-level one. If we talk about sites, then Dart is easier to write CMS, blogs, sites and all that. And on Go - it is better to write game and media servers (here it will compete with Erlang).

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question