热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

小程序多个echars_逐渐抹平小程序与web开发体验

这是「优码」第3期,分享我一周新的认知过去一周对我影响最深刻的是一套代码开发多个平台的小程序。目前大厂基本都有自己的小程序「宿主环境」,其中以微信为首。

这是「优码」第 3 期,分享我一周新的认知

过去一周对我影响最深刻的是一套代码开发多个平台的小程序。

目前大厂基本都有自己的小程序「宿主环境」,其中以微信为首。随后,阿里、百度、头条都纷纷推出了他们自己的小程序。

这就引发了一个问题,这么多小程序平台,难道开发者要开发多套代码吗?

答案肯定不是!

小程序终究属于前端范畴,毕竟它的技术栈与前端技术栈大同小异。前端发展这么多年,Vue、React 框架被应用到无数网站,这已经不是 jQuery 的时代了。受这些框架的影响,小程序的开发体验也被提上了日程。

小程序框架出现了。

小程序框架的出现使得开发者通过一套代码可以开发多个平台的小程序,同时把前端高效的开发体验也加进来了,比如支持 CSS 预处理器、状态管理、Typescript 语言。框架对外宣称提供类 Vue 的开发体验。那这些框架的原理是什么?

小程序虽然没有一个统一的标准,但是各个小程序平台默认都以「微信小程序为标准」,谁不以微信小程序为标准,谁或许将成为开发者眼中的“IE浏览器”。所以各个小程序平台给开发者提供的 API 基本都是“抄”自微信小程序,但是各家小程序都有自己的独特符号,比如百度智能小程序是 swan、微信小程序是 wx、支付宝小程序是 ant、头条小程序是 tt。

在小程序的「宿主环境」中只能识别自己的规范,开发者必须遵循。小程序框架能做的就是通过某种技术对代码进行转换,使得其能符合不同「宿主环境」。一图胜千言:

d4fea8db1239884a8fb1f6bfebe45c8f.png

说白了,小程序框架做的事情就是让开发者通过一种新的规范来开发小程序,小程序通过编译,最终转换成不同平台的代码。

这周我接触到的是百度的小程序框架 OKAM,一套代码可以同时支持多种小程序,同时也支持快应用。功能特性(来做OKAM官方描述):

1、开发模式
支持单文件组件化开发方式,目录结构更加清晰简洁;
支持 NPM 包的依赖管理和引用;
提供渐进增强可配置方式,包括可配置的构建流程,来提升开发框架能力;2、开发语法
模板:支持类 Vue 模板语法、Pug 模板语法;
样式:支持 CSS 预处理器和后处理器, Stylus、Less、Sass、Postcss;
脚本:支持 Typescript、ES Next 语法支持;3、HTML 标签支持
Vue 数据操作语法,包括 computed、watch 支持;
Vue 双向绑定 v-model 指令支持;
filter 模板语法支持;
Redux 数据状态管理;
模板组件 ref 引用支持;
Mixins 支持;
Promise、Async、await 语法支持;
原生接口支持可定制的 Promise 化;
提供原生接口 Hook 能力;样式 rpx 单位自动转换;
接口 Mock;图片自动压缩能力;小程序开发逐步抹平与 web 的差异,还有很多框架,大家自行搜索:1、京东的 taro:多端统一开发框架,支持用 React 的开发方式编写一次代码,生成能运行在微信/百度/支付宝/字节跳动/ QQ 小程序/快应用/H5/React Native 等的应用;2、Chameleon:真正专注于让一套代码运行多端的开发框架,提供标准的MVVM架构开发模式统一各类终端;3、uni-app:使用 Vue.js 开发所有前端应用的框架,开发者编写一套代码,可发布到iOS、Android、H5、以及各种小程序(微信/支付宝/百度/头条/QQ/钉钉)等多个平台。
小程序端的发展历程和浏览器当年的发展历程有很多相似之处。

大家周末愉快!


推荐阅读:我是一颗树 · DOM
关于晋升的一点思考

dfee97d77066404f5697b7283ed75d1f.png




