详情

全站展示位

Go语言泛型函数 mock 原理

Go语言实现猴子补丁系列又有更新了。这一次跟大家分享泛型函数的打桩原理。。。。

推荐

Go语言泛型函数 mock 原理

Go语言实现猴子补丁系列又有更新了。这一次跟大家分享泛型函数的打桩原理。

Go语言没有内置错误处理机制

本文是Go语言错误处理系列文章的第二篇。我在上文指出错误处理的本质是流程控制,并系统地介绍了Go语言的流程控制语句。今天就来介绍一下Go语言内置的错误处理机制。其实Go语言压根就没有内容什么错误处理机制,而是把错误处理的包袱甩给了程序员。请容我细细道来。

深入理解 Git

讲 Git 的书有不少,我看过最好的一本书叫Git Internals。里面第二章 Understand Git 讲了一部分 Git 的基础概念,但很快就陷入流俗,开始罗列命令。强记命令不但让学习毫无趣味,还可能在实际使用中误用命令导致各种麻烦。我一直在思考如何才能高效的掌握 Git。现在把这些思考整理成文供大家参考。

解密 TTY 设备

终于找到一篇把 TTY 系统讲透的文章了。联系作者拿到了翻译授权。现在分享给大家。以下是原文。

心灵鸡汤

  唐朝贞元年间,著名诗人白居易考中进士后,被派往陕西周至当县令。

  他刚上任,城西的赵乡绅和李财主就为争夺一块地跑到县衙打官司。为了能打赢官司,赵乡绅差人买了一条大鲤鱼,在鱼肚中塞满银子送到县衙。而李财主则命长工从田里挑了个大西瓜,掏出瓜瓤,也塞满银子送了来。收到两份“重礼”后,白居易吩咐手下贴出告示,明天公开审案。

  第2天,县衙门外挤满了看热闹的百姓。白居易升堂后问道:“你们哪个先讲”赵乡绅抢着说:“大人,我的理(鲤)长,我先讲。”李财主也不甘示弱说:“我的理(瓜)大,该我先讲。”白居易沉下脸说:“什么理长理大成何体统!”赵乡绅以为县太爷忘了自我送的礼,连忙说:“大人息怒,小人是个愚(鱼)民啊!”白居易微微一笑说:“本官耳聪目明,用不着你们旁敲侧击,更不喜欢有人暗通关节。来人,把贿赂之物取来示众。”

  衙役取来鲤鱼和西瓜,当众抖出银子,听审者一片哗然。白居易厉声喝道:“大胆刁民,胆敢公然贿赂本官,按大唐律法各打40大板!”众百姓无不拍手称快。至于这些的'银子,白居易就用来救济贫苦百姓了。

列表展示

主站展示位

Nginx 配置快速入门

今天面向初学者分享一篇 Nginx 配置的入门材料。Nginx 安装之后附带的 nginx.conf 篇幅较长,令人望而生畏。初学者限于自身经验不足,很难分清重点。今天我尝试抛开默认配置,从最小的配置出发,带领大家学习从静态 Web 站点到动态 API 网关等各类功能配置。希望能给大家带来一些启发。如果有问题或者想法,欢迎留言讨论。

国行索尼电视安装 YouTube

2024年元旦假期总共休了五天,完成了很多拖了很久的小心愿。其中之是让家里的索尼电视国行版用上了 YouTube。孩子们从此再也不需要忍受电脑的小屏幕了。讲真在国内环境下,要想能在电视上用 YouTube,还真得花一番功夫。今天把自己的方案梳理出来,分享给大家。虽然我家是索尼电视,但本文的大部分内容都跟电视机型无关,请放心食用。

Outlook/Hotmail is no longer blocking my mail server

After some struggle, I managed to de-list the address of my mail server from Microsoft’s blocklist. Here is some experiences may help you.

Go语言基准测试

基准测试英文关键词 benchmark,主要用于测试 CPU 和内存使用效率。配合一定的工具,还能直观地展示出代码优化的效果。因为跟性能相关,有时候也叫性能测试。Go语言内置基准测试工具包,使用非常方便。建议所有Go开发者都能熟练使用。

使用递归实现正则匹配

很久之前就读到 Brain 的文章,讲怎么写优雅的代码。作者在文中讲了 Rob Pike 的故事,Rob 用一个多小时的时间实现了一个简的的正则匹配函数, 所有代码加上注释也才三十多行。Rob 的实现不但简洁而优雅,而且还充分展示了递归函数和指针的强大魅力。今天就结合自己的理解分享给大家。

为什么要备案?

最近政府布告天下,从事互联网信息服务的 App 需要备案才能上架。这个应用备案就是从网站备案或者 ICP 备案发展而来的。今天就来聊聊备案这个话题。

Oracle 云主机开通 25 号 SMTP 端口

我在七月份成功注册 Oracle 云账户并创建一台 x86 虚拟主机,永久免费。本不想凑这个热闹,但我的服务商年底下架免费邮件服务,所以想用 Oracle 云主机做邮件服务器。注册后才发现 Oracle 默认屏蔽 25 号端口,得工单才能开通。但是永久免费账号不能提工单。快就年底了,邮件服务必须迁移。这两天就折腾了一把,成功给 Oracle 云主机开通了 25 号端口。

