阿里开源270亿参数原生多模态模型,家用显卡可跑,编程与办公表现超越Qwen3.7-Plus。 [..]
Read More接手一个按功能切得过细的 Android 项目:17 个模块、好多模块只有两三个类,应用本身最多五个模块就够。模块边界模糊,类职责不清,找 Activity 经常只能翻 Manifest。代码又乱又臭,改一个 bug 冒出另一个,没法做新功能,更满足不了多客户定制。于是重构:搭一个易维护、易扩展、可…
标签:架构2016 年 2 月 18 日凌晨 5 点,Apple Pay 在国内上线。选移动支付时,支付宝、微信支付之外又多了一个选项。它的本质就是刷卡:用手机代替实体卡,用 Touch ID 代替签名。 手机内集成 NFC 天线和安全芯片,空中发卡把银行动态加密信息放进安全芯片,再经 NFC 完成支付。相当…
标签:程序员成长这篇文章以例子为主,覆盖 Java IO 的绝大部分内容(不含 NIO):从 File、字节流、字符流讲到管道流、压缩和对象序列化。 代码是写出来的,不是看出来的;每个案例都配有源码和运行结果,方便对照着敲一遍。 (更多…)
标签:IO广告栏轮子很好找,但完全合用的并不多:有的绑死 Picasso 吃内存,有的少于三页就抛异常。本篇从 ViewPager 起步,一步步补上无限轮播、切换速度、自动播放、指示器和点击回调,造一个够用的 Banner。 (更多…)
标签:ActivityLocalBroadcastManager 只能做应用内通信,比系统 BroadcastReceiver 更安全、效率更高,也是官方推荐的应用内广播。系统广播走 Binder;名字里的 Local 容易让人以为它底层也是 Binder。点进源码会发现:更安全高效的实现其实很眼熟——Handler。 …
标签:BroadcastReceiver反思技术圈的造神现象,作者写下对程序员这个职业的理解:程序员首先是雇员、然后是工程师;比起创造力,工程能力对这个职位更为重要。本文经授权转载自新浪微博 @Easy,作者 Easy,职鹿 JobDeer.com 创始人。 今天看到鸟哥的微博,说了些一直想说的话。正好猴年来了,就展开聊聊所理解的程序猿这…
标签:程序员成长Android 控件大致分两类:ViewGroup 当容器管 View,View 自己负责绘制。整棵界面像 DOM 树:父视图负责测量、定位、绘制。findViewById 之所以贵,是因为它从上到下遍历整棵控件树找实例,重复操作里尽量少用。 (更多…)
标签:Activity加载世界地图、清明上河图这类不允许压缩的巨图时,整图解码很容易 OOM。本篇用 BitmapRegionDecoder 按矩形窗口做局部解码,再自定义可拖动的 View,把高清原图一块块画到屏幕上。 (更多…)
标签:图片加载