BytePower 技术周刊 - 035
📘 封面
4 月 8 日,北美洲发生了日全食,摄影师拍摄到的日食下的海鸟。
📖 文章
Windows 设计史(一):从青涩到成熟(Windows 1.0—95) ☞
在界面设计上,Windows 1.0 最大的特点是采用了平铺窗口,相比之下当时苹果的 Macintosh 则采用的是重叠窗口。对于其背后的原因,历来网上都聚焦于「担心侵权苹果」这一点上。但实际上,早在 1981 年,施乐公司的 PARC 部门就在其 Cedar 项目中采用了平铺窗口设计,微软可能是在研究了施乐的这一项目后做出了这种选择。对此 Scott McGregor 也表示:「Windows 从一开始就具有重叠窗口的功能……反而在此基础上编写平铺管理器的工作量要大得多!」2 网上也有人通过修补 Windows 1.0 的用户界面库实现了重叠窗口。
平铺窗口这一特点也在 Windows 1.0 的 Logo 上得到了体现:Logo 就像是四个平铺在屏幕上的窗口。
兜兜转转几十年后,Windows 的 Logo 又回到了最初的四方格,虽然新 Logo 备受吐槽,但从另一个角度看,也算是回归到「窗口」的本源,可谓是「返璞归真」。
请立即停止编写 Dockerfiles 并使用 docker init ☞
docker init 是一个命令行应用程序,可帮助初始化项目中的 Docker 资源。它根据项目的要求创建 Dockerfiles、docker-compose 文件和 .dockerignore 文件。
这简化了为项目配置 Docker 的过程,节省时间并降低复杂性。
最新版本的 docker init 支持 Go、Python、Node.js、Rust、ASP.NET、PHP 和 Java。目前它只能于 Docker Desktop 一起使用,也就是说大家目前在 Linux 系统中是无法使用 docker init 的。
人人都是架构师-清晰架构 | 京东物流技术团队 ☞
清晰架构集百家之长,天然有很多优势:
- 从外向内,越向内越偏核心原则,核心原则相对稳定。核心原则就是常规的领域层,提供核心能力
- 外层基于核心原则适配不同的业务场景,组装内层的能力。这里的外层就是常规的接口层到应用层,主要使用主动适配器模式,重点关注 BFF(BackendsForFrontends) 及对内层能力的聚合
- 内层不依赖外层,不受业务变化而变化。关注能力的扩展,完成核心策略实现
- 边界明显,尤其是领域层与应用层之间
- CQRS 机制,耦合度低,通过外层组装内层能力动态适配业务变化,扩展性高
Flutter 之原理解析 ☞
UI 系统
- UI 系统是指通过某个平台实现的一套 GUI(图形用户界面) 系统。
- 简单来说用户可以通过 GUI 系统使用鼠标、键盘等硬件设备与操作系统打交道。
- 这里所说的平时指的是操作系统,如 Android、ios 或者 wins、macOS。
- 各个平台 UI 系统的原理是相通的,也就是说无论是 Android 还是 iOS,他们将一个用户界面展示到屏幕的流程是相似的。
📡 技术
Build your own X ☞
通过亲自编写代码实现知名程序来学习,可以尝试构建 Redis, Git 等。
🧰 工具
uv: Python packaging in Rust ☞
TL;DR: uv is an extremely fast Python package installer and resolver, written in Rust, and designed as a drop-in replacement for pip
and pip-tools
workflows.
plandex ☞
Build complex software with AI.
Dropover – 手抖一下,给 macOS 加篮子,最方便的文件移动方式 ☞
Dropover 是一款给 macOS 增加文件篮子的小工具,你只需要将文件、网页图片、文字拖拽至篮子里临时保存,然后再去目的地进行移动、复制操作,对于需要从多处文件夹移动文件到某一个文件夹的需求来说,极大的简化了操作。也支持从网页批量下载图片。@Appinn
Dropover 的免费替代工具:Dropshelf
Pixso
一款原型设计工具,相比于 Figma, Sketch 增加了一种原型设计文件,封装了一些常用基础组件,更加便利。