Android 哪天会不会可以用 golang 开发 然后效率翻好几番 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
AsaDong
V2EX    Android

Android 哪天会不会可以用 golang 开发 然后效率翻好几番

  •  
  •   AsaDong 2015-08-20 15:32:56 +08:00 21596 次点击
    这是一个创建于 3704 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我就随便想想 看着 android 的内存涨啊涨 效率又这么低下,设备工艺也不如 iPhone 怎么办呢
    18 条回复    2015-08-28 12:45:28 +08:00
    Bown
        1
    Bown  
       2015-08-20 15:42:50 +08:00
    UI 相关的东西不大可能用 go 来写了得重写整个 SDK
    go 后续用来写一些 native 的 lib 、游戏什么的还是不错的
    em70
        2
    em70  
       2015-08-20 15:44:33 +08:00
    效率可以通过不断提升的硬件和系统优化解决,而 java 虚拟机机制对硬件兼容性这是其他语言无法取代的
    cheneyeah
        3
    cheneyeah  
       2015-08-20 15:50:49 +08:00   1
    如果是内存的话,其实跟语言无关,跟程序员的功力有关...
    mthli
        4
    mthli  
       2015-08-20 15:54:26 +08:00 via Android
    索尼大法好。
    ant_sz
        5
    ant_sz  
       2015-08-20 15:57:23 +08:00
    然而事实上目前的 benchmark 显示 Go 语言的运行速度其实跟 Java 在一个量级。即使是编译运行加上 GC 什么的 runtime 也不会很快的。。。
    ikaros
        6
    ikaros  
       2015-08-20 15:59:29 +08:00
    今天 1.5 正式版已经发布了,可以用 1.5 内置的 gomobile 写一些 android/iOS 程序了
    https://sourcegraph.com/blog/live/gophercon2015/123653512740
    honeycomb
        7
    honeycomb  
       2015-08-20 15:59:57 +08:00
    现在 AOT 不算慢,而且性能敏感的代码都用 JNI
    comicfans44
        8
    comicfans44  
       2015-08-20 16:11:35 +08:00   1
    ...不可能。单就语言来说 C 也可以写出效率低下的代码,内存再升级也比不上应用内存泄露啊。效率这个东西应该还是要看 app 开发者的优化, ios 体验好那是 apple 的代码审查严格。
    假如是简单的程序逻辑,那么 java 不会成为性能瓶颈的,现在 art 都是编译成原生代码,几乎算不上虚拟机了。但要是密集运算,可能改用 jni 或者 renderscript ,感觉 golang 在这方面没有太多能插足之处。
    AsaDong
        9
    AsaDong  
    OP
       2015-08-20 16:24:43 +08:00
    @ikaros 还真有
    jun4rui
        10
    jun4rui  
       2015-08-20 17:00:55 +08:00
    其实现在蛮多就是用 C 开发的,而且现在 Android 的 APP 在 ART 下也没啥慢的了吧?
    hooluupog
        11
    hooluupog  
       2015-08-20 17:12:28 +08:00
    Go 到现在没有一个像样的 2D , 3D 图形库,更没有移动,桌面的 gui 框架,所以除非它有什么内部秘密项目,否则以目前的情况, 2 年以内看不到 Go 开发 android app 的可能性。
    另外 dart 也在搞 sky , google 到底在想什么, android 未来到底会有什么新东西,不好说。
    不过单从语言上说, Go 倒是很适合开发出 UI 程序,天生并发,没有一大堆 callback ,而且除了 oop ,如今 FRP 也慢慢成了开发 UI 的趋势(参考 facebook 的 react ),同一套代码,跑在 android , ios 上(如果连 web 也支持就更爽了),挺让人期待的。
    Bown
        12
    Bown  
       2015-08-20 18:02:08 +08:00
    Go1.4 就加入了 arm 下的工具链支持 Android 了,还有一个独立的 mobile 探索项目 http://godoc.org/golang.org/x/mobile ,提供了一些基础的 go 和 java 互调的 binding 库、 NativeActivity 和生命周期回调、和一个极简的 sprite 引擎可以来写游戏,其实都是基于 C 的 OpenGL 的封装
    1.4 发布的时候我写过一个 Go 版的 Android 贪吃蛇。。
    kaneg
        13
    kaneg  
       2015-08-20 23:02:25 +08:00
    生态圈是关键,相比目前 Java 数以百万计的开发人员和数不清的开源库, Go 还是太嫩了。得开发人员得天下,微软目前开源.Net 是在下一盘大棋
    FrankFang128
        14
    FrankFang128  
       2015-08-21 07:42:00 +08:00 via Android
    效率分为开发效率,运行效率,还有招聘效率
    missdeer
        15
    missdeer  
       2015-08-21 10:57:39 +08:00
    ivy, first golang android app by rob pike rocks
    https://groups.google.com/forum/#!topic/golang-nuts/tDYEdAXyk4A
    CaiHuan
        16
    CaiHuan  
       2015-08-27 09:34:22 +08:00
    用 golang 那还不如用 rust
    quiz
        17
    quiz  
       2015-08-28 12:44:46 +08:00
    Golang 效率高了,但是应该算是一种退步吧:)
    https://www.dartlang.org/mobile/
    看看 google 想怎么玩儿
    quiz
        18
    quiz  
       2015-08-28 12:45:28 +08:00
    最近在用 Kotlin 做一个小项目,有喜欢玩儿 Kotlin 的同学欢迎来搞基!
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     3558 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 23ms UTC 04:33 PVG 12:33 LAX 21:33 JFK 00:33
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86