This_Wei

Come on!

概述

2023年10月15日,我们来到了位于大邑县的雾山乡云中屋徒步,初秋的微凉天气很舒服,孩子们在户外也玩的很开心。

阅读全文 »

概述

这篇文章介绍了作为一个 IT 工作者从开始工作,到工作三五年,到长期的职业规划建议,希望能对迷茫的人有所启发。

总体规划

工作年限 时期 建议
1~3年 技术筑基期 补齐基础知识和短板,扩展技术栈
3~5年 沉淀提效期 提升工作效率,持续学习,理解技术背后的原理
5~10年 优秀提升期 明确发展方向,努力变得比别人优秀
阅读全文 »

概述

这篇文章介绍了当前常见的流媒体服务架构和实现协议,以及各种流媒体协议的特点对比。

关于流媒体服务

流媒体服务是提供音频、视频等多媒体数据传输和存储服务,比如视频直播服务。

阅读全文 »

概述

这篇文章介绍了在 JavaScript 中通过 WebAssembly 调用 C 语言编写的函数,以及在 C 代码中调用 JavaScript 函数。

web 使用 wasm 流程

在 web 项目中使用 WebAssembly 时,需要先编写 C 语言代码,然后使用 emscripten 编译成 .wasm.js 文件,最后在 html 文件中引入 js 文件,就可以调用在 C 中定义的函数。在 wasm 中是无法操作 dom 的,需要结合 js 使用。

graph LR;
C(C代码) ---> WASM ---> HTML
JS ---> HTML
C -.-> JS

注意:使用 emscripten 自动生成的胶水 js 文件是对 wasm 的实例化和调用函数的封装,方便使用,这个 js 文件中对各种运行环境(node、shell、web、worker)做了支持,实际使用时可以根据自己的业务需求,排除不需要的代码以缩小 js 文件代码量,或自己编写封装成 js 文件。

阅读全文 »

概述

WebAssembly 已经极 html、css、js 之后,成为 Web 平台的第四种语言,这篇文章介绍了 WebAssembly 的概念,特点以及使用场景,提供了一个将 C 代码编译成 wasm 并在浏览器访问的简单示例。

认识 WebAssembly

官网: WebAssembly https://webassembly.org/

中文网:WebAssembly 中文网 https://www.wasm.com.cn/

W3C 标准:

WebAssembly Core Specification: https://www.w3.org/TR/wasm-core-1/

WebAssembly JavaScript Interface: https://www.w3.org/TR/wasm-js-api-1/

WebAssembly Web API: https://www.w3.org/TR/wasm-web-api-1/

WebAssembly (简称 wasm),中文含义为网页汇编,是一种基于栈的二进制指令格式的虚拟机标准,它的设计目标包括:高可移植性、高安全性、高效率(包括载入效率和运行效率)、尽可能小的程序体积。WebAssembly 能够在主流的浏览器中运行,它的出现是为了解决前端项目 JavaScript 运行低效的问题。浏览器支持情况参考:Roadmap - WebAssembly

阅读全文 »

概述

这篇文章简要的介绍了一款开源的前端 js 框架——PreactJs,其特点是小巧且易用,仅 3kB 即可实现类似 React 的现代化前端 api,特别适用于存储空间有限的环境,比如嵌入式的 web 项目。

认识 PreactJs

官网: https://preactjs.com/

Github(star 34.6k): https://github.com/preactjs/preact

PreactJs 是 React 的轻量化、快速的替代方案,拥有与其相同的现代化 API,其优势在于:

  • 贴近实质:Preact 在 DOM 上提供了最薄的虚拟 DOM 抽象,在提供稳定的平台特性和注册事件处理程序的同时还确保其余其他库无缝兼容。Preact 无需转译即可在浏览器中直接使用。
  • 微小体积:Preact 体积小,意味着下载、解析、执行更少的 JavaScript,让开发人员专心构建用户体验,无需花更多时间在框架本身上。
  • 性能卓越:Preact 体积小,加载速度快,而且其基于树差异的简单、可预测而极快的虚拟 DOM 实现也提升了响应速度。
  • 即刻生产:Preact 轻量但不牺牲生产性,可以即刻部署到生产环境,甚至提供一些附加功能:
    • propsstatecontext 传递进 render()
    • 使用 classfor 一类的标准 HTML 属性
  • 生态兼容:Preact 的设计能够让您轻松、无缝的借用来自 React 生态中的许多组件。
阅读全文 »

概述

这篇文章是读完了石伟华的书《快速阅读:刷屏时代如何做到一年读300本书》后,做的笔记和写的一些感想。

关于本书

书名:《快速阅读:刷屏时代如何做到一年读300本书》

作者:石伟华

阅读全文 »

概述

这篇文章介绍了一个前端绘制矢量化图形的 js 库——RaphaelJs,文章阐述了 Raphael 中的基础概念,展示了一些基础的用法示例。

关于 Raphael

Created with Raphaël 2.3.0CircleRectEllipsePathImage

Raphael (读音:['ræfeɪəl], 猜测原意为拉斐尔,意大利文艺复兴时期著名画家),Raphael 是一个开源的、轻量易用的、跨浏览器的前端矢量绘图工具库。Raphael 基于 SVG 与 VML 实现图形绘制,所有使用 Raphael 绘制的图形对象同时也是 DOM 对象,可以修改它们或给它们添加 JavaScript 事件处理函数。Raphael 设计目标是跨浏览器和易用,现已支持的浏览器包括 Firefox 3.0+、Safari 3.0+、Chrome 5.0+、Opera 9.5+、Internet Explorer 6.0+。

官网: https://dmitrybaranovskiy.github.io/raphael/

Github: https://github.com/DmitryBaranovskiy/raphael

下载: https://github.com/DmitryBaranovskiy/raphael/releases

阅读全文 »

我的半马

2022年11月20日,我完成了人生中第一个半程马拉松,成绩2小时6分,这个成绩对于第一次参加马拉松比赛,而且只训练了一个月的我来说,已经算是突破自我了。在这里记录一下马拉松报名到训练到最终完成比赛的过程。

阅读全文 »
0%