Skip to main content

2023 Forward 之 投资理财

· 16 min read

本文是第二篇,投资理财。

2022 Review

先来回顾一下 2022 年的 A 股市场表现,A 股全年基本上是个 W 型走势,上证指数围绕着 3000 点上蹿下跳。债市方面,震荡向上,后在 11 月份遇到破净潮,遭遇大幅下跌。A 股整体而言,行业轮动很快,表现最好的是煤炭,连涨三年了,去年的基金冠军,基本上都是重仓煤炭行业的。

tFCS4A

放眼全球,海外市场通胀高烧不退,全球央行加息总的超过百次。股市普跌,商品、美元上涨。

iOS APNS 推送服务接入问题汇总

· 8 min read

在开发 iOS 应用时,推送通知是与用户保持联系的关键功能。然而,在接入苹果的 APNS(Apple Push Notification Service)时,可能会遇到各种技术挑战。以下是一些常见的 APNS 推送服务接入问题及其解决方案。

C 语言的高阶函数

· 16 min read

什么是高阶函数?

这个概念来自于函数式编程,高阶函数是指至少支持以下特定之一的函数:

  • 将一个或多个函数作为参数
  • 返回函数作为其结果

现代的高级语言几乎都支持这一特性,如 Go、JavaScript、Swift、Kotlin 等。

C 语言本身不支持高阶函数,但是可以通过函数指针来达到这一效果。

iPhone 14 系列屏幕尺寸变化

· 6 min read

本次发布会总共 4 款 iPhone:基础款 iPhone 14,加大基础款 iPhone 14 Plus,Pro 款 iPhone 14 Pro,加大 Pro 款 iPhone 14 Pro Max。

Docker部署 Ghost 博客

· 7 min read

Ghost 官方并没有提供 docker 镜像,是社区制作的。

本次实验环境为:

  • VPS: 2 核 CPU,4G 内存,8M 宽带

  • Linux: Ubuntu Server 20.04

  • Docker: v20.x

  • Ghost: 5.x

Docker Compose 配置

Ghost 支持两种数据库,本地开发默认 SQLite,Release 默认是 MariaDB。MariaDB 是 MySQL 的一个分支,完全兼容 MySQL。

本次部署采用 MariaDB,先创建一个空目录/home/ghost-blog,然后在ghost-blog创建一个docker-compose.yml文件。

【译】Swift/OC/C++/Rust/Vale 等编程语言的弱引用实现

· 18 min read

本文翻译自 Vale 核心团队的 Blog,Vale 是一门全新的编程语言,特点是快速、安全、简单。

弱引用本身就很奇怪,本文是收集了一些常见的编程语言对弱引用的实现方法。我们的目标是找到最佳方法用于 Vale,以符合其快速、内存安全和易于使用的目标。最后,我们制定了一个全新方法。

弱引用有什么用?

大部分共享所有权的编程语言中,如 Python、Swift、Obj-C、C#,正常的引用是"strong"的,即我们常说的强引用。只要还有一个强引用指向对象,那么对象就不能被释放。当最后一个强引用消失之后,对象被释放。

在引用计数的语言里,如 Swift,当不再有强引用指向对象时,能够立即通知删除对象。在跟踪垃圾回收的语言里,如 Java,解释器会通过事件的方式通知删除对象。

相对于强引用,我们还有弱引用,类似于一个快捷方式或者软链接一样,不会对对象进行保活。目标对象被释放时,他们会变成 null。

我们知道强引用容易触发“循环引用”的问题,导致对象无法被释放,最终内存泄漏。这时我们可以引入弱引用打破这个循环,例如 Swift 里面的[weak self]。我们还可以通过弱引用来判断一个变量是否还存在,如果存在还可以继续后面的逻辑。

为什么学那么多没用的编程语言?

· 3 min read

今年是 Rust 大年,发展非常迅速,也是今年要重点学习的一门编程语言,但是因工作过于繁忙,遂搁置一边。

上半年只看了一个 star 只有 900 多的超小众实验性编程语言 Vale,我学了能干嘛呢?P 用没有!