英文:
dart as server web application or golang
问题
我计划编写一个社交网络应用程序,并考虑在后端使用Dart。但我在思考,Dart是否是后端应用程序的正确选择。我在互联网上搜索了这个话题,但没有找到有用的东西,让我相信Dart适合后端使用。
我在考虑使用Go语言,但我需要从零开始学习这门语言。在Dart方面,我有一些经验,并且真的很喜欢Dart语言。
你知道,我试图做出正确的选择来使用正确的工具,所以我需要一些建议。Dart还是Go语言?
我知道Java提供了庞大的生态系统,但我根本不喜欢学习Java,就是不喜欢Java。
我会选择Neo4j数据库,我非常确定它适合社交网络。
英文:
I am planing to write an social network application and thinking about to use dart on backend. But I am asking me, if dart would be the right choice for backend application. I was searching in internet about this topic, but could not find something useful, that convince me to use dart for backend.
I am thinking to use golang, but I have to learn this language from zero. In dart I have some experience and really like dart language.
You know, I try make the right choice to use right tools, so I need some suggestions? Dart or golang?
I know, that java provide me hug ecosystem, but i don't like to learn java at all, just don't like java.
I would choose neo4j database, i am pretty sure, this suits for social network.
答案1
得分: 10
我不太喜欢Java,所以用Go开发了一个服务器。我非常喜欢使用Go。然后我开始写客户端,因为我也不喜欢JavaScript(事实上我讨厌它),所以我选择了Dart,我非常喜欢它。我已经在Dart中完成了很多服务器端的工作。一个很大的优势是我可以在客户端和服务器之间共享代码,在我目前的项目中这实际上是很多的。
我更喜欢用Go进行服务器端开发,但对于那些我已经在客户端使用Dart的项目,我会坚持使用Dart。对于这样新的、快速发展的语言,要跟上两种不同语言(以及生态系统和库)的最新进展太困难且耗时。
我认为每种语言都非常适合这个工作。Java有很多现有的库、教程等等,但Go和Dart也同样涵盖了大部分重要的内容。
基本上,我会说,坚持使用你最熟悉的语言。学习一门新语言会在至少几个月内影响你的生产力。
英文:
I don't like Java very much and developed a server in Go. I enjoyed working with Go a lot. Then I started with the client and because I also don't like JavaScript (in fact I hate it) I went with Dart which I like a lot. I already did a lot of server side work in Dart. A big advantage is that I can share code between client and sever, which is actually a lot in my current project.
I like Go better for server side development but I will stick with Dart for projects where I already use Dart for the client. It's just too difficult and time-consuming to stay up-to-date on two different languages (and ecosystem and libraries) for such new and fast evolving languages.
I think each language is a very good fit for this Job. Java has an awful lot of existing libs, tutorials, ... but most of the important things are covered in Go and Dart as well.
Basically I would say, stick with the language you know best. Learning a new language will impede your productivity for several months at least.
答案2
得分: 0
如果您将应用程序设计为松耦合的模块,那么您可以使用Dart编写(原型)模块,如果有一天您需要在GO中重新实现其中的一些模块(例如,您需要更好的性能),这是可行的。参考REST。此外,这将使您的应用程序具有可扩展性,并且您将能够为单独的模块公开API(例如,如果您需要将其中一些模块用作手机应用程序后端或为第三方开发人员提供)。
英文:
If you design your application in terms of loosely coupled modules then you can write(prototype) modules in Dart and if one day you will need to re-implement some of them in GO (for example you need better performance) it will be doable. Look at REST
Also it will make your application scalable and you will be able to expose API for separate modules (for example, if you need some of them as a phone app back-end or for the 3-d party developers)
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论