- 博客(973)
- 资源 (1)
- 收藏
- 关注
转载 Android性能优化典范 - 第6季
导语这里是Android性能优化典范第6季的课程学习笔记,从被@知会到有连载更新,这篇学习笔记就一直被惦记着,现在学习记录分享一下,请多多指教包涵!这次一共才6个小段落,涉及的内容主要有:程序启动时间性能优化的三个方面:优化activity的创建过程,优化application对象的启动过程,正确使用启动显屏达到优化程序启动性能的目的。另外还介绍了减少安装包大小的checklist以及如何
2016-12-15 23:19:00
759
1
原创 android开发(性能篇)
今天想说的重点是Android APP性能优化,也就是在开发应用程序时应该注意的点有哪些,如何更好地提高用户体验。一个好的应用,除了要有吸引人的功能和交互之外,在性能上也应该有高的要求,即时应用非常具有特色,在产品前期可能吸引了部分用户,但是用户体验不好的话,也会给产品带来不好的口碑。那么一个好的应用应该如何定义呢?主要有以下三方面: 业务/功能 符合逻辑的交互 优...
2016-09-01 12:58:59
3485
1
原创 项目经理面试题
1.请你谈谈你自己 2.如何安排自己的时间?会不会排斥加班? 3.为什么离开上一个工作? 4.你对未来五年的规划为何? 5.谈谈你过去做过的自认为最成功一个案例。 6.谈谈你过去的工作经验中,最令你挫折的事情。 7.项目的关键时期,进度非常紧张,作为项目经理的您,恨不能一个人当两个人用,偏偏在这个时候,您得知一位重要的项目成员的家人重病,这时,您会如何处理(让他回家探望还是坚守岗位
2016-08-16 19:55:59
17614
1
原创 产品经理面试题
动机说明为什么要做产品经理?你是因为做不了技术才做产品的吗?你的职业规划?为什么想进大公司?你适合大公司的特质?你个人想做什么方向的产品?为什么?你为做产品都做了哪些准备?产品经理所需的素质(能力要求)?作为学XX专业的,不是计算机类似专业,你为什么想去做产品?
2016-08-15 21:50:22
3410
转载 后台开发工程师面试题
1、理论基础知识· JAVA基础· 通用问题· 开放式问题· 设计模式相关问题· 代码设计相关问题· 语言相关问题· Web相关问题· 数据库相关问题· 非关系型数据库相关问题· 代码版本管理相关问题· 并发问题· 分布式系统相关问题· 软件生命周期和团队管理相关问题· 逻辑和算法相关问题· 软件架构相关问题· 面向服务架构(SOA)
2016-08-15 14:29:03
4260
转载 软件测试工程师面试题
1.白箱测试和黑箱测试是什么?什么是回归测试?2.单元测试、集成测试、系统测试的侧重点是什么?3.设计用例的方法、依据有那些?4.一个测试工程师应具备那些素质和技能?5.集成测试通常都有那些策略?6.你用过的测试工具的主要功能、性能及其他?7.一个缺陷测试报告的组成8.基于WEB信息管理系统测试时应考虑的因素有哪些
2016-08-15 09:55:48
3944
转载 软件测试工程师笔试题
软件测试题目 一、 判断题 (每题2分,20) 1、软件测试就是为了验证软件功能实现的是否正确,是否完成既定目标的活动,所以软件测试在软件工程的后期才开始具体的工作。 (初级) ( × ) 2、发现错误多的模块,残留在模块中的错误也多。( √ ) (初级) 3、测试人员在测试过程中发现一处问题,如果问题影响不大,而自己又可以修改,应立即将此问题正确修改,以加快、提高开发的进程。(
2016-08-15 09:50:14
22849
原创 Android面试题【高级工程师版】
Android 高级(★★★)一、 Android 性能优化(11.9 更新)1、 如何对 Android 应用进行性能分析2、 什么情况下会导致内存泄露3、 如何避免 OOM 异常4、 Android 中如何捕获未捕获的异常5、 ANR 是什么?怎样避免和解决 ANR(重要)6、 Android 线程间通信有哪几种方式(重要)7、 Devik 进程,linux 进程,线程的区别8、 描述一下 a...
2016-08-10 13:05:51
34979
1
转载 android笔试题
题号一二三总分合分人得分 注意事项:1. 本试卷共5页,满分100分;2. 请把学院、姓名、班级写到密封线内,考试时间90分钟;3. 请不要把答案写在密封线内 得分阅卷人
2016-08-08 22:40:39
5517
转载 java面试题
Java泛型面试题1. Java中的泛型是什么 ? 使用泛型的好处是什么?这是在各种Java泛型面试中,一开场你就会被问到的问题中的一个,主要集中在初级和中级面试中。那些拥有Java1.4或更早版本的开发背景的人都知道,在集合中存储对象并在使用前进行类型转换是多么的不方便。泛型防止了那种情况的发生。它提供了编译期的类型安全,确保你只能把正确类型的对象放入集合中,避免了在运行时出现C
2016-07-21 13:04:13
1448
转载 Android面试题【初级工程师版】
1:Android中五种数据存储方式分别是什么?他们的特点?(1)SharedPreference,存放较少的五种类型的数据,只能在同一个包内使 用,生成XML的格式存放在设备中(2) SQLite数据库,存放各种数据,是一个轻量级的嵌入式数据库(3) File文件,通过读取写入方式生成文件存放数据(4) ContentProvider,主要用于让
2016-07-21 12:53:35
23409
转载 ios面试题汇总
一个区分度很大的面试题考察一个面试者基础咋样,基本上问一个 @property 就够了: @property 后面可以有哪些修饰符?什么情况使用 weak 关键字,相比 assign 有什么不同?怎么用 copy 关键字?这个写法会出什么问题: @property (copy) NSMutableArray *array;如何让自己的类用 copy 修饰符?如何重写带 copy 关键
2016-06-26 23:16:05
2144
原创 Android 开发资源
Android 已经成为了世界上最受欢迎的操作系统之一。成千上万的智能手机和平板都是运行着Android。Android基于Linux系统架构,由Android公司开发。2005年该公司被 Google收购。Android最棒的是,它是一个允许用户根据需求进行定制的操作系统。如果你是一位Android开发人员,你不必担心Google会因为修改系统对你起诉。那么,你是否已经打算学习一下Android
2016-05-17 19:38:40
1091
原创 iOS逆向工程-工具篇
对于初开始学习iOS逆向工程的人来说,实现一个tweak可以算是入门逆向工程了。当然了,可能你现在还不知道tweak是什么。简单来说,你可以把一个tweak当作某一个app的一个插件(类似于浏览器广告屏蔽插件)。在app运行的时候,tweak会hook住某个函数,然后在hook的函数里面,你可以插入你的代码。比如用户在登陆微信账号的时候,tweak可以hook住登录函数,dump出
2016-05-10 22:24:10
12271
原创 android逆向工具
开始安卓逆向之前 必须安装JAVA JDK下载地址:http://www.oracle.com/technetwor ... nloads-1880260.html逆向必备工具:1.APKIDE(改之理)是一款APK反编译可视化工具 全自动的反编译、编译、签名Apk链接:http://pan.baidu.com/s/1mgwPBL2 密码:ok802.APKTo
2016-05-10 11:04:00
12298
转载 chisel
LLDB 是一个有着 REPL 的特性和 C++ ,Python 插件的开源调试器。LLDB 绑定在 Xcode 内部,存在于主窗口底部的控制台中。调试器允许你在程序运行的特定时暂停它,你可以查看变量的值,执行自定的指令,并且按照你所认为合适的步骤来操作程序的进展。(这里有一个关于调试器如何工作的总体的解释。)相信每个人或多或少都在用LLDB来调试,比如po一个对象。LLDB的是非常强大的
2015-12-21 19:14:50
846
原创 浅谈NVMe的多队列技术和IO调度
NVMe的方案是对于这个发送消息,在当它完成的时候会将完成的结果通过DMA的方式写入到内存中,主机根据每个IO请求及其完成请求中的CommandIdentifier (CID)字段来匹配相应的发送请求和完成请求。同样的,为了确定完成队列里到底有多少是新的完成消息,在每一个完成请求中,有一个标志位PhaseTag,这个标志位每次写入的数值都会发生改变,并据此确定每一个完成请求是否是新的完成请求。NVMe规定的IO队列的关系比较灵活,既可以一个发送队列对应一个完成队列,也可以几个发送队列共同对应一个完成队列。
2026-09-24 19:11:53
140
原创 deepseek-harness 项目深度解读
回顾全文,deepseek-harness 的核心价值可以归纳为四点。第一,它用「一切皆插件」的架构彻底解决了 Agent 框架的可扩展性问题——任何核心行为都可以通过挂载插件来替换或增强,无需 fork。第二,它通过「能力接缝」设计让各项能力独立演进、安全组合,打破了传统框架的能力耦合困境第三,它采用「事件溯源」架构,让会话状态天然可持久化、可恢复、可回放、可分叉,满足生产环境的长任务需求。
2026-09-24 17:20:40
422
原创 CPU-GPU通信方式
CPU/GPU异构计算架构CPU/GPU 异构计算架构的核心逻辑是分工协作—— 利用 CPU 擅长复杂逻辑控制、串行任务调度的优势作为系统总指挥,搭配 GPU 擅长大规模并行计算、数据密集型运算的特性,共同提升整体计算效率。所以GPU的任务指令是由CPU分配的。CPU通过PCIe总线( PCIe 5.0 x16 的单向带宽可达 64GB/s)给GPU发送指令和数据交互。
2026-09-24 17:05:29
127
原创 渲染引擎间的通信全解:原理、方案与实战
作者本人毕业后一直在图形渲染相关研发,遇到过这样的问题:项目里同时用了多个渲染引擎,它们之间却像陌生人一样无法高效对话?在开发跨平台图形应用时,我经常被这种"引擎孤岛"问题困扰。本文将总结并且分享我在实际项目中摸爬滚打总结出来的渲染引擎通信方案,从最简单的共享内存到高性能的共享纹理技术,帮你避开我踩过的那些坑。如果你正在为多引擎协同渲染头疼,希望这篇实战经验能给你带来一些启发。
2026-09-24 16:58:12
224
原创 superpower:我在2025年10月如何使用编码代理
感觉就像几天前我才写过“我在2025年9月如何使用编码代理”。在那篇文章开头,我提到过我的创作过程自那以后有些变化。过去几周我一直在研究一套工具,以更好地提取和系统化我的流程,并更好地引导我的代理伙伴。我本打算这个周末开始记录这个系统,但今天早上,Anthropic推出了一个Claude代码插件系统。如果你想停下来玩我的新玩具,它们足够自动驾驶,你可以。你需要Claude代码2.0.13左右。启动它,然后运行:退出并重启后,你会看到一个新的注入提示:这就是启动的“自助”。它教会了克劳德几件重要的
2026-09-23 14:59:55
116
原创 深入 Superpowers 源码(三):四大核心工作流技能详解
Superpowers 是一套为 Claude Code 设计的技能系统,它让 AI 助手能够遵循严格的工程实践,如 TDD、代码审查、迭代规划等。在前两阶段中,我们理解了它的插件架构、Hook 系统和技能设计模式。本阶段深入核心工作流技能——这是 Superpowers 的"心脏",定义了从需求到代码的完整工程流程。一个阶段不够吗?审查类型关注点发现的问题规格合规是否构建了被要求的东西遗漏需求、多余功能、理解偏差代码质量是否构建得良好代码坏味道、测试不足、性能问题。
2026-09-23 14:35:32
165
原创 claude code编程上下文
它的基础是工具提供的配置功能(例如“规则”、“技能”),然后最细微的是我们如何概念性地使用这些功能(“规格”、各种工作流程)。编码代理中最基础且最强大的上下文接口是文件读取和搜索,用来理解你当前的代码库,所以我特别提到它们。一个运行在您的机器(或服务器上)运行的程序,并通过模型上下文协议(Model Context Protocol)赋予代理访问数据源和其他操作权限的权限。:这些最新进入编码上下文工程的技能是关于额外资源、指令、文档、脚本等的描述,LLM可以在认为与当前任务相关时按需加载这些内容。
2026-09-23 10:25:03
154
原创 大型C++代码库的AI编码助手:哪些有效,哪些会出问题,以及如何分工
在这篇文章的每一次失败中,助理的信心从未动摇,这正是设计要围绕的。所以让解析器对你的代码有信心,让模型对你的代码可能有帮助,别再为那些根本不需要猜的问题付复习税。因为它从不需要构建你的代码,即使代码无法编译,它也会不断解析符号和引用,而大部分时间的代码都是编译。这篇文章讲解了AI助手在大型代码库中表现优异的原因,为什么项目越大它们越差,为什么C++让情况更糟,以及一种简单的工作拆分方法,让你保留好部分而不为坏部分付费。AI读取你的源文本,但编译器会构建重写版本,宏被扩展,拉入了页眉,填充了模板。
2026-09-23 10:23:15
40
原创 SWE-bench 多语言评估对比
SWE-bench多语言是首个评估大模型在9种编程语言(含C/C++、Rust等)上软件工程能力的基准,涵盖42个真实仓库的300个任务。基于SWE-agent框架,Claude3.7Sonnet在该数据集上实现43%分辨率,显著低于SWE-benchVerified的63%,凸显非Python语言仍存巨大挑战。数据集通过严格筛选与人工验证,确保高质量与可复现性,已开源至HuggingFace,支持快速多语言评估。
2026-09-23 09:54:46
190
原创 cursor instant apply思路
我们发现我们最好的模型(llama-3-70b-ft)几乎能与Claude-3-opus-diff匹敌,并且表现优于GPT-4-turbo和GPT-4o。我们构建了一组 ~450 个 400 行以下文件的完整文件编辑的评估集,然后使用 Claude-3 Opus 作为评分工具,测量多个提示模型的性能。我们的快速应用模型超越了GPT-4和GPT-4o的性能,并在准确率/延迟曲线上突破了帕累托的前沿。这是编码代理中常见的弱点。令人惊讶的是,Claude-3-Sonnet的表现优于GPT-4-turbo。
2026-09-22 21:28:29
27
原创 cursor instant apply思路
我们发现我们最好的模型(llama-3-70b-ft)几乎能与Claude-3-opus-diff匹敌,并且表现优于GPT-4-turbo和GPT-4o。我们构建了一组 ~450 个 400 行以下文件的完整文件编辑的评估集,然后使用 Claude-3 Opus 作为评分工具,测量多个提示模型的性能。我们的快速应用模型超越了GPT-4和GPT-4o的性能,并在准确率/延迟曲线上突破了帕累托的前沿。这是编码代理中常见的弱点。令人惊讶的是,Claude-3-Sonnet的表现优于GPT-4-turbo。
2026-09-22 21:15:19
163
原创 引入软件工程师(SWE)验证
我们与 SWE-bench 的作者共同发布了 SWE-bench Verified:这是 SWE-bench 原始测试集的一个子集,包含 500 个样本,经过我们的人工注释者验证为无问题。例如,我们可以看到,GPT-4在SWE-bench Lite上的表现在早期基于RAG的支架下为2.7%,使用CodeR时为28.3%。我们发现,GPT-4o在表现最佳的支架上,在SWE-bench Verified中表现达到33.2%,是原始SWE-bench的16%分数的两倍多。如果 测试通过,说明编辑问题解决了。
2026-09-22 19:46:03
16
原创 IOT音视频方案设计
目录目录1主要术语2系统逻辑框架3系统主要流程3.1地址注册流程3.2局网内呼叫流程3.3中转模式呼叫流程3.4多点会议呼叫流程3.5局网探测流程3.6ID管理3.7鉴权管理4音视频SDK模块设计4.1模块逻辑框架4.2模块主要流程创建会话流程探测处理流程获取本地SDP流程获取本地SDP流程2启动媒体流程IP地址变化流程4.3模块主要类图4.4关键技术设计通道切换管理探测协议...
2026-09-22 19:43:41
170
原创 cursor的自动代码建议原理
痛苦你安装了cursor, 你输入函数签名。在你完成参数列表之前,整个函数主体会以灰色文字显示。你按Tab键,结果是正确的。不是自动更正。编辑——正确。你在第12行重命名变量,建议会更新第18、24和31行的变量。感觉就像魔法一样。:模型必须在你下一次按键前做出反应,使建议变得陈旧。:它需要理解你的代码库,而不仅仅是你所在的文件。:展示错误的建议比什么都不展示更糟糕。每个AI编程工具都面临这三个问题。光标对每个问题的回答比产品本身更有趣。答案不是“他们把GPT-4接进了VS Code”。
2026-09-22 11:06:58
265
原创 cursor 3大技术
摘要部分链接#cursor不是“插入VS Code的GPT-4”。它是一个垂直集成的推理栈,看起来像代码编辑器。该架构——使用你自己的代码作为草稿标记的推测版本、基于优先级的提示编译器、基于向量搜索和重新排序的上下文引擎、一个每天多次从生产数据自我约束的强化学习循环——代表了任何消费产品中最复杂的应用人工智能工程之一。
2026-09-22 10:56:46
159
原创 cursor深入研究
但在简洁的界面之下,隐藏着一个出人意料的复杂系统,它紧密地将定制的VS Code分支、大型语言模型、矢量数据库和语言服务器紧密融合成一个无缝的工作流程。相反,Cursor 作为一个编排层,结合了预索引的代码上下文、语义检索、语言服务器反馈、工具执行和模型专用,在请求到达 LLM 之前。模型只是更大流水线中的一个组成部分,而流水线从根本上改变了延迟、准确性和上下文的处理方式。它结合了你的提示词、光标位置、当前文件、从矢量数据库检索的相关代码、语言服务器信号(类型、导入、诊断)以及最近的对话历史。
2026-09-22 10:32:52
267
原创 Cursor核心技术栈解析:从TypeScript到Rust的架构设计
Rust没有垃圾回收,能直接精细控制内存,写出来的程序运行速度可以媲美C/C++,而且其严格的所有权和生命周期检查,从编译器层面就杜绝了一大类内存错误,保证了底层服务的绝对稳定。这背后,Cursor做了一个非常大胆的技术选择:它不是一个纯粹的TypeScript应用,也不是一个纯粹的Rust应用,而是把两者“焊”在了一起。尤其是在团队协作中,早上拉取了一大堆同事的新提交,Cursor也能快速找出所有变更的文件进行增量更新,而不是傻傻地从头开始索引整个仓库,用户体验的流畅度因此得到了巨大保障。
2026-09-16 14:33:15
167
原创 实际上是如何索引你的代码库的
然而,在使用代码库时,许多这些工作是可以避免的。本文中,我们超越了大型语言模型生成,探讨了像Cursor这样的工具背后的流水线,这些工具通过RAG构建了合适的上下文。为了加快重新索引,嵌入也会在AWS中缓存,并根据每个块的哈希值进行键化,允许未更改的代码在后续索引执行中重复使用。与Cursor不同,它直接在代码库上工作,采用文本搜索、文件匹配和基于LSP的导航,而非基于嵌入的语义搜索。这些嵌入捕捉了代码的语义含义,使得检索用户查询和生成提示能够与语义相关的代码匹配,即使关键词不完全重叠。
2026-09-16 14:28:45
35
原创 Cursor 深度解析:从 AI 代码编辑器到自驱动代码库的进化之路
Cursor 代表的不仅仅是一个更好的代码编辑器——它代表的是软件开发范式的根本性转变。从手工编写每一行代码,到描述意图让 AI 生成,再到设计架构让 Agent 自主执行——这三个阶段的跨越正在几年内完成。但工具终究是工具。真正的竞争力不在于你用的是 Cursor 还是 Copilot,而在于你能否适应"AI-native"的开发方式——把精力从"怎么写代码"转移到"写什么代码"和"为什么写这些代码"上。Cursor 恰好提供了一个极好的载体来实践这种转变。
2026-09-14 19:11:35
154
原创 构建你自己的 AI 辅助编码助手:从 IDE 插件、代码数据生成和模型微调(万字长文)
结合 JetBrains 2023《开发者生态系统》报告的人工智能部分 ,我们可以总结出一些通用的场景,这些场景反映了在开发过程中生成式 AI 可以发挥作用的领域。代码自动补全:在日常编码中,生成式 AI 可以通过分析上下文和学习代码模式,提供智能的代码自动补全建议,从而提高开发效率。解释代码:生成式 AI 能够解释代码,帮助开发者理解特定代码片段的功能和实现方式,提供更深层次的代码理解支持。
2026-09-14 17:15:48
105
原创 代码 RAG 的切片之痛:从 token 切片到 Wiki 化预处理
一段 300 行的 Android Activity,按 512 token 一刀切下去,lifecycle callback 被拦腰截断,`onCreate` 的前半段和 `onResume` 的后半段缝在同一个 chunk 里,向量模型拿着这坨"语义碎片"去做 embedding,能算出什么有意义的语义?检索"退款流程"时,不只召回 `handleRefund`,还能通过 call graph 拉出它依赖的 `RefundValidator`、`TransactionRepository` 等。
2026-09-14 16:44:17
183
原创 深度解析 Cursor(逐行解析系统提示词、分享高效制定 Cursor Rules 的技巧...)
作为一名长期深耕大语言模型领域的开发者,我必须表达对 Cursor "提示词工程师(prompt engineers)"的高度敬意 ------ 相比其他 AI 编程工具的提示词设计,他们的专业水准令人赞叹(个人观点)。一个基于近乎开源的智能体提示词和公开模型 API 构建的 VSCode 分支,其估值竟能接近 100 亿美元 ------ 带着 68 倍的"wrapper multiple"8 ------ 这着实令人惊叹。我们简化了主智能体的工具集,将"认知负担"转移到其他大语言模型上。
2026-09-09 15:34:01
145
原创 深度|跨平台Web Canvas渲染引擎架构的设计与思考
这篇文章主要从技术视角介绍下跨平台WebCanvas的架构设计以及一些关键模块的实现方案(以Android为主),限于作者水平,有不准确的地方欢迎指正或者讨论。一 设计目标标准化:Web Canvas标准主要指的是W3C的Canvas2D[1]和WebGL[2]。标准化的好处一方面是学习成本低,另一方面上层的游戏引擎也可以以很低的适配成本得到复用;跨平台:跨平台主要目的是为了扩宽使用场景、提升研发效率、降低维护成本;跨容器:由于业务形态的不同,Canvas需要能够跑在多种异构容器上,如小程序、小游戏、小部件
2026-08-17 07:28:40
235
原创 读《webkit技术内幕》了解浏览器内核六——硬件加速机制
webkit中2D图形上下文对应Chromium的Skia画布(canvas),具体调用栈可以看图了解下即可。对于使用多进程模型的Blink内核的浏览器来说,不是的,GPU硬件加速渲染的操作会交由GPU进程负责。DOM树中的html元素所在的层可能会比较大,因为网页高度很大,如果只是使用一个后端存储的话,那么需要一个很大的对象,但是实际的GPU硬件可能只支持非常有限的纹理大小。
2026-08-17 07:14:30
188
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