V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  3dwelcome  ›  全部回复第 61 页 / 共 155 页
回复总数  3084
1 ... 57  58  59  60  61  62  63  64  65  66 ... 155  
2021-07-21 14:21:43 +08:00
回复了 3dwelcome 创建的主题 Android 安卓开发小技巧,教你们如何用文本 XML 动态生成界面。
@yukiww233 就相对简单的 UI 约束而言(对父级的上下左右约束),问题不大的,以前我还专门开过帖子,讨论过 UI 约束布局问题 /t/779153

你说控制响应的代码,我是全部反射到别的语言来处理。安卓可以通过 webview 调用 JS,也可以调用 C++,这两个语言最适合写跨平台的业务逻辑,网上现成的 runtime 库也不少。

我其实没搞懂,官方为什么不提供文本 XML 生成界面的函数,又不是每个项目界面都能写死在 apk 里的。
2021-07-21 13:41:52 +08:00
回复了 superbai 创建的主题 程序员 有 V 友使用 vs code 开发 Java 大型项目吗
@kop1989

1. 猛男爱折腾,vscode 很适合折腾。
2. 猛男不用智能提示,裸写代码无所畏惧。
2021-07-21 13:35:31 +08:00
回复了 3dwelcome 创建的主题 Android 安卓开发小技巧,教你们如何用文本 XML 动态生成界面。
@john6lq 用 webview 也太简单粗暴了,很多悬浮层效果不太好弄。同事说,你们开发出来的安卓软件,界面怎么像 PC 软件,套皮 Webview 还是差那么一点感觉。

前端不用写原始 XML,只要写 HTML 就行了。工具主要用途还是中间层适配,自动转换 HTML->XML,尽可能把 Android 的 XML 界面格式黑盒化。

稳定性也不用担心,解析 XML 生成 UI 那套核心代码,还是调用安卓自己内部的。外围只是模拟资源预编译流程,负责喂安卓 XML 数据,不太容易出问题。
2021-07-21 12:08:58 +08:00
回复了 snuglove 创建的主题 Docker registry-1.docker.io 无法访问
我设置一堆国内镜像源也不行,怀疑是下载的 docker 很小众,没被镜像站收藏进去?

最后还是走 http 代理的。
2021-07-21 12:00:11 +08:00
回复了 3dwelcome 创建的主题 Android 安卓开发小技巧,教你们如何用文本 XML 动态生成界面。
@JellyBeanX “有具体的应用场景吗”

用纯代码创建界面太抽象,而用 AndroidStudio 界面编辑器又定的太死,每次都要编译后才能使用。

这方法也算取个中间值,兼顾了 XML 可阅读性和运行期生成界面。
2021-07-21 11:55:16 +08:00
回复了 3dwelcome 创建的主题 Android 安卓开发小技巧,教你们如何用文本 XML 动态生成界面。
至于写个 UI,为什么不用 AndroidStudio 直接写,而要绕那么大一个圈子。

是因为现在主流开发模式,都是同一套代码去适配各种平台,不可能为了安卓单独写一整套界面和逻辑,而是添加中间转换层。

比如把跨平台的<div><span>Hello World</span></div>,转换成安卓的<TextView>和<Button>,基于文本 XML 相互转换,要比代码之间的转换方便很多。
@MorningStar0 别自己骗自己了,你是不可能抛弃 react 的,也不可能抛弃一大堆历史代码。
你也根本就不知道,类似 figma 的大画布 wasm 解决方案应该怎么写。
同一个 wasm 技术,你眼里就只有密集型计算,我眼里就是一整个迷你世界,一切皆有可能,性能反而没那么重要。
我们两个人说的东西,就不在同一个点上。
@MorningStar0 说先入为主,是你老是把 wasm 看成 react 之类的附属库,不断的强调 dom 胶水层调用性能。
然而对我来说,wasm 自己就是开发框架,是和 react 同等级别的破局者。
你不可能舍弃 react 历史包袱,所以你永远达不到 figma 的高度。总会遇到 DOM 数量上限问题,并且无法解决。
@MorningStar0 多说无益,你已经先入为主,思维被各种前端框架概念所束缚住了。

