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

[字节内推]客户端架构组 Flutter PC 开发

  •  
  •   sunbreak · 2020-06-25 16:54:01 +08:00 · 11059 次点击
    这是一个创建于 1373 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我在字节跳动客户端架构组做 Flutter (注 1 )开发,目前亟待 Windows 专家一起推进 PC 端。

    不要求会 Flutter (入职培训),熟悉 Windows 开发 or 熟悉 Skia 引擎 or 熟悉 Framework 开发 即可

    内推链接: https://job.toutiao.com/s/JRKmE7p 备注 Windows 专家


    我们目前已经在推进 Flutter PC 的应用了,比如:

    https://github.com/woodemi/Flutter-RTM-Desktop

    https://github.com/woodemi/Flutter-SDK-Desktop

    每双周和 Google 同步一次进度,昨天还开会说了 Windows 打包编译问题,因为内部一些项目已经开始试用

    头条薪资绝对丰厚(这个想必有耳闻),北上广深杭、武汉都有分部,疫情期间都飞书远程办公,位置都不是问题


    注 1:Flutter 是 Google 推出的跨端框架,https://flutter.dev ,一套代码能运行到 Android/iOS/Web/Windows/macOS 上,目前 Android/iOS 已经成熟,各大厂商都在用(BAT 、TMD ),PC/Web 还在快速推进中

    第 1 条附言  ·  2020-06-25 17:46:00 +08:00

    微信:wk2311007

    邮箱:[email protected]

    第 2 条附言  ·  2020-06-26 08:21:53 +08:00

    Flutter Web

    Flutter Web在部分页面已经落地,需要优化性能和Framework组件

    内推链接相同: https://job.toutiao.com/s/JRKmE7p 备注Web专家

    Flutter Android/iOS

    Android/iOS已经比较成熟,维护为主,内推链接相同: https://job.toutiao.com/s/JRKmE7p

    105 条回复    2020-07-14 23:21:12 +08:00
    1  2  
    sunbreak
        1
    sunbreak  
    OP
       2020-06-25 17:01:39 +08:00
    jerrry
        2
    jerrry  
       2020-06-25 17:10:52 +08:00 via Android
    Flutter PC 已经能上生产环境了?
    sunbreak
        3
    sunbreak  
    OP
       2020-06-25 17:33:28 +08:00
    @jerrry 我上家公司的产品用的 Flutter: https://www.36notes.com/app,Android/iOS/Windows/macOS
    sunbreak
        4
    sunbreak  
    OP
       2020-06-25 17:34:08 +08:00
    官方 Medium 公布了 PC 版本的开发进度,DeepL.com 简单翻译了下: https://juejin.im/post/5eedcde051882565ca327a73

    - 支持 Release 编译了
    - 主要使用 FFI 写 Native 接口
    - 使用 Federated Plugins 结构适配多平台
    - Windows 准备适配 UWP
    maoxs2
        5
    maoxs2  
       2020-06-25 17:38:05 +08:00 via Android   ❤️ 1
    被骗进 dart 以后发现库要啥没啥…sha3 都是自己写的…
    SNOOPY963
        6
    SNOOPY963  
       2020-06-25 17:42:09 +08:00
    🤩偶遇!
    putaozhenhaochi
        7
    putaozhenhaochi  
       2020-06-25 17:45:20 +08:00 via Android
    Flutter 野心这么大?
    sunbreak
        8
    sunbreak  
    OP
       2020-06-25 17:47:22 +08:00
    @maoxs2 可以调用现有的 Android/iOS/Windows 库的,目前主要是用 MethodChannel 调用,后续可以用 dart:ffi 直接调用 C/C++接口
    pinkSlime
        9
    pinkSlime  
       2020-06-25 17:54:45 +08:00
    electron 瑟瑟发抖
    Sin
        10
    Sin  
       2020-06-25 18:05:52 +08:00
    道理我都懂,为什么发 .NET 节点?:doge
    sunbreak
        11
    sunbreak  
    OP
       2020-06-25 18:07:38 +08:00
    @putaozhenhaochi Flutter 是 Chrome 团队开发的,基于 Skia 引擎 +DirectUI 思想

    其实国内开发常用 duilib 和 SOUI 也是类似的方案,相当于官方实现

    C# 的 Blazor 也有类似的结构,官方还尝试用 Flutter + Blazor 一起做

    https://www.zdnet.com/article/web-developers-microsoft-blazor-lets-you-build-native-ios-android-apps-in-c-net/
    sunbreak
        12
    sunbreak  
    OP
       2020-06-25 18:08:22 +08:00
    @Sin 懂 Windows 开发、渲染引擎、Framework 的大佬多啊~
    sunbreak
        13
    sunbreak  
    OP
       2020-06-25 18:11:42 +08:00
    @pinkSlime 目前国内很多 C 端应用都是 Electron 做的,JS 某些场景还是有性能瓶颈,所以趁着手机 APP 转向 Flutter,内部也开始推进 PC 端应用转向 Flutter 了
    marquina
        14
    marquina  
       2020-06-25 18:42:23 +08:00
    道理我都懂,为什么头像是小米 LOGO
    XGHeaven
        15
    XGHeaven  
       2020-06-25 19:04:40 +08:00 via Android
    杭州也能写 flutter pc 了?
    hantsy
        16
    hantsy  
       2020-06-25 19:07:39 +08:00
    Flutter 在 Web 还不成熟,桌面就更差了。桌面开发上,MS Xarmian 跨平台的能力应该比 Flutter 强。https://www.infoq.com/news/2020/06/maui-multi-platform-ui-dotnet/
    sunbreak
        17
    sunbreak  
    OP
       2020-06-25 19:08:05 +08:00
    @marquina 刚从小米到头条
    sunbreak
        18
    sunbreak  
    OP
       2020-06-25 19:10:17 +08:00
    @hantsy 恩恩,所以我们在和 Google 开双周会,快速推进中

    头条主要都是 Android/iOS 程序员,转 Flutter 更划算,如果团队都是 C#,当然 Xarmian 或者 MAUI 更合适
    sunbreak
        19
    sunbreak  
    OP
       2020-06-25 19:10:43 +08:00
    @XGHeaven 可以的,杭州 Flutter 团队刚刚组建,现在进去就是元老:)
    maoxs2
        20
    maoxs2  
       2020-06-25 20:08:59 +08:00 via Android
    @sunbreak 要跨平台用的话就不该用现成平台库了,而且 sha3 这种一般都是语言提供的(go rust 都有),windows api 里好像莫得。另外要是要用 ffi 我还得提前一个个平台编译……最后我记得有个叫 hover 的好像可以直接用 flutter+go 做桌面跨平台,当时就是看到这个想试试(然而至今没试
    aegp
        21
    aegp  
       2020-06-25 20:20:56 +08:00
    在.NET 节点是要招.NET 开发吗?有什么要求?
    sunbreak
        22
    sunbreak  
    OP
       2020-06-25 20:23:20 +08:00
    sunbreak
        23
    sunbreak  
    OP
       2020-06-25 20:24:44 +08:00
    @aegp

    我在字节跳动客户端架构组做 Flutter (注 1 )开发,目前亟待 Windows 专家一起推进 PC 端。

    不要求会 Flutter (入职培训),熟悉 Windows 开发 or 熟悉 Skia 引擎 or 熟悉 Framework 开发 即可

    内推链接: https://job.toutiao.com/s/JRKmE7p 备注 Windows 专家
    janxin
        24
    janxin  
       2020-06-25 20:34:36 +08:00
    飞书用的 Flutter ?
    xrr2016
        25
    xrr2016  
       2020-06-25 20:38:39 +08:00
    哇,好想去啊,可惜算法不太行呀,让我在练练😝
    maoxs2
        26
    maoxs2  
       2020-06-25 20:39:58 +08:00 via Android
    @sunbreak 下面的我写的……上面的那个的 sha3 其实只有 keccak
    sunbreak
        27
    sunbreak  
    OP
       2020-06-25 21:29:10 +08:00
    @janxin 目前用的 Electron,已经碰到性能瓶颈了,正在推进 Flutter 模块
    sunbreak
        28
    sunbreak  
    OP
       2020-06-25 21:31:30 +08:00
    @xrr2016 不要求算法,不要求算法,不要求算法

    主要考察项目经验、数据结构、设计模式、编程思想、现场代码测验为主
    huruwo
        29
    huruwo  
       2020-06-25 23:41:18 +08:00
    Flutter PC 能作为 qt/electron 的替代品吗
    huruwo
        30
    huruwo  
       2020-06-25 23:42:33 +08:00
    @sunbreak 性能瓶颈是什么意思,并发太多处理不了了吗。那 electron 岂不是大坑
    sunbreak
        31
    sunbreak  
    OP
       2020-06-26 05:09:42 +08:00
    @huruwo 有些场景,比如 Video Player 就没法很好处理,准备换成 CEF 了。大部分场景还是能用的
    sunbreak
        32
    sunbreak  
    OP
       2020-06-26 05:14:02 +08:00
    mike123456
        33
    mike123456  
       2020-06-26 08:10:00 +08:00 via iPhone
    @sunbreak 有用 flutter 在 ios 上实现热更新动态化吗
    sunbreak
        34
    sunbreak  
    OP
       2020-06-26 08:16:05 +08:00
    leetao94
        35
    leetao94  
       2020-06-26 08:21:46 +08:00
    flutter 在桌面端就是个弟弟~~要啥啥没有,看 flutter 的桌面端下[插件]( https://github.com/google/flutter-desktop-embedding/tree/master/plugins/menubar)就知道了,除此之外,好多库都没有考虑客户端下端使用场景,更多的是好多三方库日久失修。。。
    最近就在用 flutter 写桌面端软件,本来想 macOS 和 windows 下一波的~后来发现是我太天真了,然后自己还得手动修改现有库或者造轮子
    sunbreak
        36
    sunbreak  
    OP
       2020-06-26 08:23:40 +08:00
    @leetao94 所以自己改轮子,不如来头条改轮子啊,还有工资拿。我们就是负责做轮子的,让弟弟长大:)
    leetao94
        37
    leetao94  
       2020-06-26 08:29:42 +08:00
    @sunbreak 哈哈~算了~~头条工资福利是蛮好的~但是加班受不了,习惯 855 了~
    justin2018
        38
    justin2018  
       2020-06-26 09:23:24 +08:00
    头像有小米的 Logo 😅
    sunbreak
        39
    sunbreak  
    OP
       2020-06-26 09:33:46 +08:00
    @justin2018 刚从小米到头条
    sunbreak
        40
    sunbreak  
    OP
       2020-06-26 09:34:18 +08:00
    @leetao94 欢迎推荐其他朋友,对头条、对 Flutter 、对 PC 感兴趣的都行
    sunbreak
        41
    sunbreak  
    OP
       2020-06-26 09:34:35 +08:00
    @leetao94 奖金归您哈~
    XGHeaven
        42
    XGHeaven  
       2020-06-26 17:54:40 +08:00 via Android
    @leetao94 头条 1095,但要是没事 7 点走都行
    XGHeaven
        43
    XGHeaven  
       2020-06-26 17:59:07 +08:00 via Android
    @sunbreak 是啥部门,lark frontend,留个邮箱吧?另外元老还是算了,只求能做点有价值的东西。
    las917vki
        44
    las917vki  
       2020-06-26 19:15:58 +08:00
    用 C#写可以吗?
    sunbreak
        45
    sunbreak  
    OP
       2020-06-26 20:45:32 +08:00
    @XGHeaven [email protected] ,主楼附言都有了哈~
    sunbreak
        46
    sunbreak  
    OP
       2020-06-26 20:46:23 +08:00
    @las917vki 目前 Flutter 仅支持 Win32,是 C/C++写的; Flutter 团队正在兼容 UWP,可能会有 C#

    其实语言区别不大,主要考察思维逻辑
    idblife
        47
    idblife  
       2020-06-27 12:01:11 +08:00
    头像是小米?
    miboy?
    sunbreak
        48
    sunbreak  
    OP
       2020-06-27 16:15:17 +08:00
    @idblife 刚从小米到头条
    Leee
        49
    Leee  
       2020-06-27 16:43:19 +08:00 via Android
    前司就有上线过 Flutter 开发的产品,对这个框架还是非常看好的,就可惜本人其他经验不多,否则挺想试试的,再过几个月吧
    lizhaohong
        50
    lizhaohong  
       2020-06-27 20:30:09 +08:00
    @sunbreak 大佬你好 请问 base 哪里呢,我是做了一年多 flutter 开发 不算专家 有机会进入吗 深圳的 985 三年本科
    sunbreak
        51
    sunbreak  
    OP
       2020-06-28 04:20:02 +08:00
    @Leee 有 Flutter Android/iOS 经验也招的,是我领导直接带

    我主要负责 PC/Web 两个方向,内推链接是一样的
    sunbreak
        52
    sunbreak  
    OP
       2020-06-28 04:20:34 +08:00
    @lizhaohong 可以的,北上广深杭 + 武汉都有岗位的,直接投内推链接就好
    zhengjing
        53
    zhengjing  
       2020-06-28 16:41:02 +08:00
    @sunbreak 面试头条是不是都要算法?
    sunbreak
        54
    sunbreak  
    OP
       2020-06-28 17:40:24 +08:00
    @zhengjing 不要求算法,不要求算法,不要求算法

    主要考察项目经验、数据结构、设计模式、编程思想、现场代码测验为主
    sunbreak
        55
    sunbreak  
    OP
       2020-06-28 23:31:18 +08:00
    捞一下
    sunbreak
        56
    sunbreak  
    OP
       2020-06-29 04:51:12 +08:00
    再捞一下
    sunbreak
        57
    sunbreak  
    OP
       2020-06-29 06:01:36 +08:00
    捞一下
    sunbreak
        58
    sunbreak  
    OP
       2020-06-29 07:54:44 +08:00
    再捞一下
    woodemidev
        59
    woodemidev  
       2020-06-29 11:58:38 +08:00
    捞一下
    sunbreak
        60
    sunbreak  
    OP
       2020-06-29 11:59:49 +08:00
    捞一下
    woodemitest
        61
    woodemitest  
       2020-06-29 12:35:44 +08:00
    捞一下
    sunbreak
        62
    sunbreak  
    OP
       2020-06-29 12:39:36 +08:00
    再捞一下
    Linvas
        63
    Linvas  
       2020-06-29 14:33:52 +08:00
    做了一个 flutter for web, 太卡了, 打包出来的东西都是 canvas 来处理的. 客户端没试过.
    sunbreak
        64
    sunbreak  
    OP
       2020-06-29 16:10:06 +08:00
    @Linvas 是的,目前 Flutter Web 默认是 DomCanvas,马上即将切换成 CanvasKit ( WASM 实现),性能就好很多了

    这些细节问题也是头条 Flutter 组需要处理的
    woodemidev
        65
    woodemidev  
       2020-06-29 19:52:17 +08:00
    再捞一下
    woodemitest
        66
    woodemitest  
       2020-06-29 20:09:24 +08:00
    再捞一下
    sunbreak
        67
    sunbreak  
    OP
       2020-06-29 20:36:08 +08:00
    捞一下
    woodemidev
        68
    woodemidev  
       2020-06-29 20:50:06 +08:00
    捞一下
    woodemitest
        69
    woodemitest  
       2020-06-29 21:40:26 +08:00
    捞一下
    sunbreak
        70
    sunbreak  
    OP
       2020-06-29 21:54:59 +08:00
    在捞一下
    kunkunzhang
        71
    kunkunzhang  
       2020-06-30 12:58:50 +08:00
    @sunbreak 不是专家,写过 flutter 要么
    sunbreak
        72
    sunbreak  
    OP
       2020-06-30 13:14:33 +08:00
    @kunkunzhang 可以的,了解 Flutter 是加分项,Android/iOS/Web/Windows 了解一端都行
    kunkunzhang
        73
    kunkunzhang  
       2020-06-30 13:24:37 +08:00
    @sunbreak 老哥我投了,flutter 实习开发都可以,你看简历行不行
    sunbreak
        74
    sunbreak  
    OP
       2020-06-30 13:29:42 +08:00
    @kunkunzhang 加微信说吧,wk2311007
    kunkunzhang
        75
    kunkunzhang  
       2020-06-30 13:32:23 +08:00
    @sunbreak web 写过 node,vue,桌面端写过 electron,移动端写过 flutter,简历发到你邮箱了
    sunbreak
        76
    sunbreak  
    OP
       2020-06-30 15:28:47 +08:00
    @kunkunzhang 收到
    hanangellove
        77
    hanangellove  
       2020-06-30 19:14:28 +08:00
    支持一下
    sunbreak
        78
    sunbreak  
    OP
       2020-06-30 23:33:06 +08:00
    @hanangellove 谢谢~
    lenqu
        79
    lenqu  
       2020-07-01 00:28:25 +08:00
    去年刚从桌面端 UWP 到熟练 Xarmian,然后 Flutter 出来了,我觉得.Net 各方面优势都很强尤其是后面.NetCore 合并 Framework,所以我坚持 Xarmian,但是我最近做的一个 app,前端用的 Flutter,嘿嘿,用过之后越发感觉是这样
    sunbreak
        80
    sunbreak  
    OP
       2020-07-01 05:47:16 +08:00
    @lenqu 恩恩,关键看团队组成,如果都是 Android/iOS 推荐后续 Flutter,如果是前端多推荐 RN,如果是.Net 体系就用 MAUI
    matrixji
        81
    matrixji  
       2020-07-01 07:32:42 +08:00
    帮顶。这不是一个招聘贴,这是一个技术布道贴,@sunbreak 我是做后端的,Flutter 什么时候能支持后端开发,我发你简历。
    sunbreak
        82
    sunbreak  
    OP
       2020-07-01 07:39:45 +08:00
    @matrixji 额……Flutter 是前端 UI 框架……不会支持后端的

    但是 Dart 一直都可以用在后端,最近因为 Flutter 热度起来了,AWS 已经支持 Dart 作为 Lambda 的语言了

    https://aws.amazon.com/cn/blogs/china/introducing-a-dart-runtime-for-aws-lambda/
    woodemidev
        83
    woodemidev  
       2020-07-01 10:07:37 +08:00
    帮顶
    KuroNekoFan
        84
    KuroNekoFan  
       2020-07-01 11:56:02 +08:00
    字节在实践里有总结出 flutter 比 rn 的优势在哪嘛,比较好奇这一点
    sunbreak
        85
    sunbreak  
    OP
       2020-07-01 12:39:24 +08:00
    @KuroNekoFan 可以看看这个两篇分析

    2019 年 12 月的,“全网最全 Flutter 与 React Native 深入对比分析”: https://zhuanlan.zhihu.com/p/70070316

    最近 6 月的,“Flutter vs React Native vs Native:深度性能比较”: https://www.toutiao.com/a6844271997787046412
    sunbreak
        86
    sunbreak  
    OP
       2020-07-01 14:53:35 +08:00
    捞一下
    woodemitest
        87
    woodemitest  
       2020-07-01 21:26:04 +08:00
    帮顶
    woodemidev
        88
    woodemidev  
       2020-07-02 06:26:37 +08:00
    捞一下
    sabernwj
        89
    sabernwj  
       2020-07-02 06:34:43 +08:00 via Android
    原来写过一两年 WinForm,由于一些原因一年没上班了,正好最近学起了 flutter,感觉这个方向还挺感兴趣的,不知道有木有机会试试
    sunbreak
        90
    sunbreak  
    OP
       2020-07-02 10:47:53 +08:00
    @sabernwj 可以的啊,内推投起来
    littlegrace111
        91
    littlegrace111  
       2020-07-02 11:02:25 +08:00
    我在阿里云,目前也在探索 Flutter PC 在 Linux arm 上的落地,目前方案采用 QT + WebEngine 的混合方案,工程效率和性能都遇到瓶颈,可以多多交流。
    sunbreak
        92
    sunbreak  
    OP
       2020-07-02 12:26:07 +08:00
    @littlegrace111 可以的,加微信 wk2311007,也有阿里负责 Flutter PC 的朋友在微信群里呢
    woodemitest
        93
    woodemitest  
       2020-07-03 00:06:36 +08:00
    捞一下
    woodemidev
        94
    woodemidev  
       2020-07-03 05:47:28 +08:00
    绑顶
    dongguangming
        95
    dongguangming  
       2020-07-03 06:13:34 +08:00
    Flutter 是趋势
    sunbreak
        96
    sunbreak  
    OP
       2020-07-03 10:51:01 +08:00
    @littlegrace111 建议你关注下这两人:

    https://github.com/MarcusTomlinson
    https://wiki.ubuntu.com/marcustomlinson

    https://github.com/kenvandine
    https://wiki.ubuntu.com/KenVanDine

    这俩 Ubuntu 核心工程师已经进驻 Flutter 的 Discord 讨论组,帮助维护 Flutter Linux 了
    woodemidev
        97
    woodemidev  
       2020-07-03 20:00:38 +08:00
    帮顶
    sunbreak
        98
    sunbreak  
    OP
       2020-07-03 20:01:23 +08:00
    @dongguangming 是不是趋势不好说,有些场景下确实挺好用的
    woodemitest
        99
    woodemitest  
       2020-07-04 05:45:22 +08:00
    帮顶
    keven2000
        100
    keven2000  
       2020-07-09 17:01:16 +08:00
    桌面开发还是用传统的 delphi (现在叫 Rad studio )或 vs studio,自由,直接,调用系统资源不受限制
    也一直关注 flutter 的发展,潜力无限,工具就是根据项目及公司情况选择合适的
    1  2  
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2811 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 14:48 · PVG 22:48 · LAX 07:48 · JFK 10:48
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.