纪念陈皓(左耳朵耗子)

昨天惊悉知名IT技术人士陈皓(左耳朵耗子)于13号突发心梗不幸辞世,享年四十七岁。四十不惑,五十知天命。这可能是人生最好的阶段,他也在这个阶段收获了知识、技能、家庭、财富和名望。但所有的一切突然就化作云烟随风飘散。生命是一,其他的都是零。

电子邮件系统中的 DNS 记录

最近要搭建个人电子邮件系统,正在系统学习相关的知识。今天分享与 DNS 相关的内容。

如何优雅地绘制电路图

最近整理学习笔记时需要画数字电路图。幸亏之前给博客系统开发了对应的功能,可以在 Markdown 中使用 LaTeX 的宏包来绘图。简单学习了一把,发现 LaTeX 可以绘制非常精美的电路图,这让我的文章增色不少。今天就给大家简要介绍一下绘图方法,希望能帮大家快速入门。

简述计算机启动过程

我到了小学六年级才第一次见到计算机。当时最令我惊讶不解的是它需要很长的启动过程。启动时会在屏幕上滚动显示各种不认识的字母。上大学以后,因为不是计算机科班,只学了操作系统和编程语言,并没有系统的学习计算机组成原理。工作之后更是鲜少需要用到相关知识。所以到现在对这个问题的理解还很模糊。最近读到 Hackman 的文章,简明介绍了早期计算机硬件的启动过程,虽然有点过时,但基本原理跟现代 CPU 还是相通的。今天把学习笔记分享给大家。

注册 Oracle 永久免费虚拟主机

Oracle Cloud 推出永久免费套餐也有两三年了。我就一张招行信用卡,老是注册失败。但很多朋友都成功了,甚至还有催生出卖号之类的灰产。今天看到有人通过 5G 网络成功注册。我也就试了一下,没想到也成功了。在此大家分享注册过程。

Punycode 编码

DNS 最早由美国人 Jon Postel 等人设计,所以仅支持 ASCII 编码。但很快互联网就扩展到欧洲和世界其他地区。人们希望能够使用自己的本地语言表示 DNS 域名。但同时又必须兼容已经部署和运行的 DNS 软件系统,所以就得设计一种用 ASCII 编码来表示世界上所有不同语言文字的编码规则,这就是 Punycode 编码。我们的中文域名用的也是这种编码。这么重要的编码技术,中文互联网上几乎没有详细的资料介绍。于是只能硬啃它的 RFC 文档,今天把学习成果分享给大家。

在 Markdown 中优雅绘图

我一直用自研的博客系统。因为是自研,只实现了核心功能。像绘图功能,特指矢量图,就没有支持。技术文章在很多地方都需要添加示意图。现在只能先用外部软任绘图,再生成图片,最后上传到博客并在原文引用。这种办法不但将绘图跟写作分割开来,更大的问题是后期修改的流程也非常繁琐。所以我尽量使用 ASCII 字符 + 代码块的方式绘制示意图,方便后续修改。到现在基础功能已经稳定,为了让文章更加出彩,是时候实现绘图功能了。今天跟大家分享基于 pandoc 的 lua-filter 实现在 Markdown 中直接绘制 SVG 矢量图。

个人网站支付宝收款

个人微创业最大的问题就是收款。但如果不注册公司或者个体户,就很难接入支付宝或者微信的支付系统。也有一些第三方公司可以通过支付机构的服务商接口为个人开通支付权限。但一方面需要向三方提供个人信息,有隐私风险;另一方面有额外的手续费。经过一番调研,我觉得目前最靠谱的还是支付宝的当面付,可以集成到个人PC/H5网站上。

开发一个简易的电台 PWA 应用

练习英语听力需要听大量的音频。我尝试下载离线资源保存到手机上听。但更新或者扩展内容都不太方便。于是便改听在线广播。很多在线广播就是一个 CDN 链接,对应特定格式的音频文件(MP3、AAC等)。它们完全可以通过 HTML 的<audio>播放。所以我就想做一个 PWA 应用,把合适的广播资源都集成起来方便使用。一番折腾之后,做了一个很简易的版本。今天把开发过程整理出来,分享给大家。今天分享的内容完全基于浏览器标准 API 开发,没有使用 JavaScript 框架,便于初学者入门。前端大佬请轻喷。

一种快速取模算法

最近业务系统使用map[uint64]float64保存某种业务数据,大约有两亿多条,但实际内存占用却将近10个G。团队最终设计了一种自定义数据结构来解决内存消耗问题。在解决问题的过程各我们考查了 SwissTable 这种新哈希表。虽然没能解决我们的问题,却给出了一种新的快速取模的算法,很有启发意义。本文就基于 Daniel 的文章为大家分享这种取模算法。

Linux往事

最近读到 Lars Wirzenius 写的文章,他是 Linus 的同学,参与并见证了 Linux 系统从无到有的历史。想想人家上的大学,再比较一下自己的学生时代,真是让人唏嘘呀。今天把文章编译成中文分享给大家。

博客寄语:

    有朋自远方来,不亦乐乎。

实时播报:

博客号-学习成长

相信每一分耕耘都有每一分收获,致力帮助博客主所创作的博客能更快的被收录! 如果有其它需求,可联系下方邮箱。