诫己
尺有所短,寸有所长;取长补短,相得益彰。
  聆听音乐
  推荐文章
Linux

2019 年 9 月 6 日魔都上海静安考红帽 rhcsa、rhce 记录

习武之人,不怕练千万招,就怕一招练千万遍!此篇文章记录了本人考红帽 RHCSA 和 RHCE 时的考题内容,仅供大家参考。祝大家考试顺利!

阅读更多
Go

Go Modules 模式

Go Modules 模式GOPATH 目录GOPATH 目录下一共包含三个子目录: bin:存储所编译生成的二进制文件。 pkg:存储预

阅读更多
开源

hexo-blog 博客开源

折腾了个把星期左右,终于把博客改的有点儿样子了,秉承着开源精神,现在把博客源码开源出来。如果你也想拥有和我一摸一样的博客,那么赶紧来试试吧!如果你喜欢,请记得给个 Star!

阅读更多
科普

不花一分钱也可以用上 JetBrains 正版全家桶

昨天,发现正在使用的 idea 要到期了,于是自己得马上去续约,免得影响自己的工作。 其实,我体验过不少的编辑器,Notepad++、Sub

阅读更多
开源

打造个性化的 GitHub 主页,让别人看了眼前一亮!

打造个性化的 GitHub 主页,让别人看了眼前一亮! 首先可以看一下我的 GitHub 首页 如何构建属于自己个性化的 GitHu

阅读更多
Pay

简单易用且优雅的跨境支付 PHP SDK 扩展包

操作简单易用,代码优雅,支持蚂蚁花呗分期,支付宝各平台跨境支付的 PHP SDK 扩展包,有良好的在线文档。

阅读更多
Go 语言里判断字符串为空,90% 的人都写错了! Go 语言里判断字符串为空,90% 的人都写错了!
在 Go 语言中,字符串 len == 0 和字符串等于空字符串 "",到底该用哪个? 在日常开发中,这个问题几乎每个 Go 开发者都会遇到: if len(s) == 0 { // ... } 和 if s == "" {
2026-07-01
Go 进阶必修:90% 的人都没用对的“表驱动法” Go 进阶必修:90% 的人都没用对的“表驱动法”
作为一名开发者,在日常工作中,我们最常面对的可能不是复杂的算法,而是复杂多变的业务逻辑。 是不是经常遇到这种场景:产品经理跑过来说,“我们要接一个新的支付渠道”,或者“针对 VIP 用户加一个新的折扣逻辑”。你打开代码一看,好家伙,原来的代
2026-07-01
你知道 Go 结构体和结构体指针调用的区别吗?一文带你彻底搞懂! 你知道 Go 结构体和结构体指针调用的区别吗?一文带你彻底搞懂!
前几天在技术群里看到有小伙伴问了一个经典问题:**”Go 结构体方法调用时,什么时候用值接收器,什么时候用指针接收器?”** 虽然这是个老生常谈的话题,但是,我发现很多同学(包括工作几年的)对此还是一知半解。正好最近在梳理 Go 基础知识,
2026-06-29
面试官问“装饰器模式”,这样回答薪资多要 3000! 面试官问“装饰器模式”,这样回答薪资多要 3000!
最近在 Code Review 的时候,看到某同事写代码,那叫一个“继承满天飞”。为了给一个核心类增加不同的功能,他硬生生造出了十几个子类。看着那像族谱一样庞大的类继承树,我手里的咖啡瞬间就不香了。 很多初学者(甚至老手)在面对 “如何在不
2026-06-29
Celery 太重了?这可能是你一直在找的 asyncio 任务队列 Celery 太重了?这可能是你一直在找的 asyncio 任务队列
你是否在配置 Celery 时,被复杂的 Broker、Backend、Worker 搞得头皮发麻?你是否在 Python async/await 的世界里,发现老牌的任务队列总是显得“格格不入”? 在 Python 异步编程(Asynch
2026-05-18
Python 统一大业:uv 如何整合 Pip、Pyenv 和 Venv? Python 统一大业:uv 如何整合 Pip、Pyenv 和 Venv?
Python 的包管理一直是个让开发者“又爱又恨”的话题。从 pip 到 virtualenv,再到 poetry、conda、pdm,工具层出不穷,但似乎总觉得“差点意思”——要么慢,要么依赖冲突让人头秃。 最近,Python 圈子杀出了
2026-05-18
再见 pip!Rust 写的 uv 正在把 Python 包管理按在地上摩擦 再见 pip!Rust 写的 uv 正在把 Python 包管理按在地上摩擦
如果你问,作为一名 Python 开发者,平时最让你头疼的事情是什么? 我相信 90% 的兄弟都会回答:依赖管理和环境配置。 这就是我们的日常: pip install 慢得像蜗牛,看着进度条发呆。 接手一个老项目,requirement
2026-05-18
Python 装饰器很难?那是你没看到这篇文章! Python 装饰器很难?那是你没看到这篇文章!
大家好,我是 Alex。很多小伙伴在学习 Python 时,都有一座很多初学者觉得难以翻越的大山,那就是 **装饰器 (Decorator)**。 每当你看到代码里那个神秘的 @ 符号,是不是总觉得心里没底?面试官问你“什么是闭包,什么是装
2026-05-18
Redis有1亿个Key,如何优雅地找出特定前缀的那10万条? Redis有1亿个Key,如何优雅地找出特定前缀的那10万条?
Redis 是每一位后端工程师最熟悉的中间件之一。它轻量、高效、灵活,几乎是现代高并发系统中最常见的缓存组件。 可当业务规模上来之后,Redis 的简单世界也不再简单。有一天你可能突然接到一个看似普通的需求: 「我们的 Redis 里大概
2026-05-18
程序员常犯的坑:别再用 VARCHAR 存 IP 了!用对方式,性能何止提升10倍! 程序员常犯的坑:别再用 VARCHAR 存 IP 了!用对方式,性能何止提升10倍!
当我们在使用 MySQL 设计表结构的时候都会遇到一个经典问题:“如果要存 IP 地址,到底该用什么数据类型?” 别小看这个问题,如果存储方式选错了,未来不仅浪费空间,还可能导致查询性能低下。今天我就带你一步一步搞懂如何在 MySQL 里优
2026-05-18
别再死记硬背了!一文扒光 I/O 多路复用的底裤(Epoll/Select/Poll) 别再死记硬背了!一文扒光 I/O 多路复用的底裤(Epoll/Select/Poll)
每次面试聊到高并发,面试官总喜欢似笑非笑地问一句:“兄弟,聊聊 I/O 多路复用呗?” 如果你只能干巴巴地背出“select、poll、epoll 的区别是底层数据结构不同”,那基本就已经在淘汰边缘疯狂试探了。 今天,咱们不搞虚的,直接把
2026-04-29
90%的人都不知道:Docker 容器 apt 报错 404 的幕后黑手竟是它! 90%的人都不知道:Docker 容器 apt 报错 404 的幕后黑手竟是它!
大家有没有遇到过这样的情况:你准备在本地跑某个开源项目,你找到了这个开源项目的镜像名称,也将这个镜像 docker pull 下来了,但是在运行的过程中,你发现容器中需要安装某些软件才能够继续…… 本来以为可以通过简单的安装命令即可安装好软
2026-04-29
1 / 23