一夜之间,微信小程序刷爆了行业网站和朋友圈,小程序真的能如张小龙所说让用户“即用即走”吗?
其功能能和动辄几十兆安装文件的APP相比吗?
开发小程序,是不是意味着移动应用开发的一次推倒重来,企业的运营成本会不会因此增加?
近日,笔者参加了一次腾讯自选股介绍小程序开发过程的内部沙龙,自选股小程序产品经理Poppy和首席开发工程师小K的一番海聊,从开发技术和行业走势两个方面为我们揭开了小程序的秘密。
今年7月,腾讯自选股团队接到微信的邀请,做一个Web+的应用测试。当时他们还不知道,这就是微信小程序的首批开发内测。而当时,其实连“小程序”这个名字也还没有确定。
三个月后,“腾讯自选股”成为第一个开发成功的微信小程序。相比于原来身量庞大的APP,它无需用户下载、安装,即可在微信内一键即达,并可实现盯盘、看盘、在线交易等APP的核心功能。自选股的用户无需离开微信,就可以边聊天边看盘乃至进行股票交易,与身处大户室的感受几乎无异。
这三个月,是小程序拨云见日、从无到有的三个月,自选股团队为探索开发一款完美的小程序奏响了先声。
揭秘一:在内容上有所取舍,更符合小程序所适配的场景
小程序的特点在于“轻”。自选股小程序的安装包只有900K,轻装的实现,首先来自于取舍的理念。
“小程序不是对APP的原样照搬。”Poppy介绍说,自选股小程序对APP中深度、专业的资讯服务做了取舍,只收录了支持个股的部分资讯。因为在微信里,用户可以通过订阅号、服务号等多种渠道收看资讯,小程序不必再做重复建设,而是主要适配交易与交流同步的应用场景。
小程序开发团队对自选股做了重新设计。围绕用户的核心需求,在自选股小程序的页面上,最终只保留了自选、行情和设置三个页卡,轻巧而清晰。
揭秘二:采用WebSocket协议实现数据实时性
显示实时行情是股票应用核心功能之一,但实时数据传输最为占用网络资源,也影响到小程序应用的流畅性和用户体验。
自选股小程序采用WebSocket完美解决了这个问题。小K说,以往数据更新多采用轮询机制,即客户端按照一定的周期频率发起数据请求,对网络资源的占用较大。自选股小程序的解决方案是采用WebSocket,当服务器有数据更新时主动PUSH,从而降低了无效的网络传输,使数据的实时性更强。
揭秘三:数据缓存加速数据呈现
自选股小程序通过数据缓存,加速页面的数据呈现。本地缓存文件最大可以达到10M。
10M缓存量是根据自选股用户的偏好来设置的。数据显示,80%用户的自选股不超过20支,一只股票的缓存数据大约300K,10M的缓存空间足够缓存30支以上的股票。这对于绝大多数用户来说已经足够了,而且实现了用少量数据支持页面的流畅呈现。
揭秘四:响应式绘图完美适配不同机型
Canvas在使用前需要设置大小以便占位。而在小程序里面,目前Canvas不支持RPX的方式,Canvas需要动态添加图形的宽高数据。
为了更快渲染Canvas,且不出现闪屏效果,自选股小程序在启动程序时即在后台记录用户所用设备的屏幕尺寸。进入Canvas绘制页时在OnLoad方法中计算Canvas大小并设置画布。这完美地解决了在小程序中实现响应式绘图的问题。
揭秘五:简洁的UI平衡美观与实用
自选股小程序的UI十分简洁。与iOS开发完全不同,从UI到整体前端处理大部分都采用CSS做渲染。对个别需要用到PNG的设计元素,对PNG做无损压缩。这让小程序在页面的美观与程序的轻灵之间找到了平衡。
揭秘六:人性化优化很重要
对于股票应用来说,任何一支股票的异动都需要马上看到变化,否则对于用户来说是致命的缺陷。开发团队认识到,小程序之轻绝不能以牺牲核心功能和用户体验为代价。因此,在自选股团队的建议下,微信团队专门开发了小程序动画支持功能。现在,自选股小程序中,股票一旦发生价格变化会自动闪烁,提醒用户重点关注,让小程序的功能完全不输APP。
揭秘七:人人可做小程序
“自选股小程序代表了目前微信小程序开发的标杆和极限。”Poppy对此十分自信。股票类应用本身是比较复杂的移动应用。自选股小程序开发成功,相当于厘定了小程序开发的边界。只要你的应用不比自选股更复杂,就一定能实现小程序应用。
微信小程序作为一个轻应用,它的优势之一在于使开发变得相对容易。自选股小程序的研发之所以走过了三个月时间,是因为他们作为微信小程序应用开发的拓荒者,和微信小程序研发团队共同经历了开发、完善底层技术的全过程,甚至客观上成为小程序开发标准的参照。
小程序到底该有多大才算“轻”,在小程序开发之初,微信团队对此也没有概念。当得知自选股小程序最终完成的安装包只有900 K后,他们将小程序安装包体量的上限定在了1024K。
揭秘八:对流量入口的争夺将再次开启
小程序规避了过去加载应用必需的扫码、下载、安装等繁复过程,更容易触发用户应用,更方便商家留存用户信息。月活量已经超过八亿用户的微信已经成为了一种实实在在的生活方式,其中集合了丰富的生活场景入口。微信小程序的出现,可以帮助O2O行业获取更多用户,是个绝对的利好。Poppy认为:“基本上,服务类的商家都适合做小程序。”
小K认为,相对APP,小程序的开发更为容易,只需一套代码就适配所有机型,视应用复杂程度,最多五六个人一个月就可以搭建出来,成本优势十分明显。
有人说,互联网APP创业的风口正在关闭。但小程序所倡导的基于微信环境的轻型应用的理念,为已陷入增速减缓的互联网移动应用带来一股清流,为服务类APP的转型发展带来了启发。
引用
本文来之「H5程序俱乐部」公众号
「H5程序俱乐部」是一个专注微信小程序学习交流,相关外包/招聘需求信息发布的微信公众号

