前言 用了这么多年的IDEA,也用过不少IDEA插件,在2021年就开始学习了一下IDEA插件开发,但是用得都不是太深,今年2023年,刚好工作需要,深入研究了IDEA插件的开发,踩了不少的坑,后续将会把相关经验和材料整理发出来。 这篇文章原本写于2022年,DEA是2021版本,主要是进行IDEA
ByteBuddy 简介 字节码增强技术-ASM 字节码增强技术-Javassist 前面我们了解了字节码增强技术的ASM与Javassist,今天我们看下另一个高效类库ByteBuddy。 ByteBuddy 是一个开源的 Java 字节码操作库,由 Rafael Winterhalter 创建并
摘要 在Java编程中,字符串的拼接是一项常见的操作。为了有效地处理字符串的拼接需求,Java提供了两个主要的类:StringBuilder和StringBuffer。尽管它们都是可变的字符串容器,但在一些关键方面有所不同。以下主要根据现场安全以及性能方面进行分析: 线程安全性 StringBuff
概述 在这个Go语言基础教程中,我们将深入探讨Go语言的各种基本值类型以及如何进行基本的运算操作。通过这些简单的例子,你将能够更好地理解Go语言的基础概念。 内容 1. 字符串连接 首先,我们来看看如何在Go语言中连接字符串。打开你的文本编辑器,创建一个新文件values.go,并将以下代码复制进去
关注wx:CodingTechWork 引言 在代码开发过程中,发现很多地方通过RestTemplate调用了第三方接口,而第三方接口需要根据某些状态码或者异常进行重试调用,此时,要么在每个调用的地方进行异常捕获,然后重试;要么在封装的RestTemplate工具类中进行统一异常捕获和封装。当然
【云原生•监控】Micrometer打造SpringBoot服务的可观测能力 概述 「近两年随着云原生微服务的流行,可观测性概念火热起来受到大家的追捧。微服务将一个系统拆分成多个服务,云原生给基础设施层带来的变革进行降本增效,可以看到一个相对简单的单体系统已经变得非常复杂,想要了解下内部运行健康状况
【云原生•监控】基于Prometheus实现自定义指标弹性伸缩(HPA) 什么是弹性伸缩 「Autoscaling即弹性伸缩,是Kubernetes中的一种非常核心的功能,它可以根据给定的指标(例如 CPU 或内存)自动缩放Pod副本,从而可以更好地管理和利用计算资源,提高系统的可用性和性能,同时减
背景 最近发现打开电脑的excel很慢,而且使用到的场景很少,也因为mac自带了预览的功能。但是shigen就是闲不住,想自己搞一个excel预览软件,于是在一番技术选型之后,我决定使用python在控制台显示excel的内容。 具体的需要的功能有: 查看excel的某一行信息 查看某个范围的信息
问题介绍 在日常的开发过程中,我们不可避免地会使用到 JDK8 之前的 Date 类,在格式化日期或解析日期时就需要用到 SimpleDateFormat 类,但由于该类并不是线程安全的,所以我们常发现对该类的不恰当使用会导致日期解析异常,从而影响线上服务可用率。 以下是对 SimpleDateFo
1.前言 emm,翻了一下之前刚入职时候的学习笔记,发现之前在熟悉业务代码的时候曾经专门学习并整理过过设计模式中的责任链模式,之前只是对其简单了解过常用的设计模式有哪些,并未结合实例和源码深入对其探究,利用熟悉代码契机进行系统学习并整理文档如下。 2.什么是责任链模式? 俗话说没有规矩不成方圆
前段时间在这个视频中分享了 github.com/bregman-ari… 这个知识仓库。 这次继续分享里面的内容,本次主要以 k8s 相关的问题为主。 k8s 是什么,为什么企业选择使用它 k8s 是一个开源应用,给用户提供了管理、部署、扩展容器的能力,以下几个例子更容易理解: 你可以将容器
1、鸭子类型“当看到一只鸟走起来像鸭子、游泳起来像鸭子、叫起来也像鸭子,那么这只鸟就可以被称为鸭子。” 这是百科上对它的解释。鸭子类型(duck typing)是动态类型的一种风格,鸭子类型对于 Python 编码来讲非常重要,理解它能让你真正理解什么是一切皆对象,更有助于我们理解这门语言的设计思想
1、可切片对象切片大家都很熟悉,在 Python 基础里面是必学的,对列表使用中括号取值,正切、反切、加步长等都没问题,这里我们主要讲怎么实现一个可切片对象。隆重请出魔法函数:__getitem__ ,它是我们实现可切片对象的关键。class AutoTest: def __init__(
1、变量到底是什么在 Python 中变量到底是什么,有一个比喻我觉得非常好,变量就像便利贴。为什么这么讲,我们定义一个数据,比如定义一个字符串或者整数,在内存中都会分配一个空间来保存,这个内存空间相当于一个小盒子,我们使用等号将这个数据赋值给一个变量时,实际上就像用便利贴贴到这个小盒子上,便利贴上
1、动态属性和属性描述符有些同学可能知道 @property ,它的主要用于将一个方法变成属性,访问的时候直接通过名称访问,不需要加括号。注意加了 @property 函数不能有参数,你想嘛,人家调用的时候都不用括号,怎么传参,对吧。举个小例子:class Mikigo: @propert
1、迭代协议迭代就是可以使用循环将数据挨个挨个取出来,这个好理解是吧,比如,咱们常见的对一个列表进行迭代:for i in [1, 2, 3]: print(i) 结果不用讲肯定是挨着取出列表里面的数字了。那列表里面究竟是实现了什么协议,或者说一个对象实现什么魔法函数就可以迭代呢,这就是迭代
高阶函数是通过组合简单函数成一个复杂表达式的函数。你可以理解成,函数套函数。函数式编程是一种编程范式,这部分内容可以体现 Python 在函数式编程上的应用。1、lambda匿名函数(lambda),这个函数没有函数名,用于一行创建一个函数,并返回一个函数对象,也是一种语法糖。定义一个匿名函数,功能
需求我打算带着实际的需求来看待装饰器,这样也会更加容易理解。这道题目也是stackoverflow上的一个问题,我觉得很有意思,所以就拿来做例子。@make_bold @make_italic def say(): return "Hello" 运行say()将返回:Hello 简单实现# -
AICube 开放GPT-4给大家使用以及AI工具助手,可以简化大家生图的的prompt。布局是中大型网站或应用的基础。假设你正在创建一个网页应用,它包括主页、营销页面和应用页面:希望主页拥有独特的布局希望您的营销页面有侧边栏或其他任何东西希望您的应用页面具有常见的元素,如警告消息、错误消息、特定的
本文来聊一聊前端整洁架构。首先,总体了解什么是"整洁架构",并熟悉领域、用例和应用层等概念。然后,讨论它如何应用于前端,以及它是否值得使用。然后,按照整洁架构的规则设计一个商店应用,并从头开始设计一个用例,看看它是否可用。这个应用使用 React、TypeScript 编写,编写过程中会考虑可测试性