javascript前端 程序设计 笔记

《深入理解Java虚拟机》第三章读书笔记(二)——HotSpot垃圾回收算法实现(OopMap,安全点安全区域,卡表,写屏障,三色标记算法)

系列文章目录和关于我 前面《深入理解Java虚拟机》第三章读书笔记(一)——垃圾回收算法我们学习了垃圾回收算法理论知识,下面我们关注下HotSpot垃圾回收算法的实现,分为以下几部分 对象是垃圾的判断依据 GC Roots 是如何高效扫描的 如何解决跨代引用对象的垃圾回收问题 如何降低垃圾回收STW ......
算法 色标 屏障 垃圾 区域

如何提高前端性能——字体篇

前言 有时候前端开发需要使用到一些特殊字体,但宿主机上一般都没有安装相应的字体,所以需要将字体文件与前端代码一起打包以及用 CSS 定义使用。本文主要是想回答一个问题:在性能方面,我们可以怎么去优化前端需要加载的字体? 一般优化的思路主要是两方面: 缩小字体文件 优化字体加载的方式 缩小字体文件 字 ......
前端 字体 性能

Unreal学习笔记2-绘制简单三角形

之所以写这个绘制简单三角形的实例其实是想知道如何在Unreal中通过代码绘制自定义Mesh,如果你会绘制一个三角形,那么自然就会绘制复杂的Mesh了。所以这是很多图形工作者的第一课。 ......
三角形 笔记 Unreal

产研指南针的量化指标实践笔记

背景 在公司和业务发展到一定阶段,高层管理者会逐步期望从直觉化的管理逐步转向量化的关键指标管理;同时从hr层面okr和kpi的考核逐步从直觉化的定性考核,转变为数据化指标考核为主做评估和分析。此时中层管理者要实践关键指标读取和分析,及对团队成员从长期关注,变成短期快速反馈并推进绩效改进。 难点 1. ......
指南针 指标 笔记 指南

深度剖析 Linux 伙伴系统的设计与实现

在上篇文章 《深入理解 Linux 物理内存分配全链路实现》 中,笔者为大家详细介绍了 Linux 内存分配在内核中的整个链路实现: 但是当内核执行到 get_page_from_freelist 函数,准备进入伙伴系统执行具体内存分配动作的相关逻辑,笔者考虑到文章篇幅的原因,并没有过多的着墨,算是 ......
深度 伙伴 系统 Linux

从 Cloud-Native Relational DB 看数据库设计

论文内容:Amazon Aurora: Design Considerations for HighThroughput Cloud-Native Relational Databases 里面介绍了一种云原生的关系型数据库 Aurora 的体系结构,以及导致该体系结构的设计考虑因素。我觉得和普通的 ......

GitLab CI-CD 学习笔记

概述 1. CI/CD CI(持续集成)指开发人员一天内进行多次合并和提交代码操作,并通过自动化测试,完成构建 CD(持续部署)指每次代码更改都会自动部署到对应环境 CI/CD 结合在一起,可以加快开发团队交付成果的效率,减少时间成本 2. Gitlab-CI/CD gitlab-ci 是 gitl ......
笔记 GitLab CI-CD CI CD

从设计110序列检测器来看--同步时序电路设计

#从设计110序列检测器来看--同步时序电路设计 开学临近,本人查缺补漏,应对推迟的期末考试 同步时序逻辑设计,难度有所增加,本人欲通过110序列检测器来解决这一问题点: ##设计步骤: 1.获取原始状态图与状态表--分析状态图表 2.最简化状态图表 3.状态编码 4.利用状态转移表与触发器特征设计 ......

搞懂设计模式——代理模式 + 原理分析

举个栗子,众所周知,我们是可以在京东上购买机票的。 但机票是航司提供的,我们本质上是代理销售而已。 那为什么航司要让我们代理销售呢? 我们又是如帮他做代理的呢? 别急,本文将展开说说他们之间的关系。。。 ......
模式 设计模式 原理

随机高并发查询结果一致性设计实践

