Qwik 是一个全栈式 Web 框架,Qwik 基于 React、Angular 和 Vue 等其他 Web 框架的概念,但以 JavaScript 流等更新的方法脱颖而出,允许以高性能向用户交付复杂的 Web 应用程序。

随着 Web 应用程序变得越来越大,它们的启动性能会下降,因为当前的框架向客户端发送了太多的 JavaScript。保持初始捆绑包的大小在一个小体积范围内,是一场永无止境且的斗争。

Qwik 向用户提供即时应用程序。这是通过保持初始 JavaScript 成本恒定来实现的,即使你的应用程序变得更加复杂,但 Qwik 仅为特定用户交互提供 JavaScript。这确保了无论应用程序有多大,JavaScript 都不会使浏览器过载。最后,预取代码可确保即使在缓慢和间歇性网络上也能实现即时交互。

近日 Qwik 团队宣布,Qwik 已经达到 1.0 版本。1.0 版本本身的更新内容并不多,主要就是修复之前版本的一些问题,以及改进了文档。

主要特性

Qwik 的理念是:确保易于使用的路径也是高性能的路径。这就是为什么,从一开始,Qwik 就解决了以下问题:

开箱即用的用户体验

  • 通过 JavaScript 流实现即时加载:即使应用程序的复杂程度随着时间的推移而增加,也能保持这种状态。
  • 推测性代码获取:在用户需要时准确地提供你需要的代码,以确保即时的用户交互性,即使是在网络不可靠的缓慢移动设备上。
  • 惰性执行:Qwik 的可恢复技术尽可能地推迟浏览器中代码的执行,以保持浏览器主线程的自由和对用户交互的响应。
  • 优化渲染时间:Qwik 是响应式的,也就是说,在默认情况下,它只更新绝对需要的东西。
  • 数据获取:从服务器开始获取数据,以防止 “瀑布” 式延迟。

开发者体验

  • 类似于 JSX
  • 基于目录的路由:用基于目录的路由创建网站,这是一种行业首选的声明路由的方式。
  • 一流的数据访问:Qwik 数据加载器和表单操作让你轻松访问服务器数据,并具有 100% 的端到端类型安全和用户输入验证功能。
  • 中间件:以可移植方式声明中间件逻辑,能够部署到所有主要的托管提供商。
  • 统一的执行模型:有了 Qwik,编写前端和后端代码时就会自然而然地在一个应用程序代码库和类型安全中结合起来。默认情况下,Qwik 应用程序在服务器和浏览器中执行,但很容易将函数固定为始终是服务器( server$() )(或始终是浏览器)。

更多详情可查看:https://www.builder.io/blog/qwik-v1

相关链接