- 大小: 39.6 KB

- 大小: 24.8 KB
分享到:
相关推荐
matlab
2023年新版中国医科大学考试计算机基础与应用在线作业.doc
2023年四川省计算机一级计算机基础知识题库.docx
matlab
移动开发是指为移动设备(如智能手机、平板电脑)开发应用程序的过程。常见的移动开发平台包括 Android 和 iOS,开发语言可以是 Java、Kotlin(Android)、Swift 或 Objective-C(iOS)。以下是一个基于 **Android** 的简单例子,展示如何创建一个带有按钮和文本的交互式应用。 --- ### **示例:点击按钮显示消息** #### **功能描述** - 应用包含一个按钮和一个文本框。 - 点击按钮时,文本框显示一条消息(例如 "Hello, World!")。 --- ### **开发环境** - **工具**:Android Studio - **语言**:Java 或 Kotlin - **框架**:Android SDK --- ### **代码实现(使用 Kotlin)** 1. **项目结构** - 创建一个新的 Android 项目,选择 Empty Activity 模板。 - 项目文件结构如下: ``` app/ src/ main/ java/com/example/myapp/MainActivity.kt res/layout/activity_main.xml ``` 2. **布局文件 (`activity_main.xml`)** 在 `res/layout/activity_main.xml` 中定义界面布局: ```xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
内容概要:本文详细介绍了在MATLAB环境中实现GA_PSO混合算法的方法及其应用场景。该算法将遗传算法(GA)和粒子群优化算法(PSO)相结合,用于解决复杂的多峰优化问题。文中首先定义了适应度函数Rastringin函数,并展示了如何通过MATLAB代码实现混合算法的关键步骤,包括粒子群初始化、速度和位置更新、遗传操作(交叉和变异)、以及参数设置。此外,文章还讨论了如何处理约束条件,并提供了动态可视化的实现方法,以便更好地理解和展示算法的运行过程。 适用人群:适用于具有一定MATLAB编程基础和技术背景的研究人员、工程师以及学生,特别是那些对优化算法感兴趣的人。 使用场景及目标:该混合算法主要用于解决具有多个局部极值点的复杂优化问题,特别是在高维空间中寻找全局最优解。通过结合GA的全局搜索能力和PSO的局部搜索效率,能够有效地避免陷入局部最优解,提高求解精度和稳定性。 其他说明:建议读者根据具体问题调整相关参数,如交叉概率、变异率、惯性权重等,以获得最佳性能。同时,可以通过修改目标函数来测试算法在不同类型问题上的表现。
2023年西工大秋计算机辅助设计在线作业.doc
2023年spss软件分析异常值检验实验报告.doc
内容概要:本文详细介绍了如何使用MATLAB/Simulink R2015b搭建Buck-Boost变换器的开环和闭环控制仿真模型。首先,作者解释了Buck-Boost变换器的基本构成及其在电源设计中的重要性。接着,逐步指导读者构建开环模型,包括设置关键参数如PWM频率、占空比、输入电压等,并展示了开环控制下的输出特性。随后,引入了PID控制器进行闭环控制,强调了PID参数的选择与调整方法,以及如何通过增加电压采样和误差比较来提高系统的稳定性。此外,还分享了一些常见的仿真错误及解决方案,如电感值选取不当、二极管模型过于理想等问题。最后,提供了几个有趣的实验案例,如动态改变占空比、突变负载等,以展示闭环控制的优势。 适合人群:具有一定电力电子和MATLAB/Simulink基础的技术人员或学生。 使用场景及目标:适用于希望深入理解Buck-Boost变换器工作原理及其控制策略的研究者和技术爱好者。通过动手实践,掌握开环与闭环控制的区别,学会优化PID参数,提升电源设计能力。 其他说明:文中附有多处代码片段和实用技巧,有助于读者更好地理解和应用所学知识。同时提醒读者注意不同MATLAB版本间的兼容性问题。
matlab
2023年软件测试工程师考核标准.docx
chromedriver-win64-137.0.7117.2.zip
内容概要:本文详细介绍了基于C#的工业自动化通信开发库,涵盖了多种常见的通信协议和技术。首先讨论了串口通信的基础操作及其注意事项,如波特率设置和事件处理。接着深入探讨了TCP通信,特别是针对高并发场景下的粘包处理和性能优化。文中还详细讲解了Modbus协议的应用,包括RTU和TCP两种模式的具体实现和常见问题解决方法。此外,文章涉及了数据库操作的最佳实践,尤其是EF6与MySQL的配合使用,以及数据转换技巧,如字节序处理和布尔值提取。最后,简述了消息队列(如RabbitMQ)和CAN总线的使用场景和配置要点。每个部分都配有实际代码示例,帮助开发者更好地理解和应用这些技术。 适合人群:从事工业自动化领域的软件开发工程师,尤其是那些需要频繁处理通信协议和数据交互的技术人员。 使用场景及目标:适用于需要进行PLC通信、数据采集、监控系统集成等项目的开发人员。主要目标是提高开发效率,减少因协议复杂性和数据格式差异带来的困扰,确保系统的稳定性和可靠性。 其他说明:文章不仅提供了理论指导,还分享了许多实际项目中的经验和教训,强调了在真实环境中可能会遇到的问题及解决方案。对于初学者而言,可以作为入门指南;对于有一定经验的开发者,则可以作为参考手册,帮助他们优化现有系统并避免常见错误。
内容概要:本文档详细介绍了基于灰狼优化算法(GWO)优化逐次变分模态分解(SVMD)的MATLAB项目实例。项目旨在通过GWO优化SVMD中的关键参数(如模态数、惩罚因子等),提高信号分解的精度和效率,解决传统SVMD方法面临的参数选择和优化挑战。GWO算法通过模拟灰狼捕猎行为,实现全局搜索和局部搜索的平衡,增强了SVMD在处理非线性、非平稳和含噪信号时的能力。文档涵盖了项目背景、目标与意义、挑战及解决方案、特点与创新、应用领域、效果预测图程序设计及代码示例、模型架构、算法流程、目录结构设计、注意事项、扩展方向、部署与应用、未来改进方向、总结与结论以及详细的程序设计思路和具体代码实现。 适合人群:具备一定编程基础,特别是熟悉MATLAB和信号处理技术的研发人员,以及从事机械故障诊断、生物医学信号分析、地震信号处理、无线通信和金融市场分析等领域工作的工程师和研究人员。 使用场景及目标:①优化SVMD中的参数设置,提高信号分解的精度和效率;②处理非线性、非平稳和含噪信号,提取有用的特征;③应用于机械故障诊断、生物医学信号分析、地震信号处理、无线通信和金融市场分析等领域;④提供信号噪声抑制功能,减少噪声干扰,确保信号中的有用信息被充分提取;⑤拓宽算法的应用范围,为相关领域的信号处理提供高效、精确的工具。 其他说明:本项目不仅提供了详细的理论背景和技术实现,还附带了完整的代码示例和GUI设计,便于用户实践和调试。项目强调了数据质量和参数调整的重要性,同时对未来改进方向进行了展望,如引入深度学习技术、多模态信号融合、实时故障诊断功能、端到端加速、数据隐私保护与合规性、扩展到边缘计算平台、自动化模型训练与优化、系统的自我修复能力等。通过本项目的成功实现,可以为信号处理领域提供一种更加高效、精确、可靠的解决方案。
资源内项目源码是来自个人的毕业设计,代码都测试ok,包含源码、数据集、可视化页面和部署说明,可产生核心指标曲线图、混淆矩阵、F1分数曲线、精确率-召回率曲线、验证集预测结果、标签分布图。都是运行成功后才上传资源,毕设答辩评审绝对信服的保底85分以上,放心下载使用,拿来就能用。包含源码、数据集、可视化页面和部署说明一站式服务,拿来就能用的绝对好资源!!! 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、大作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.txt文件,仅供学习参考, 切勿用于商业用途。
2023年操作系统题库.docx
内容概要:本文档介绍了基于MATLAB实现的建设工程风险决策多目标优化项目,该研究结合云模型和遗传算法,旨在优化建筑工程中的风险管理决策。项目首先阐述了背景与目标,强调了优化建筑工程风险管理、提高成本效益、增强风险预测能力的重要性。接着,文档详细描述了项目挑战及解决方案,包括模型准确性、计算效率、不确定性处理等方面。项目特点与创新在于综合运用云模型和遗传算法,引入自适应优化算法,并基于大数据进行风险预测。应用领域涵盖建筑工程管理、制造业风险决策、能源与环境管理、交通运输行业和金融风险管理。文档还展示了项目的效果预测图、程序设计及代码示例,涵盖了数据预处理、云模型风险评估、遗传算法优化、多目标优化决策和结果可视化等模块。最后,文档讨论了项目的未来改进方向,如模型多样化、云平台优化、增强智能决策支持等。 适合人群:具备一定编程基础,尤其是熟悉MATLAB的工程师和研究人员,以及从事建筑工程管理、风险管理和多目标优化领域的专业人士。 使用场景及目标:①理解云模型和遗传算法在建筑工程风险管理中的应用;②掌握多目标优化的具体实现方法和技术细节;③学习如何构建和优化基于云模型和遗传算法的风险决策系统;④应用于实际建筑工程管理和其他相关领域的风险管理决策。 其他说明:此项目不仅为建筑工程的风险管理提供了科学依据,还为其他行业的多目标决策优化提供了技术参考。项目代码详尽,从环境准备、数据处理到模型训练和评估均有详细示例,便于学习和实践。同时,项目强调了数据质量和模型参数选择的重要性,为后续研究和应用提供了宝贵的经验和指导。
matlab
基于stm32的控制底层