🌓

几种消除 if/else 的方式

随着项目的越来越复杂,条件分支越来越多,代码充斥着大量的if/else和switch/case判断,甚至是多层嵌套的if/else,我们需要重新重构或者组织逻辑代码。 先看随手写的一个根据渠道类型推送消息例子。 123456public boolean pushByType(String type, String msg) &#...

Read More

系统迁移与引导修复

笔记本硬盘组成: 一个128G固态硬盘(C盘Windows10) + 一个1T 固态硬盘(D盘 + Ubuntu20.04) 想把128G硬盘拿出来装到台式机单独装一个测试环境。 迁移使用傲梅分区助手或者DiskGenius拆分D盘,腾出120G新分区用于迁移Windows。 使用傲梅分区助手的克隆系统功能将Windows克隆到新分区。 重启进BIOS调整启...

Read More

The Last of Us Part II

May Your Survival Be Long. May Your Death Be Swift. 美末2发售后不久就买了,但一直没玩,直到昨天才把游戏通关了。这个游戏在网络上备受争议,媒体和玩家的评价两级分化,很多玩家都给出差评,不满前作人物的死亡、角色的刻画、政治正确的元素和剧情。这些负面评价也是我买了游戏迟迟没玩的原因,但当现在一切都平静下来...

Read More

笔记应用选择和知识管理

开发人员在职业生涯会学习许多技术和技能,随着知识积累越多,复杂度越大,就容易觉得知识体系很混乱。所以就需要我们做笔记,构建自己的知识体系,而且由于各种编程语言和技术之间本身也有共通的地方,做好归纳和关联更有利于我们快速学习新的技术。 现在网络上有许许多多的笔记应用和管理工具,相关的讨论也非常多,在v2ex搜索笔记应用的帖子多达六千条记录,网友们分享了许多的...

Read More

疫情封城需要储备什么物资

最近上过网的都看到了上海的疫情负面新闻有多离谱,一个城市某些部件一旦停止运转,造成的结果将是灾难性的,而且这种这么荒唐的事情是发生在上海这样一个超一线城市,属实让人惊呆了。 那么作为一个普通人该如果应对这种情况呢,中国大陆一直奉行着动态清零的政策,短期内政策是不会变化的,在自己的城市出现上海这种情况也不是不可能。我们这里不讨论政策的好坏,只说在国内如果碰到了...

Read More

再探枚举类Enum

枚举类是 Java 很常见的类了,最近在推上看到一个很有意思的枚举用法,加上执行开发中碰到的枚举的一些问题,这里记录一下。 枚举定义和使用场景枚举是一个被命名的整形常数的集合。在 Java 中,描述抽象的事物外面用类和接口,但有些特殊的类的属性是一组固定的常数集合,那么就可以用枚举来表示,典型的例子比如星期有周日到周一,人类的性别有男女...嗯,如果见过国外...

Read More

播客

播客其实是一种诞生很久的数字媒体了,但相比于各类视频媒体尤其是短视频,显得比较小众,经常用的人好像不多。 一开始听到播客这东西的时候,还以为是“博客”的口误,后来真正接触到也是第一次用 Iphone 的时候。Iphone 默认安装就有一个播客应用,印象中在以前很长一段时间里面的中文内容都很溃泛,最近这些年中文播客发展较快,最近重新用上 Iphone 看到中文...

Read More

Python 中的协程

协程很久之前就知道这东西,但是 Java 没有,也就没怎么去了解,最近在学 Python 看到协程,做个记录。 概念说到协程一般都会联系到进程和线程,通常请款下这三者的比较如下: 进程:程序执行的一个实例,一个进程最少包含一个线程,不同进程之间的切换代价大; 线程:CPU 调度的基本单位,进程的一个实体,线程的上下文切换代价比进程小; 协程:是一种用户态的...

Read More

把 Tiddlywiki 整合到 Hexo 中一起部署

最近在找一款 wiki 用来记录一些系统化的知识和笔记,发现了 TiddlyWiki 这个东西。TiddlyWiki 是一个仅由单个 HTML 文件组成的非网络应用的 Wiki 程序,不依赖数据库存储数据,非常有特色,能装插件,玩法也比较多。 后来想到既然最后发布到互联网都是静态文件,那就放到 Hexo 一起部署好了,不需要再搞一个服务来放 TiddlyWi...

Read More

Redis systemd 服务和 daemon no 配置的冲突问题