推荐阅读
  • 在进行网络编程时,准确获取本地主机的IP地址是一项基本但重要的任务。Winsock作为20世纪90年代初由Microsoft与多家公司共同制定的Windows平台网络编程接口,为开发者提供了一套高效且易用的工具。通过Winsock,开发者可以轻松实现网络通信功能,并准确获取本地主机的IP地址,从而确保应用程序在网络环境中的稳定运行。此外,了解Winsock的工作原理及其API函数的使用方法,有助于提高开发效率和代码质量。 ... [详细]
  • 1.支付能力a.开发步骤:1.登录开发中心,选择相应的小程序,进入该小程序详情页2.在小程序详情开发管理页面的功能列表中,点击右上角添加功能按钮,添加【小程序支付】功能,提交进入审 ... [详细]
  • C++ 异步编程中获取线程执行结果的方法与技巧及其在前端开发中的应用探讨
    本文探讨了C++异步编程中获取线程执行结果的方法与技巧,并深入分析了这些技术在前端开发中的应用。通过对比不同的异步编程模型,本文详细介绍了如何高效地处理多线程任务,确保程序的稳定性和性能。同时,文章还结合实际案例,展示了这些方法在前端异步编程中的具体实现和优化策略。 ... [详细]
  • 在JavaWeb开发中,文件上传是一个常见的需求。无论是通过表单还是其他方式上传文件,都必须使用POST请求。前端部分通常采用HTML表单来实现文件选择和提交功能。后端则利用Apache Commons FileUpload库来处理上传的文件,该库提供了强大的文件解析和存储能力,能够高效地处理各种文件类型。此外,为了提高系统的安全性和稳定性,还需要对上传文件的大小、格式等进行严格的校验和限制。 ... [详细]
  • 深入解析Android 4.4中的Fence机制及其应用
    在Android 4.4中,Fence机制是处理缓冲区交换和同步问题的关键技术。该机制广泛应用于生产者-消费者模式中,确保了不同组件之间高效、安全的数据传输。通过深入解析Fence机制的工作原理和应用场景,本文探讨了其在系统性能优化和资源管理中的重要作用。 ... [详细]
  • 卓盟科技:动态资源加载技术的兼容性优化与升级 | Android 开发者案例分享
    随着游戏内容日益复杂,资源加载过程已不仅仅是简单的进度显示,而是连接玩家与开发者的桥梁。玩家对快速加载的需求越来越高,这意味着开发者需要不断优化和提升动态资源加载技术的兼容性和性能。卓盟科技通过一系列的技术创新,不仅提高了加载速度,还确保了不同设备和系统的兼容性,为用户提供更加流畅的游戏体验。 ... [详细]
  • Web开发框架概览:Java与JavaScript技术及框架综述
    Web开发涉及服务器端和客户端的协同工作。在服务器端,Java是一种优秀的编程语言,适用于构建各种功能模块,如通过Servlet实现特定服务。客户端则主要依赖HTML进行内容展示,同时借助JavaScript增强交互性和动态效果。此外,现代Web开发还广泛使用各种框架和库,如Spring Boot、React和Vue.js,以提高开发效率和应用性能。 ... [详细]
  • 为开发者提供了一系列实用的参考网站和资源链接,包括HTML速查手册( 和 ),帮助开发者快速查找和学习相关技术知识。此外,还涵盖了其他重要的开发工具和文档,为编程工作提供全面支持。 ... [详细]
  • 提升 Kubernetes 集群管理效率的七大专业工具
    Kubernetes 在云原生环境中的应用日益广泛,然而集群管理的复杂性也随之增加。为了提高管理效率,本文推荐了七款专业工具,这些工具不仅能够简化日常操作,还能提升系统的稳定性和安全性。从自动化部署到监控和故障排查,这些工具覆盖了集群管理的各个方面,帮助管理员更好地应对挑战。 ... [详细]
  • 在深入研究 React 项目的过程中,特别是在探索 react-router 源码时,我发现了其中蕴含的中间件概念。这激发了我对中间件的进一步思考与整理。本文将详细探讨 Redux 中间件的原理及其在实际项目中的应用,帮助读者更好地理解和使用这一强大工具。通过具体示例和代码解析,我们将揭示中间件如何提升应用的状态管理和异步操作处理能力。 ... [详细]
  • TypeScript 实战分享:Google 工程师深度解析 TypeScript 开发经验与心得
    TypeScript 实战分享:Google 工程师深度解析 TypeScript 开发经验与心得 ... [详细]
  • 求助高手调试程序,非常感谢您的支持!在编写C语言程序时遇到了一些问题,具体代码如下:```c#include #include #include #define MAX 50int t;```希望有经验的开发者能提供指导,帮助解决调试中的难题。感谢您的时间和帮助! ... [详细]
  • GDB 使用心得与技巧总结
    在使用 GDB 进行调试时,可以采用以下技巧提升效率:1. 通过设置 `set print pretty on` 来美化打印输出,使数据结构更加易读;2. 掌握常见数据结构的打印方法,如链表、树等;3. 利用 `info locals` 命令查看当前作用域内的所有局部变量;4. 在需要进行类型强制转换时,正确使用语法,例如 `p (Test::A *) pObj`。这些技巧能够显著提高调试的便捷性和准确性。 ... [详细]
  • 进程(Process)是指计算机中程序对特定数据集的一次运行活动,是系统资源分配与调度的核心单元,构成了操作系统架构的基础。在早期以进程为中心的计算机体系结构中,进程被视为程序的执行实例,其状态和控制信息通过任务描述符(task_struct)进行管理和维护。本文将深入探讨进程的概念及其关键数据结构task_struct,解析其在操作系统中的作用和实现机制。 ... [详细]
  • Hello,我是犯迷糊的小K。目前是ifanr的一只前端攻城狮,同时也是知晓云团队的一员。3月伊始,ifanr旗下品牌——知晓云3.0版本 ... [详细]
author-avatar
书友55218170
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有