LiJiaHao' Blog

计算机爱好者的世界

XStreaming开发手记-webrtc篇

WebRTC在串流的实际应用

XStreaming发布四个月来,已经陆续发布十余个版本,期间也同步更新了适配windows、MacOS和steamOS的PC版本,目前已经处于一个相对稳定的迭代阶段,今天将介绍XStreaming串流核心技术webrtc在其中的应用,以及在开发过程中遇到的问题和解决方案,通过阅读本文,你除了可以了解XStreaming底层通信原理,也可以了解webrtc的实际应用。 WebRTC We...

XStreaming开发手记——概述

开源移动端Xbox/Xcloud串流应用

XStreaming(Xbox Streaming)是一款开源免费Xbox串流应用,旨在安卓设备上远程你的Xbox series x/s,并且支持官方云游戏,让你可以在任何地方玩上Xbox平台游戏,本文将概述该应用的开发灵感及开发过程的思考,不会涉及过多技术细节,技术细节将会在后续的章节进行分享。 简述串流 在介绍XStreaming之前,先来简单介绍下串流。串流就是将多媒体信息,如视频、...

sparkee-自动化monorepo管理工具

sparkee工作原理及适用场景详解

Sparkee是一个类似lerna的monorepo管理工具,但又有很多不同,本文将详细介绍本人开发sparkee的初衷以及该工具的具体使用场景。 为什么要造轮子 造轮子的初衷无非无非就是现有的工具不好用或不能满足自己的项目场景。在我自己的monorepo项目中有以下几点是lerna等monorepo工具无法解决的: pnpm局限性 项目使用pnpm自带的monorepo功能进行依赖...

pnpm在monorepo的管理之道

pnpm在monorepo项目改造的落地

前段时间对现有项目进行了改造,由原来的单仓库单包管理转换为单仓库多包的monorepo项目管理方式,采用pnpm对项目模块进行管理,本文对在项目改造过程中遇到的种种问题进行记录和分享。 项目背景 现有项目是一个提供给业务前端开发的cli工具,旨在将代码中的开发配置全部进行解耦,与常见的vue-cli不一样的是,这个cli安装在全局而不是分别安装在项目中,开发者只需全局安装一次,就可以在任...

内容寻址存储原理及实际使用场景

通过实例学习CAS

内容寻址存储(Content-Addressed Storage),简称CAS,是一种基于内容进行信息检索的存储方式,本文将对CAS进行技术简述,并通过具体的实例来解释CAS的原理和使用。 哈希表(hash table) 哈希表可以理解是使用hash作为key来指向具体value的数据结构。key具体可以通过hash的算法(CRC16\SHA256\SHA384\SHA512等)进行计...

关于module Federation的思考

webpack5新特性module Federation学习和思考

module Federation是webpack5发布的几个新特性之一,module Federation的理念是应用可以动态引用其他客户端或服务端的模块,因此这也是webpack首次官方开放微前端概念特性,接下来我们将通过一些具体例子来体会module Federation具体可以做的事和可以解决的问题。 当前前端应用开发和部署过程的痛点 一切脱离具体需求的开发特性都是纸上谈兵,为了...

postcss8插件编写指南

编写属于自己的postcss8插件

近期工作在将前端架构webpack升级到5时,一些配套模块也需要进行升级,其中包括了css处理模块postcss,旧版本使用的是postcss7,在升级至postcss8的过程中发现部分插件前置依赖还是停留在7版本,且年久失修,在postcss8中出现各种各样的问题,无奈只能研究源码将目前部分旧版本插件升级至新版本,这里将升级插件的过程进行简化和提炼,让读者自己也可以编写一个postcss8...

解读BMP图片

从底层带你了解BMP格式

最近在提取《基连的野望 阿克西斯V》的MRG文件时接触了BMP图片,于是从底层对BMP图片进行研究,学习BMP图片的显示和成像原理。 BMP图片简介 BMP图片是一种栅格图片,BMP图片的每一个像素都由一个比特位(bit)或多个比特位(bits)表示,因此BMP全称是bitmap 或 a map of bits and pixels。 BMP是Windows操作系统中的标准图像文件格式,...

谈谈RESTful API的设计

简述RESTful API设计

在前后端分离的今天,前端除了需要完成复原设计稿的任务外,还有个重要的工作,就是和后端对接好RESTful API,以将数据和UI进行绑定,从而实现UI的动态展示。RESTful API对前端而言,只是一个由XHR或fetch请求后返回的JSON数据,随后对这段JSON数据进行处理,那么对后端而言需要做的就多了,除了搭建基本后台框架,还要编写服务代码,那么如何写出一个好用且赏心悦目的RESTf...

react-native run-ios内部原理探索

通过react-native命令行学习自动化编译运行iOS项目

最近在为iOS项目开发自动化构建工具时,需要调用react-native run-ios命令,但由于项目react-native版本过低,本地xcode版本已经升至xcode11,不少目录结构和数据格式有变化,官方react-native run-ios命令执行失败,因此不得不从react-native run-ios内部研究iOS打包运行机制,自己重新编写打包脚本进而修复run-ios无法...