物流合约中心是京东物流合同管理的唯一入口。为商家提供合同的创建,盖章等能力,为不同业务条线提供合同的定制,归档,查询等功能。由于各个业务条线众多,为各个业务条线提供高可用查询能力是物流合约中心重中之重。同时计费系统在每个物流单结算时,都需要查询合约中心,确保商家签署的合同内容来保证计费的准确性。 ......
一致性 结果

Linux环境下:程序的链接, 装载和库[静态链接]

看以下例子 main.c extern int x; int main() { int y = 100; swap(&x,&y); return 0; } int x = 1; void swap(int* x, int* y) { int temp = *x; *x = *y; *y = temp ......
链接 静态 环境 程序 Linux

JavaScript 数组去重

JavaScript 中有多种方法可以实现数组去重,下面是几种常用的方法: 1、使用 Set 去重:Set 数据结构中不能有重复元素,可以将数组转成 Set 类型,再转回数组。 let arr = [1,2,3,4,5,6,2,3,4]; let uniqueArr = [...new Set(ar ......
数组 JavaScript

JavaScript 内存管理及垃圾回收

JavaScript 中的内存管理主要由 JavaScript 引擎负责,开发人员不需要手动管理内存。JavaScript 引擎使用垃圾回收算法来实现自动垃圾回收。 JavaScript 垃圾回收算法是指在 JavaScript 程序中,用来回收不再使用的内存的算法。 ......
JavaScript 内存 垃圾

JavaScript 中 this 关键字的作用和如何改变其上下文

JavaScript 中的 this 关键字引用了所在函数正在被调用时的对象。在不同的上下文中,this 的指向会发生变化。可以通过 call, apply, bind 方法来改变 this 的上下文。 ......
上下文 JavaScript 上下 关键字 作用

uniapp小程序使用高德地图api实现路线规划

路线规划 简介 路线规划常用于出行路线的提前预览,我们提供4种类型的路线规划,分别为:驾车、步行、公交和骑行,满足各种的出行场景。 高德开放平台 本例是驾车路线规划功能和位置选择地图api:chooseLocation 示例: 1、在页面的 js 文件中,实例化 AMapWX 对象,请求进行驾车路线 ......
路线 地图 程序 uniapp api

JavaScript 图像压缩

JavaScript 可以使用类似于 canvas 和 web workers 来实现图像压缩。 使用 canvas,可以将图像绘制到 canvas 上,然后使用 canvas 提供的 toBlob() 或 toDataURL() 方法将其转换为不同格式的图像。在这些方法中指定图像质量参数即可实现压... ......
JavaScript 图像

JavaScript 浅拷贝和深拷贝

JavaScript 中对象的赋值是通过将一个对象的引用赋值给另一个变量,两个变量指向同一个内存地址。这意味着如果更改其中一个对象的值,另一个对象的值也会更改。 浅拷贝是将一个对象的值复制给另一个对象,但如果对象中包含对其他对象的引用,则这些引用仍然指向原来的对象。可以使用 Object.assig... ......
拷贝 JavaScript

JavaScript 中URL 查询字符串(query string)的序列与反序列化

方法一: 在 JavaScript 中,可以使用 URLSearchParams 对象来处理 URL 中的查询字符串。 序列化(将 JavaScript 对象转换为查询字符串)可以使用 URLSearchParams 对象的 append() 方法,如下所示: let params = new UR ......
序列 字符串 JavaScript 字符 string

(Java)设计模式:结构型

前言 这篇博文续接的是 UML建模、设计原则、创建型设计模式、行为型设计模式,有兴趣的可以看一下 3.3、结构型 这些设计模式关注类和对象的组合。将类和对象组合在一起,从而形成更大的结构 * 3.3.1、proxy 代理模式 定义:为某对象提供一种代理以控制对该对象的访问。即:客户端通过代理间接地访 ......
结构型 设计模式 模式 结构 Java

Qt界面设计--侧边栏隐藏和滑出

在日常项目中,界面布局上经常使用到侧边栏的方式,在侧边栏放置控件进行复合使用,可以实现子功能界面的隐藏和滑出,效果展示如下: 界面控件很简单,主界面QWidget,侧边栏也用一个QWidget和一个按钮QPushbutton来进行组合。通过点击按钮来显示和隐藏侧边栏。主要用到的是控件的move()函 ......
侧边 界面设计 界面

Flutter异常监控 - 伍 | 关于异常监控框架设计的思考

前言 最近阅读 Catcher、BugSnag、Rollbar 三个 Flutter 异常监控开源框架,文章链接如下: Flutter 异常监控 - 壹 | 从 Zone 说起 Flutter 异常监控 - 贰 | 框架 Catcher 原理分析 Flutter 异常监控 - 叁 | 从 bugsn ......
框架 Flutter

一个想活得简单的程序猿的2022年终总结!

前言 今年的总结相比以往来说,可写的太少了,但看到我17年开始写的年终总结,已定下每年写下的承诺,因此即便可写的不多,但是还是写下吧,毕竟又过了一年,总有东西会留下! 今年事件 疫情 这是今年绕不过去的一个事情,经历了各种核酸检测,各种封控,最终突然而来的全面放开进行的全民免疫。这一块也避免不了感染 ......
程序 2022

Java程序员用代码,计算最大公约数和最小公倍数

作者:小傅哥 博客:https://bugstack.cn 源码:https://github.com/fuzhengwei/java-algorithms 沉淀、分享、成长,让自己和他人都能有所收获!😄 一、前言 嘿,小傅哥怎么突然讲到最大公约数了? 这么想你肯定是没有好好阅读前面章节中小傅哥讲 ......

如何优雅地校验后端接口数据,不做前端背锅侠

背景 最近新接手了一批项目,还没来得及接新需求,一大堆bug就接踵而至,仔细一看,应该返回数组的字段返回了 null,或者没有返回,甚至返回了字符串 "null"??? 这我能忍?我立刻截图发到群里,用红框加大加粗重点标出。后端同学也积极响应,答应改正。 第二天,同样的事情又在其他的项目上演,我只是 ......
前端 数据

一文读懂 Kubernetes 存储设计

在 Docker 的设计中,容器内的文件是临时存放的,并且随着容器的删除,容器内部的数据也会一同被清空。不过,我们可以通过在 docker run 启动容器时,使用 --volume/-v 参数来指定挂载卷,这样就能够将容器内部的路径挂载到主机,后续在容器内部存放数据时会就被同步到被挂载的主机路径中 ......
Kubernetes

回顾2022,展望2023,一个普通98年程序员的自述和分享

一、前言 第一次记录自己的年度总结,一直想写,不知从何写起;其实也是自己这两年来了解到的东西,分享给大家,虽然是个井底之蛙,但是也要勇于说出自己的看法,欢迎大佬指导哈。可能自己语言功底太差,这也是小编一直写博客的动力,锻炼自己的写作能力! 本次主要来说一下小编对于Java后端开发人员的一些见解哈! ......
程序员 程序 2022 2023

设计模式之单例模式

本文已经收录到Github仓库,该仓库包含计算机基础、Java基础、多线程、JVM、数据库、Redis、Spring、Mybatis、SpringMVC、SpringBoot、分布式、微服务、设计模式、架构、校招社招分享等核心知识点,欢迎star~ Github地址:https://github.c ......
模式 设计模式

【译】15 个有用的 JavaScript 技巧

原文地址:https://javascript.plainenglish.io/15-useful-javascript-tips-814eeba1f4fd 1)数字分隔符 为了提高数字的可读性,可以使用下划线作为分隔符。 const largeNumber = 1_000_000_000; con ......
JavaScript 有用 技巧

使用gm/ID方法设计二级运算放大器

1 设计指标 运算放大器采用图1所示的电路结构,电路中的电流源均采用共源共栅结构,可以获得较高的共模抑制比和电流复制精度。其性能指标为增益带宽积GBW=100MHz,负载电容CL=2pF。本设计采用的工艺库中NMOS的最小沟道长度为0.5μm,PMOS的最小沟道长度为0.55μm。 图1 二级运算放 ......
运算放大器 放大器 方法 gm ID

面对集中式缓存实现上的挑战,Redis交出的是何种答卷?聊聊Redis在分布式方面的能力设计

对于一个集中式缓存的分布式能力构建,必须要额外提供一些机制,来保障数据在各个节点上的安全与一致性。本文以Redis为代表,看下集Redis面对上述问题交出的是怎样一份答卷。 ......
Redis 答卷 分布式 缓存 方面