从协议原理到 Vue 渲染器,用 8 分钟理解 A2UI 与大厂工程实践
阅读全文
02正在使用 Cursor、Claude Code、Codex、GitHub Copilot、Gemini CLI、Windsurf 等 AI 编程工具的研发团队
阅读全文
03准备土耳其 Apple ID,通过 SEAGM 充值礼品卡,并在 iPhone 上完成 ChatGPT 与 Codex 相关订阅
阅读全文提示 前言: Waline 评论系统这个 bug 有几个月了,现象就是回复完其他人的评论后,评论内容会保留在顶部输入框中,而且不会自动清空。具体见 👉GitHub issuse #2173 许久未见修复,正好我有空,就看看这个问题,接下来跟我一起分析一下这个问题 1. 定位问题 问题现象上边已经描述过了,我们先来定位一下问题。 1.1. 关键 关键在...
阅读全文
05CSRF crumbk,Jenkins,
阅读全文
06在 GitLab 中配置 SSH 密钥 生成 SSH 密钥对 如果您还没有 SSH 密钥对,请首先生成一对密钥。在终端中执行以下命令: 这将生成一个 RSA 类型的密钥对,并将私钥保存在 ~/.ssh/id_rsa,公钥保存在 ~/.ssh/id_rsa.pub。 复制公钥内容 打开公钥文件 ~/.ssh/id_rsa.pub,将其中的内容复制到剪贴板...
阅读全文Rust 发展历程 Rust 最早是 Mozilla 雇员 Graydon Hoare 的个人项目。从 2009 年开始,得到了 Mozilla 研究院的资助,2010 年项目对外公布,2010 ~ 2011 年间实现自举。自此以后,Rust 在部分重构 -> 崩溃的边缘反复横跳(历程极其艰辛),终于,在 2015 年 5 月 15 日发布 1.0 版...
阅读全文支持vuepress2.x的音乐播放器
阅读全文Project IDX,PaLM 2加持,代码效率翻倍
阅读全文
10相关信息 永远不要过早优化,优化也有相应的代价 开发时间变长 开发成本增加 代码难以阅读 增加维护成本 何时优化,因地制宜,是一门艺术,尽量把优化的思想带入写代码的过程中 本文章的优化手段基于vue2
阅读全文
11前言 首先要知道vue2 是2013年 基于 ES5开发出来的,我们常说的重渲染就是重新运行render函数 vue2 的响应式原理是利⽤ES5 的⼀个 API ,Object.defineProperty()对数据进⾏劫持结合发布订阅模式的⽅式来实现的。
阅读全文
12Dart 通过 async-await、isolate 以及一些异步类型概念(例如 Future 和 Stream)支持了并发代码编程。本篇文章会对 async-await、Future 和 Stream 进行简略的介绍,而侧重点放在 isolate 的讲解上。 在应用中,所有的 Dart 代码都在 isolate 中运行。每一个 Dart 的 iso...
阅读全文
13Flutter 工作原理 本文档解释了使 Flutter API 正常工作的 Flutter 工具包内部工作原理。由于 Flutter widget 是以积极组合的形式构建的,所以使用 Flutter 构建的用户界面含有大量 widget。为了支撑这些负载,Flutter 使用了次线性算法来布局和构建 widget,这些数据结构使树形结构优化更加高效,...
阅读全文
14相关信息 这是一个GitHub Actions的配置文件,整体思路是,获取本次更新的url (通过对比两次提交的sitemap.xml文件),所以触发条件是deploy分支有推送并修改了sitemap.xml文件,再利用python脚本进行url推送到百度、Bing、Google 脚本代码请看这里👉提交URL到搜索引擎(百度、Bing、Google)
阅读全文
15相关信息 这是一个利用GitHub Actions自动触发的工作流进行解析更新的url并推送到搜索引擎的python脚本,除了之前介绍过的bing api之外,还增加了百度和Google的相关内容 关于GitHub Actions的介绍可以看这里👉GitHub Actions 关于GitHub Actions的配置可以看这里👉如何利用GitHub ...
阅读全文
16GitHub Actions 是什么? Github Actions 是 Github 官方出的持续集成服务, 挺早之前就推出了。类似的还有如微软的DevOps、GitLab CI、Circle CI、Travis CI等等。大家知道,持续集成由很多操作组成,比如抓取代码、运行测试、登录远程服务器,发布到第三方服务等等。GitHub 把这些操作就称为 ...
阅读全文
17相关信息 素材、设计相关好用的网站 工具类
阅读全文浏览器是如何渲染页面的? 当浏览器的网络线程收到 HTML 文档后,会产生一个渲染任务,并将其传递给渲染主线程的消息队列。 在事件循环机制的作用下,渲染主线程取出消息队列中的渲染任务,开启渲染流程。
阅读全文浏览器的进程模型 何为进程? 程序运行需要有它自己专属的内存空间,可以把这块内存空间简单的理解为进程
阅读全文
20CSS 属性计算过程 你是否了解 CSS 的属性计算过程呢? 有的同学可能会讲,CSS属性我倒是知道,例如: 上面的 CSS 代码中,p 是元素选择器,color 就是其中的一个 CSS 属性。 但是要说 CSS 属性的计算过程,还真的不是很清楚。 没关系,通过此篇文章,能够让你彻底明白什么是 CSS 属性的计算流程。 image-2022081314...
阅读全文
21你不知道的 CSS 之包含块 一说到 CSS 盒模型,这是很多小伙伴耳熟能详的知识,甚至有的小伙伴还能说出 border-box 和 content-box 这两种盒模型的区别。 但是一说到 CSS 包含块,有的小伙伴就懵圈了,什么是包含块?好像从来没有听说过这玩意儿。 image-20220814222004395 好吧,如果你对包含块的知识一无所知...
阅读全文
22Vercel Ignored Build Step使用
阅读全文
23评论插件 Waline 之邮件通知配置 ✨ 陆续优化中……这次到了评论的邮件通知,由于 waline 带后端,可以开启评论通知,我是部署在 Vercel 上的,配置一下就可以了,模版要感谢小波同学 前置注意点 1.邮件要注意每日发信限制,短时密集评论会导致直接被封,禁止发信 2.最好不要使用自己平常使用的邮箱,使用一个单独的邮箱来操作 3.有服务器的同...
阅读全文
24相关信息 免费公开的API网站,提供多种公共接口服务
阅读全文提示 之前介绍了ZSH的安装和使用,这次把最终成果介绍一下,就是ZSH + iTerm2 + Pure 前置工作:安装ZSH,请参照之前的文章👉zsh安装
阅读全文
26提示 最近在做SEO,因为链接没有做同步,需要清除之前旧站的链接,重新提交,让搜索引擎尽快索引,google search console的已经基本做差不多了 bing最近因为 New Bing 的原因也用的比较多,所以做了一些工作,很方便的是,它可以直接同步GSC的站点数据,不过就只是域数据,URL还是要自己提交 为了尽快索引,只提交sitemap是...
阅读全文
27Flutter初学,demo
阅读全文
28关于本站 ✨📒 详细记录一下此次建站过程 开始 之前的博客是基于jekyll打造的,要添加和定制化的东西都只能基于html+js+css完成,有些麻烦,所以一直有想更换引擎的想法 直到偶然间发现vuepress,首先是被vue3+typescript+vite吸引,然后看到默认主题属实有点不合符我的期待,自己动手成本又太高,也没有太急着去折腾,直到无...
阅读全文VuePress 主要从 Markdown 文件生成页面。因此,你可以使用它轻松生成文档或博客站点。 你应该创建和编写 Markdown 文件,以便 VuePress 可以根据文件结构将它们转换为不同的页面。
阅读全文鉴于使用 ReactNative 时,会需要不同的 node 版本,提供一种版本切换方式 使用 n command 来进行 node 版本管理 概念 n Node version manager 提供了一个更简单的 CLI,用于在 Node 版本之间进行安装和切换。它仅在 Linux 或 Mac 操作系统上受到支持。 安装 如果你已经安装某个版本的 N...
阅读全文ReactNative State(状态)
阅读全文ReactNative开发环境配置,ES6语法介绍
阅读全文前置知识点介绍
阅读全文MacOS 自带的 bash 作为几乎所有 Linux 发行版的默认终端,正常使用时没什么问题的 这里介绍一个更强大的终端神器 目录 背景介绍 在 unix 内核的操作系统中,当然现在衍生出好多分支,linux ,OS X 都算. shell 就算和上面这些系统内核指令打交道的一座桥梁,我们通过键盘输入一种自己容易记忆识别的符号标识(shell 命令)...
阅读全文
36神经网络模型训练 经过之前 coreML 的介绍,自己训练一个模型 使用 xcodeplayground 训练简单神经网络模型 详细: 去年,苹果(Apple)推出了 Core ML:这是一种快速的方法,可以让你用尽可能少的代码将预先培训好的机器学习模型导入应用程序中!今年,有了 Create ML,苹果给了我们开发人员创建我们自己的机器学习模型直接进...
阅读全文
371.1. 前言 开发中总会用到各种缓存,但是各位有没有考虑过什么样的缓存才能被叫做优秀的缓存,或者说优秀的缓存应该具备哪些特质? 本文将结合 YYCache 的源码逐步带大家找到答案。 YYCache 是一个线程安全的高性能键值缓存(该项目是 YYKit 组件之一) YYCache 的代码逻辑清晰,注释详尽,加上自身不算太大的代码量使得其阅读非常简单,...
阅读全文
38最近一直在忙,今天抽空写一下 H5 和 Native 的交互 一、选择 项目本身 webview 使用的是 WKWebview,其实 WKWebview 自带的 messageHandle 也可以满足此需求 JSContext,源自于 JavaScriptCore 框架中的东西,最后不使用此方案源于一下几点 但是其中繁杂的字符串使用,让我觉的可能会由于...
阅读全文前言 整理一下在iOS开发中NSError的错误代码 NSError NSError是系统错误信息类 初始化方法两个 属性 @property (readonly) NSInteger code;//错误代码 @property (readonly, copy) NSDictionary *userInfo;//错误信息 @property (read...
阅读全文前言 移动端的数据库选型一直是一个难题,直到前段时间看到了 WeMobileDev(微信前端团队)放出了第三个开源组件-WCDB WCDB(WeChat DataBase)是微信官方的移动端数据库组件,致力于提供一个高效、易用、完整的移动端存储方案 微信团队怎么说 基于 SQLCipher WCDB-iOS/Mac WCDB-Android 数据库损坏...
阅读全文
41最近有些忙,好久没有写博客了。 分享一个 cell 做单选的思路 可行的思路 在 tableview 的控制器中设立一个变量记录选择的 indexPath,点击 cell 之后刷新表格来和现有 indexPath 对比 和第一种大同小异,做一个和 dataArr 同样的数组,记录 indexPath,循环确定当前 cell 是否为选中 cell 利用 ...
阅读全文
42CoreML 是 iOS 11 新推出的机器学习框架,是人工智能的核心内容,他可以在训练好的机器学习模型应用到 APP 中 所谓已训练模型 (trained model)指的是对一组训练数据应用了某个机器学习算法后,所生成的一组结果 Core ML 是领域特定 (domain-specific) 框架和功能的基础所在。Core ML 为 Vision ...
阅读全文
43参考链接:losures Capture Semantics, Part 1: Catch them all! 概述 原文中先定义一个 Pokemon 类 延时执行的闭包 默认捕捉语法 在 swift 中默认的捕捉语法是:被捕获的变量在闭包被执行的时候才被定值1 . 我们能说它捕获到了这个变量的引用(或者 指针)。 这个闭包会在 demo1() 方法函...
阅读全文参考地址 ijkplayer 是一款做视频直播的框架,基于 FFmpeg,支持 Android 和 iOS。这里介绍一下 iOS 中集成 ijkplayer 一、FFmpeg FFmpeg 是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。它包括了领先的音/视频编码库 libavcodec 等。 libavformat:用于各种...
阅读全文
45昨天试验了 iOS 11 beta6 发现原有的 https 自建证书不能使用,可能是新版本要对 ATS 加强验证,之前一直说的要全面 https 估计在不久的将来就要来临,未接入的可能要像 Apple 说的不允许上架。所以把配置过程记录在此 要求 启用 ATS 必须符合以下标准,不满足条件的 HTTPS 证书,ATS 都会拒绝链接: 服务器所有的链接...
阅读全文
46timelineLogistics 是模仿淘宝物流信息时间轴界面的自定义 View 效果 MarkdownMarkdown 使用正则表达式判断字符是否为电话号码,用 YYLable 进行富文本电话拨打 使用 引入 Masonry,YYkit 库 使用了 MAsonry 进行布局 使用了 YYkit 中的 YYLable 进行富文本电话号码点击拨打电话 ...
阅读全文
47本文介绍 iOS 中 cookie 的使用包含 AFNetWorking 3.0 中的使用,常用于登录状态信息保存 什么是 Cookies? Cookie 是由服务器保存在用户浏览器(客户端)上的一块数据,它可以包含有关用户的信息,比如果登陆的状态,用户标识等。 Cookie 有什么作用? 主要用在以下三个方面: 会话状态管理(如用户登录状态、购物车)...
阅读全文
48本文介绍使用 WKWebView 拦截 url 进行原生界面跳转 3.gif3.gif 使用代理方法 decidePolicyForNavigationAction 自定义方法传过来 url 进行判断,需要 html 元素本身就有跳转链接,才可以拦截,如没有,拦截不到。下文 app://xxx 链接为自定义链接
阅读全文
49记录一下 iOS8 之后的新控件 WKWebView,用以替代之前的 UIWebView,因为需求是在 TableView 的 Cell 中放一个 WebView。就产生了滑动手势冲突,为了解决这个问题就需要让 webView 高度自适应 一、新特性 在性能、稳定性、功能方面有很大的提升,最明显的就是内存占用降低了很多。 允许 JavaScript 的...
阅读全文
50记录一下限制输入字符的判断。不仅局限于中文或英文 首先在 ViewDidLoad 中注册通知 下面是判断逻辑 由于需求有中文键盘下的字母数字输入,所以其中那部分判断如不需要可以去除
阅读全文