整理關於 SaaS 架構設計的想法,部分是來自於 Eclipse 這個著名 Java IED 的設計概念。
大約從 2018 之後,VSCode 可以算是統一 Open Source 的 IDE 了,之前由 GitHub 開發的 Atom 在微軟收購了 GitHub 之後,已經將在 December 15, 2022 落下了句點,其他 Editors (還不到 IDE) 大多還是屬於輔助性質,像是 Notepad++ 。
而 VSCode 主要的設計者 Erich Gamma 則是著名的 Design Pattern 的共同作者之一 (又稱 GoF),而這個理論背後源自於他的實作,也是著名的 Java IDE - Eclipse,Erich Gamma 負責最核心的 JDT (Java development Tooling) 的設計。
2004 - 2012 年期間,我在 IBM 駐點開發 Rational 相關產品,其中主要就是 Eclipse Plugins 的開發,產品是給 Web Developer 用的工具,可以說就是在寫 IDE 的概念。過程曾經鑽研了 Eclipse Plugins、RCP (Rich Client Platform, XMind / DBeaver 就是這個開發的) / Equinox OSGi / SWT / JFace / EMF / GEF … 等設計概念,也因此對於 Eclipse 整個架構略有研究,而這些設計概念也不知不覺的用在之後工作上。
這些年的更迭與代換,我自己的工作環境 從 Windows 換到 macOS,開發工具從 Eclipse 換到了 Atom,然後又跳到 VSCode。在使用 VS Code 的過程,處處都聞到 Eclipse 的設計感。開始做分散式架構設計、重讀作業系統、學習 CS 基礎知識、探索 AWS / K8s … 等過程,發現這些背後的本質都有高度的雷同。