Ubuntu 虚拟机安装 Reis,sudo apt install redis -y。 然后照着以前的经验修改了配置文件/etc/redis/redis.conf,关闭保护模式,设置守护线程,去掉外网访问限制: 123456789101112131415161718# By default protected mode is enabled. You sh...

Read More

Setup your own KMS server

I have setup a KMS server on my CentOS VPS, it allows me to significantly simply the process of activating Microsoft products on the corporate network. Here are the installation st...

Read More

升级一下 Hexo

GitHub 提醒 Hexo 有一个安全问题 CVE-2021-25987,需要升级到最新版本。 把 package.json 修改 Hexo 版本为 6.0.0,推送看 GitHub Action 任务,有错误: 123INFO Validating configWARN Deprecated config detected: "extern...

Read More

2021年终总结

一直以来我都懒得写年终总结,因为之前在公司上班的时候大多时候过得浑浑噩噩,一年下来都想不到有什么好说的事情,今年有充分的时间做自己想做的事情,思考更多的问题,所以有一些东西可以写下来,内容不局限于2021年,会包括2020的下半年,不以线性时间而是按照分类来写。 2020 年从待了近三年的公司离职之后玩了几个月,在11月入职了在信息港一家公司一个多月后又离职...

Read More

痤疮治疗经历

从中学时期开始,鼻子上和脸颊经常长囊肿类型的痤疮,高中的时候最严重。大学毕业后长得比较少了,但是偶尔还是会长一两个,鼻子一直红红的疤痕不会消退,而且很油,脸和头发都很油,鼻子上的毛孔很大,脸颊也差不多。 治疗做过许多弯路,吃过很多种药,用过许多护肤品都没有效果。后来才知道异维A酸胶囊这种东西,既便宜治疗囊肿痤疮效果明显,真是相见恨晚,早点知道这药也不至于脸烂...

Read More

虚拟机环境配置备忘

准备 Oracle VM VirtualBox ubuntu-20.04.2-live-server-amd64.iso 系统安装CPU 核心根据物理机核心数拉满,待会需要装软件能更快些 存储不用分区了,感觉虚拟机分区没啥意义,需要扩容的时候反而麻烦。 软件源换成国内比较快的源,比如阿里(http://mirrors.aliyun.com/ubuntu/ ...

Read More

加内存

自用笔记本日常使用开几十上百个 chrome 标签页,多个 IDEA 工程,虚拟机测试环境,加上几个 Electron 应用,16G 内存很容易就被占满,有时已经不支持 IDEA 开多个工程了。经常是要关闭一些应用以此释放内存才能够打开其他应用,没法做到应用常驻,需要的时候可以无缝切换。 双11的时候把原来的2x8G内存换成了2x16G,初步实现了内存自由,...

Read More

松下 DMC-LX10 卡片机

很久之前就想拥有一台相机,但当有钱之后一段时间内都没考虑去买。普通相机并不便宜,即便便宜的相机在一般场景使用并没有比手机好多少,在一加7摄像头刮花之后才有欲望入手一台便携相机,出门能装装样子,拍几张照。结果后面发现手机那只是外面的套刮花了,能淘宝换壳解决,不过也不后悔买了相机。 因为并不是真的想深入玩摄影,单反相机一般又大又贵,买一台便宜卡片机就成为我的选择...

Read More

【转载】Why Java's Records Are Better Than Lombok's @Data and Kotlin's Data Classes

原文链接:https://nipafx.dev/java-record-semantics/ While all three remove boilerplate, the similarities don't go much further. Records have stronger semantics with important downst...

Read More

从 Java8 到 Java11 再到 Java17 的新特性(3)

2021年9月14日甲骨文正式发布 Java 17,这是继 Java11 之后的又一个 LTS 版本,而且 Oracle 开始提供免费使用的许可证,并在下一个 LTS 版本之后继续提供整整一年。所以还是有限制的,一般我们都用 OpenJDK 得了,来看看 Java12 到 17 提供了哪些新的语言特性和 API。 本文源码地址:code-note 1. Sw...

Read More

从 Java8 到 Java11 再到 Java17 的新特性(2)

2018年9月26日,Oracle 官方宣布 Java 11 正式发布,这是自 Java8 之后 Java 大版本周期变化后的第一个长期支持版本。这篇介绍的是 Java9 到 Java11 累积的一些新特性,只涉及语法和编码上的功能,其他的如工具和虚拟机改进不涉及。 本文源码地址:code-note 1. 接口接口允许有私有方法 12345678910111...

Read More