V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Creolophus
V2EX  ›  Apple

将一个老 iOS 工程用 Flutter 全部重写现实么?

  •  
  •   Creolophus · 2019-06-28 13:43:46 +08:00 · 4547 次点击
    这是一个创建于 2012 天前的主题,其中的信息可能已经有所发展或是发生改变。

    如题,这两年上面大领导一直想为了用新技术而用新技术,于是公司新招了个所谓的“前端架构”,实际感受下来就是个安卓高级开发的水平。。。而且他 Flutter 也是进公司后新学的,他居然信誓旦旦答应领导用 Flutter 全部重写现在的安卓和 iOS 工程。

    简单说一下 iOS 工程的情况,用了很多第三方 SDK,有网易云信这种大开发商的,也有其他很多小的第三方公司的特共 SDK..(比如一些智能硬件的\咪咕音乐的...)。

    我觉得就算时间能给的很充足,用 Flutter 然后还要集成这么多第三方 SDK,本身就特别难实现。

    27 条回复    2019-07-02 11:53:46 +08:00
    MarginK
        1
    MarginK  
       2019-06-28 13:46:08 +08:00   ❤️ 1
    用了很多第三方 SDK,还要自己用一个不成熟的 Flutter 重新实现?

    我觉得不现实
    hwren2012
        2
    hwren2012  
       2019-06-28 13:47:14 +08:00
    不靠谱,替换几个界面还凑合
    Lin0936
        3
    Lin0936  
       2019-06-28 13:51:08 +08:00   ❤️ 1
    谁答应的谁做呗
    ronaldong
        4
    ronaldong  
       2019-06-28 13:54:34 +08:00   ❤️ 1
    连闲鱼都没这个自信,他居然信誓旦旦,最后受累的还是实际做的人,很有可能会前功尽弃。
    Creolophus
        5
    Creolophus  
    OP
       2019-06-28 13:57:58 +08:00
    @ronaldong 闲鱼现在还是源生混进 Flutter 吗?
    baiyi
        6
    baiyi  
       2019-06-28 13:58:23 +08:00
    直接重写太夸张了吧,不如学习下闲鱼,一点点来。
    之前看到的闲鱼 flutter 混合开发文章:
    https://www.infoq.cn/article/xianyu-cross-platform-based-on-flutter
    ronaldong
        7
    ronaldong  
       2019-06-28 14:01:37 +08:00
    @Creolophus 对啊,直接全部重写,那心是得有多大啊
    weixiangzhe
        8
    weixiangzhe  
       2019-06-28 14:06:11 +08:00 via iPhone
    让他一点点来啊 找个麻烦的页面让他重写下
    ansonsiva
        9
    ansonsiva  
       2019-06-28 14:12:08 +08:00
    新学的都这样啊,等真的上手了发现哪儿哪儿都是坑
    我还想用 swiftUI 把我原来的 macOS app 重写下呢,新建了个项目,然后就没然后了
    Creolophus
        10
    Creolophus  
    OP
       2019-06-28 14:13:57 +08:00
    @ansonsiva hhhh,为什么没有然后了,能说下吗,对 SwiftUI 很感兴趣
    Vegetable
        11
    Vegetable  
       2019-06-28 14:24:08 +08:00
    核心问题是
    重构是没有产出的
    huage2580
        12
    huage2580  
       2019-06-28 14:27:51 +08:00
    不现实
    falcon05
        13
    falcon05  
       2019-06-28 14:29:07 +08:00 via iPhone
    成了提升在公司的声望和待遇,不成丰富简历,何乐而不为?
    ansonsiva
        14
    ansonsiva  
       2019-06-28 14:37:19 +08:00
    @Creolophus 好些东西还没出,像 HSplitView,VSplitView。然后写起来真累,Xcode 实在太稀烂,经常代码提示没了,或者报错报的根本不是实际的问题,还是等等吧,我先吃透了 swiftUI 以后再重写吧。
    Lax
        15
    Lax  
       2019-06-28 16:27:02 +08:00
    架构师是要先把螃蟹吃掉的。
    damngood
        16
    damngood  
       2019-06-28 16:30:39 +08:00   ❤️ 1
    干脆 Web 也包了吧. 不是说 Flutter 可以打包 web 版本了不.
    damngood
        17
    damngood  
       2019-06-28 16:33:28 +08:00
    @ansonsiva SwiftUI 如果不想那么折腾的话至少还要等几个 Beta 吧.

    目前 API 文档都是比较晦涩直白的编译器输出.
    melo112
        18
    melo112  
       2019-06-28 16:38:10 +08:00
    不大可能,难度比重构祖传代码还要高。
    lnim
        19
    lnim  
       2019-06-28 16:58:42 +08:00   ❤️ 1
    不靠谱~ 目前 flutter 和 native 通信只能通过 Platform Channels, 然而你们业务依赖了大量的原生开发的 sdk 这些肯定只能通过写 flutter 的 native 拓展来桥架~ 这部分 里边坑很多~ 而且你们的组件那个 view 说不定还得放到 flutter 画板上边
    , 各种事件响应又是一层 大坑, 我们调研了半天 最后就只是把 hybrid 的容器底层渲染换成了 flutter, 也用了好久才搞定
    chengkai1853
        20
    chengkai1853  
       2019-06-28 17:07:06 +08:00
    展示类,功能不多的用 Flutter 比较合适吧。功能多而且复杂真还不如用原生,毕竟最终还是要和原生打交道。你额外封装 SDK 也是个麻烦事。反正现在写 UI 哪个平台都也不慢..
    echo314
        21
    echo314  
       2019-06-28 17:12:00 +08:00
    其实也很难说,毕竟如果成了,到时候的开发人员或许可以少三分之一。

    不成那人就应该要滚蛋吧。
    ansonsiva
        22
    ansonsiva  
       2019-06-28 17:26:20 +08:00 via iPhone
    @damngood 是的,我这种业余爱好者还是先看看 iOS 的案例先,资料还多一点,macOS 的啥都查不到
    Creolophus
        23
    Creolophus  
    OP
       2019-06-28 17:44:16 +08:00 via iPhone
    @Lax 主要这架构只懂安卓,iOS 一窍不通
    zhaoFinger
        24
    zhaoFinger  
       2019-06-29 09:19:45 +08:00
    三方 sdk 多,还是老老实实的用原生别折腾了,穷之前写一个 flutter 应用,光一个地图就给我折腾的够呛。
    ai277014717
        25
    ai277014717  
       2019-06-29 13:35:09 +08:00
    不现实,除非业务逻辑不复杂,而且根本不会提升效率。iOS 和 Android 还要各写一份 channel
    gzf6
        26
    gzf6  
       2019-06-29 15:56:05 +08:00
    不可能的,所有的混合开发,最终都会依赖原生开发的技术,如果自己不会写原生的话,某些特殊的需求上很容易卡壳,比如我自己
    feikaras
        27
    feikaras  
       2019-07-02 11:53:46 +08:00 via iPhone
    这叫做没事找事。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5407 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 08:49 · PVG 16:49 · LAX 00:49 · JFK 03:49
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.