Qwik 1.0 发布,全栈式 Web 框架的更多相关文章

  1. Python全栈开发-web框架之django

    一:web框架 什么是web框架? Web应用框架(Web application framework)是一种开发框架,用来支持动态网站.网络应用程序及网络服务的开发.这种框架有助于减轻网页开发时共通 ...

  2. vuejs、eggjs全栈式开发设备管理系统

    vuejs.eggjs全栈式开发简单设备管理系统 业余时间用eggjs.vuejs开发了一个设备管理系统,通过mqtt协议上传设备数据至web端实时展现,包含设备参数分析.发送设备报警等模块.收获还是 ...

  3. vuejs、eggjs、mqtt全栈式开发设备管理系统

    vuejs.eggjs.mqtt全栈式开发简单设备管理系统 业余时间用eggjs.vuejs开发了一个设备管理系统,通过mqtt协议上传设备数据至web端实时展现,包含设备参数分析.发送设备报警等模块 ...

  4. (转)也谈基于NodeJS的全栈式开发(基于NodeJS的前后端分离)

    原文链接:http://ued.taobao.org/blog/2014/04/full-stack-development-with-nodejs/ 随着不同终端(pad/mobile/pc)的兴起 ...

  5. 全栈式JavaScript

    如今,在创建一个Web应用的过程中,你需要做出许多架构方面的决策.当然,你会希望做的每一个决定都是正确的:你想要使用能够快速开发的技术,支持持续的迭代,最高的工作效率,迅速,健壮性强.你想要精益求精并 ...

  6. 基于NodeJS的全栈式开发

    前言 为了解决传统Web开发模式带来的各种问题,我们进行了许多尝试,但由于前/后端的物理鸿沟,尝试的方案都大同小异.痛定思痛,今天我们重新思考了“前后端”的定义,引入前端同学都熟悉的 NodeJS,试 ...

  7. 全栈式框架的选择:MEAN or MEANS?

    说明:个人博客地址为edwardesire.com,欢迎前来品尝.本博客作为备份和引流 这两个月一直在进行sails后端开发,其中遇到的问题不断.放在研究用户访问控制矸例程上的时间太多,最后也没用弄出 ...

  8. 也谈基于NodeJS的全栈式开发(基于NodeJS的前后端分离)

    前言 为了解决传统Web开发模式带来的各种问题,我们进行了许多尝试,但由于前/后端的物理鸿沟,尝试的方案都大同小异.痛定思痛,今天我们重新思考了“前后端”的定义,引入前端同学都熟悉的NodeJS,试图 ...

  9. 大数据全栈式开发语言 – Python

    前段时间,ThoughtWorks在深圳举办一次社区活动上,有一个演讲主题叫做“Fullstack JavaScript”,是关于用JavaScript进行前端.服务器端,甚至数据库(MongoDB) ...

  10. 为什么说Python 是大数据全栈式开发语言

    欢迎大家访问我的个人网站<刘江的博客和教程>:www.liujiangblog.com 主要分享Python 及Django教程以及相关的博客 交流QQ群:453131687 原文链接 h ...

随机推荐

  1. echarts自定义legend样式

    https://blog.csdn.net/changyana/article/details/126281275

  2. SpringBoot 集成短信和邮件

    准备工作 1.集成邮件 以QQ邮箱为例 在发送邮件之前,要开启POP3和SMTP协议,需要获得邮件服务器的授权码,获取授权码: 1.设置>账户 在账户的下面有一个开启SMTP协议的开关并进行密码 ...

  3. HTTP协议六种请求:GET,HEAD,PUT,DELETE,POST

    Http定义了与服务器交互的不同方法,标准Http协议支持六种请求方法,即: 1.GET 2.POST 3.PUT 4.Delete 5.HEAD 6.Options 最基本的方法有4种,分别是GET ...

  4. Java 使用二分查找快速定位元素位置

    转载请注明出处: 快速定位 一个有序数列中 某一个元素的位置: 共有三种思路: 第一种:使用 for 循环,匹配元素值 与循环变量的值是否相等,相等则循环变量时的 i 则为元素位置 第二种:使用 二分 ...

  5. MySQL本地服务器与MySQL57网络服务器区别

    MySQL服务器与MySQL57服务器区别与不同处在哪里,他们各自的领域范围,能不能同时启动服务? 安装了MySQL-5.7.18.0版本数据库,版本中包含了MySQL Workbench可视化试图工 ...

  6. java - 局部变量和成员变量的区别

    package class_object; /** * 局部变量和成员变量的区别 * * 1. 定义位置 * * 2. 作用域 * * 3. 默认值 => 局部变量没有默认值 * * 4. 内存 ...

  7. Shell-循环-for-while

  8. [转帖]/dev/random 和 /dev/urandom的一点备忘

    https://www.cnblogs.com/ohmygirl/p/random.html 1.  基本介绍 /dev/random和/dev/urandom是Linux系统中提供的随机伪设备,这两 ...

  9. [转帖]MySQL数据类型(decimal的存储大小)

    本来还以为MySQL的数据类型挺简单的,没想到竟然有很多坑,容我仔细道来 MySQL数据类型 整数类型(注意是字节) 浮点型(重点关注decimal) 字符型(注意这是4.x版本的定义,5.x以后已经 ...

  10. [转帖]如何使用 sed 命令删除文件中的行

    https://zhuanlan.zhihu.com/p/80212245 sed 命令是 Linux 中的重要命令之一,在文件处理方面有着重要作用.可用于删除或移动与给定模式匹配的特定行.-- Ma ...