用框架写代码,的确带来便利性,但同时也带来一些局限性,DOM 数量是有上限的。我敢说,以同屏千个组件完全不卡著称的 figma,如果没有 wasm,绝对不会有今天设计老大哥的地位。

是 wasm 把这个可能变成了现实。没有 DOM = 无限 DOM,可能你不能理解吧。
@3dwelcome 写 Svelte 的大佬,在前端会议上出过一段视频,叫 Rethinking Reactivity 。

里面详细测评了 DOM 多了后,JS 的虚拟 DOM DIFF 算法有多慢! ( https://svelte.dev/blog/virtual-dom-is-pure-overhead)

包括 React 和 VUE 都慢,人家可以有正经数据支撑的。

所以卡这个锅 WASM 不会背的,因为根本就是虚拟 DOM 框架设计上的问题。
@MorningStar0 所谓主流“大型前端项目",大多都是基于自己的 DIFF DOM TREE 框架的。正常来说任何程序,不管是不是 WEB,算法才是最核心,最耗时间的部分。

就算你 UI 刷新率是 30fps,把 VUE 框架代码换成 wasm 来写,就会拖慢系统运行速度?我觉得不会吧。

你老是说有胶水层很慢,但又没拿出合理的数据来支撑这个说法,很难让人信服。
第一,我贴的代码并不是 Emscripten 的,所以这段 mozilla 引用没太大价值。(虽然 Emscripten 也有提供类似 DOM 胶水库)

第二,WASM 传值都是浏览器兼容的 Raw 指针,一大堆状态可以批量传递,对运行速度不会有太大损失。举个例子,C++ COM 的每一次调用,都是通过 vtable 中转的,也没人说慢。那么 WASM 操作 DOM 中转一次也是很正常的。设计成 DLL/SO 一样,用之前导入 /导出函数,都和主程序进行动态地址绑定,这才是最合理的模块分离技术。

如果有人觉得 WASM 运行太慢,那只能说代码接口设计有问题。
@MorningStar0 我总觉得你对 wasm 有误解,wasm 又不是为了浏览器而生,而是为了让浏览器成为它众多运行平台之一。

本质上目标是用 IR,把所有语言通过堆栈虚拟机的方式,彻底打通,能相互调用。

你说 wasm 不能操作 DOM, 我贴一段 wasm 编译器的 example 代码,你如果觉得这都不算是操作 DOM,那我也无话可说。

https://i.imgur.com/ebhIiLG.jpg
@baojie223 有啊,当成 side 库,可以用为啥不用。

别的语言有不少代码积累,转译一下就可以了,特别适合零依赖少的小型算法。

现在的浏览器,包括 webview 都支持 WASM 的。小程序不支持,可以把 WASM 退化为 asm.js ,那样也支持了。
人才中心门口一大堆代缴社保小店,其中一大业务,就是给人代缴社保,获取购房资格。
2021-07-20 16:38:27 +08:00
回复了 yancy0l 创建的主题 职场话题 不想做开发了,理性交流
@kop1989 等想明白就老了,很多人写代码就是为了钱。

楼主又没特别缺钱,不为了钱的话,干点别的什么不好。
2021-07-20 16:36:13 +08:00
回复了 yancy0l 创建的主题 职场话题 不想做开发了,理性交流
B 站有个从前端转换连锁便利店经营的,最后发现兴趣收入支撑不了房贷,又灰溜溜回北京找前端工作了。

20K 不算很高,但是没这点钱,很多人还是没办法接受的,特别是已婚人士。

楼主一人吃饱,全家不饿,可以试着转一下。(虽然大概率还是会回来的)
1 ... 57  58  59  60  61  62  63  64  65  66 ... 155  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2768 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 45ms · UTC 15:38 · PVG 23:38 · LAX 07:38 · JFK 10:38
Developed with CodeLauncher
♥ Do have faith in what you're doing.