关于服务器编程语言的思考:是否考虑逐步从C/C++转向到Go/Java/Dart?

3回答

关于服务器编程语言的思考:是否考虑逐步从C/C++转向到Go/Java/Dart?

提问者 程序媛Adele 2015-09-22 1k浏览

工具就是生产力,别无视工具。

    "语言只是工具,干好活才是重要的”,这话貌似富有哲理,但实则等于没说!

    使用C/C++编写程序有15年多的历史了,我一直认为C++很优美,指针无所不能,多态就是伟大发明,但现在我想转用Java和Go。大约在2000年初次接触Java时,深刻的印象是:比蜗牛还慢,直接导致了未能学习下去。

    但是时光如梭,Java早已今非昔比,速度上有了极大提升,各种成功案例已证明它可以胜任非常多的场合,特别是当天火红的大数据领域,以Hadoop为核心的生态圈中,多数的系统如Hadoop本身、正红的Spark和Storm等,都是基于Java或类Java语言(Scala、Clojure)开发。

    也许,我们应当抛弃程序员情节,逐步采用Java来做开发,它可以大幅度解放程序员,也许因此加班可以变得少一些。

    除了Java外,由Google出品的Go应当也是个不错的选择,当下正火的Docker即是由Go语言开发,创业型公司七牛存储更是采用Go语言重写了整个系统。Go是为多核和分布式编程而生,相比Java也许更优秀,唯一不足是相比Java整个生态没那么丰富多彩。ErLang虽然是一门有些年头的语言,多核和分布式上和Go类似,但函数式编程门槛过高。

    服务器使用 Node.js / Dart 也越来越成为一个可行的选择,国内比如网易开源的Pomelo,国外的就更多了,例如:LinkedIn, ebay, Uber,Goupon,paypal,taobao,yahoo都有应用Node,以下是案例:https://github.com/joyent/node/wiki/Projects,-Applications,-and-Companies-Using-Node

快来消灭0回答吧

{{ dataList.answer_count | view-format }}回答
  • 何小成 2015-09-22 20:34
    楼主可参考之前的一个热点话题帖,http://gad.qq.com/college/articledetail/5346
    这个怎么说呢,各有优势,各有各的特点,不能因为一种语言完全否定另一种语言,总的来说,还是看具体业务情况吧,不过论开发效率来说的话,Java/Go/Dart确实好过C++,C++的资深工程师相对java等语言也是比较少的,如果不是特别追求效率和性能,我想Java也能满足大部分需求了
    0评论
  • 蘑菇 2015-10-21 10:23
    不能因为一门语言的新特性就贸然使用,要综合考虑开发效率等因素
    0评论
  • 李剑英 2015-10-14 17:28
    语言有啥好争的,都是为了生产力而存在着。各有各的特点,市场终究会做出抉择。
    但有一点是已经确定不变的,现在的很多大型项目都是多语言混合开发。
    c++ 依然重要,很多项目的底层部分模块都是c/c++开发的,暂时能挑战c++的语言还都没有形成气候。
    而业务逻辑,c++已经被吊打多年。
    0评论
  • {{ answer.user.NickName }} {{ answer.profession }} {{ answer.created_at | time-format }}
    专家回答
    {{{ answer.answer }}}
    {{ answer.answer_count | view-format }}评论
加载中... 查看更多回答