V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  Guaidaodl  ›  全部回复第 1 页 / 共 6 页
回复总数  109
1  2  3  4  5  6  
话说回来, 这种开发模式很考验开发人员素质. 建议考虑切换到 Git Flow 的工作流.
你们这个接近主干开发的流程, 就是所有的开发都是在一个分支上开发.

在这种开发模式下, 开发在 push 之前要先把自己的提交 rebase 到最新的代码上. 具体的命令就是你运行 pull 的时候加上 --rebase 参数
134 天前
回复了 shuiguomayi 创建的主题 Vim 用 vim/nvim 写 Python 用什么插件?
@vituralfuture CodeRunner 的替代可以考虑 asynctask
191 天前
回复了 nunterr 创建的主题 程序员 看了国外好多有名的大佬的人生经历
@zhenghuiy 我也想到了纯银
311 天前
回复了 sbldehanhan 创建的主题 C socket 可以传输结构体吗?
至于如何把结构体转化成二进制数据, 这个方法就实在太多了. 比如直接平铺数据, 或者用 ProtoBuf 协议. 甚至可以将结构体转换成 JSON 字符串再转成 utf-8 的流
311 天前
回复了 sbldehanhan 创建的主题 C socket 可以传输结构体吗?
socket 就是传二进制数据. 结构体是更上层的抽象啊.

你要先把结构体转化成二进制数据. 然后再解析出来. 也就是楼上说的序列化和反序列化的概念.
带一个九人的小团队..基本上就很难有大块的时间写代码. 除非全员投入一个项目.
317 天前
回复了 AllNewDesign 创建的主题 程序员 WWDC 苹果完美的抄袭了我的软件
宣传自己的的手段? 先不说楼主的 API 和界面和 Android 一模一样.

苹果的列表分列逻辑跟你完全不一样. 楼主是一种语言占一列. Xcode 15 的截图中, 一个表里只有一个语言, 不同的语言需要通过边栏来切换.

除了都是列表外, 有什么一样的地方吗?
还看公司风格....国内互联网大厂, 使用自己的的笔记本电脑的程序员比比皆是.
2023-01-16 14:29:48 +08:00
回复了 tmtstudio 创建的主题 程序员 你们十二月居家养病期间,工资照常发了吗
阳性以后自动居家办公七天. 七天之后还没有阳可以继续申请居家办公, 工资照发.

有一天太难受, 我还请了一个月只有一天的全薪病假.
2023-01-10 15:25:03 +08:00
回复了 zhang3x7 创建的主题 程序员 面临 35 岁危机的各位为什么不考虑润美
对中国人来说, 润美不如润去新加坡. 当然新家坡也是比较卷的, 不过就互联网来说没有国内这么卷.
2023-01-04 12:21:08 +08:00
回复了 caobug 创建的主题 Android 请教 Android Activity 重建
如果想要防止 SplashActivity 重建导致初始化流程多次调用, 应该把 shouldBuild 变成 AtomicBoolean, 然后一开始就 compareSet(true, false).

不应该是初始化才设置成 false. 不然你如果初始化还没有完成(如果你的初始化流程有线程切换)就又触发了 onCreate 就会运行两次.
2023-01-04 12:17:46 +08:00
回复了 caobug 创建的主题 Android 请教 Android Activity 重建
听起来是多线程问题啊. 读写 shouldBuild 都在同一个线程吗?
2022-09-10 17:48:02 +08:00
回复了 KunMinX 创建的主题 Android 简单分享下我对 MVI 的理解
@KunMinX
通常实现是反过来吧。用户定义一个不可变 State ,Reducer 中操作的自动生成的可变对象。
2022-09-10 02:00:51 +08:00
回复了 KunMinX 创建的主题 Android 简单分享下我对 MVI 的理解
@reactna1ve

3. 就你的描述来看,我觉得你的分层做得不够好。MVVM 分层的其中一个目标就是让逻辑更内聚。View 层不保存状态,只响应变化 ViewModel 的变化,你需要状态应该都在 VM 中。
一个比较难处理一点的就是有些操作中间可能需要在用户响应,比如弹窗需要用户点击确认或取消。但是其实这种有了协程后也比较容易处理了,调用一个 suspend 方法去等待,直到用户响应就行。

5 其实 RxJava 和 Flow 都出有区分状态和事件的啊。比如 RxJava 状态是 BehaviorSubject ,事件是 PublishSubject 。只有 LiveData 是单纯的状态,需要事件的时候我们会使用自定义的 PublishData ,不使用 LiveData
2022-09-10 01:39:19 +08:00
回复了 KunMinX 创建的主题 Android 简单分享下我对 MVI 的理解
MVI 看起来就是模仿 React + Redux 吧。但是这种模式的一个基础就是 React 是有 VDOM 层,Android 原来可没有。到了 Compose 出来之后,用这种类似 Redux 的方案倒是比较合理了。毕竟 Compose 的 API 基本就是全盘抄 React 的(实现很不一样)。

Redux 这种模式之前也曾经模仿过,不过实际用下来发现几个不太方便的地方。

1. 定义很多 action(intent). 其实面向对象中,调用方法就是发消息。真的用 action ,实践中其实通常也是直接分发给 reducer 的不同的方法处理的,直接调用方法其实更方便。

2. 改变状态很繁琐,虽然 data class 自动生成 copy 方法,但是依然不太方便。

3. 就是你提到的手动 diff 还挺麻烦的。

其实你如果去看看现在的 Redux 写法,1 和 2 都被改善了。不用再手动定义 Action 的名字,而是自动生成跟 reducer 中方法名一样的 action 。同时再 Reducer 中,你处理也不再是一个不可变的数据,而是可以直接把 State 当前一个可变的对象直接修改。
还有就是 Capslock 跟 Ctrl 肯定是要互换位置
AutoHotkey 直接将 Alt+X/C/V 映射到 Ctrl+X/C/V
2022-06-13 17:00:48 +08:00
回复了 dfgxcvbcv 创建的主题 云计算 有什么 NAS 自建网盘的程序能做到端对端加密?
我看见坚果云是推荐使用 Boxcryptor. 自建的网盘也可以吧
2022-06-08 11:00:11 +08:00
回复了 fhj 创建的主题 Android 求助, android 入门后该怎么学习
Android 这么惨的吗? 现在 Android 可以找到的工作也不算差.

回到吸顶的这个实现. 跟 @sankemao 说的一样, 其实还比较复杂, 不是那么容易实现, 不适合新手. 一定要做建议参考官方的 CoordinatorLayout. 建议楼主看看 Android 开发艺术探索 这本书吧, 里面关于事件传递还是讲得不错的.
1  2  3  4  5  6  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2748 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 29ms · UTC 12:25 · PVG 20:25 · LAX 05:25 · JFK 08:25
Developed with CodeLauncher
♥ Do have faith in what you're doing.