它的影响至今仍能感受到。自 Turbo Pascal 问世以来已过去 40 年，它凭借在其时先进的集成开发环境（IDE）和超越常规的性能，彻底改写了编程领域的格局。然而，我们现今并未广泛使用它，这是为何呢？1983 年，Turbo Pascal 的问世，这代表了在 IBM PC 兼容机早期的程序设计工具工作方式的重大变化。相比于传统工作方式下耗时的磁盘访问和多次编译、链接过程，Turbo Pascal 能在内存中直接完成所有操作，让速度大幅提升，因此得名 “Turbo”。后来在微软参与 C# 项目的 Anders Hejlsberg 被广泛称誉为这门语言的创造者。而 Borland 的老板 Philippe Kahn 第一时间就看中了这个一站式工具的潜力和需求所在。Turbo Pascal 的价格也相对便宜 —— 在竞争对手可能要花费数百美元的情况下，Turbo Pascal 的零售价只有 49.99 美元。不过，要是客户打算分发二进制文件，其开发商 Borland 仍会额外收取费用。尽管第一版的 Turbo Pascal 存在一些限制。例如，源代码文件不能超过 64 KB，且仅能为 DOS 和 CP/M 生成 .COM 可执行文件，尽管还支持其他架构和操作系统。它还能从单张软盘启动运行，在一个硬盘代价昂贵、且难以得到，单驱动器成为常态的时代，这省却了用户频繁更换磁盘的麻烦。仅几个月后，Turbo Pascal 就推出了第二版，此版本进行了一些微小的改动，后续在 1986 年发布了第三版。然而，真正让 Turbo Pascal 有了翻天覆地变化的，是 1987 年的第四版。例如，取消了对 CP/M 和 CP/M-86 的支持，开始在 DOS 环境下生成 .EXE 格式的可执行文件，打破了 .COM 文件的限制。第四版还引入了带有下拉菜单的全屏文字用户界面。到了 1988 年的第五版，我们看到了熟悉的默认蓝色背景编辑器。在本文作者看来，1989 年的 5.5 版是 Turbo Pascal 的巅峰之作。它引入了面向对象的编程特性，包括类和继承，以及一款逐步调试器。第六版和第七版分别引入了对内联汇编和用于创建 Windows 可执行文件和 DLL 的支持，但第七版也标志着 Borland 的 Turbo Pascal 到达了终点。尽管后面仍推出了 Turbo Pascal for Windows，但它最终被 Delphi 所取代。然而，如 Visual Basic 3 这样的工具的火爆，使得 Borland 在 Windows 系统下再未取得过像它在 DOS 下那样的辉煌。至于 Turbo Pascal，最后 Borland 以免费软件的方式发布了几个版本，包括用于 DOS 的第 1 版，第 5.5 版和第 7 版。或许这款语言曾引起 Pascal 语言的纯粹主义者们的反感，如今这个 IDE 与现代工具相比可能显得有些笨拙。但在 40 年前，它引发了一个新的开发时代，其影响至今仍能感受到。（题图：MJ/9d1f3b17-5b29-429d-8a86-e8520309d8d0）via: https://www.theregister.com/2023/12/04/40_years_of_turbo_pascal/作者：Richard Speed 译者：ChatGPT 校对：wxy
Geany 2.0 发布使其成为更通用的文本编辑器和 IDE
Geany 2.0 带来了新的文件类型和其他改进。Geany 被认为是 Linux 上最好的 Python IDE 之一，它是一个基于 GTK3 工具包的开源、轻量级 IDE。考虑到 Geany 的功能集对各种用户的吸引力，它也可以算作 Linux 上 Notepad++ 的替代品之一。现在，新版本已以 “Geany 2.0” 的形式推出，提供了许多改进。让我们看看有什么。? Geany 2.0：有什么新变化？Geany 版本的亮点可以分为两个不同的部分，主要涵盖界面和对文件类型的更好支持。文件类型升级通过更新 基本类型，改进了 Kotlin 的文件类型配置。同样，对于 Python ，针对 Python 3 重写了标准库标签创建脚本，并改进了对 ctags 文件格式的支持。最后，Geany 添加了对 AutoIt 和 GDScript 等新文件类型的**支持，并更新了 Nim 和 PHP 的文件类型配置，以解决一些长期存在的问题。界面改进Geany 2.0 在文档列表的侧边栏中提供了新的树视图。它是默认启用的，因此你无需执行任何操作。当你有大量单独的文件需要检查时，它非常实用。你还可以折叠特定文件夹以最大程度地减少混乱。编译器消息现在使用深色主题友好的颜色，以便你可以轻松阅读消息。这在深夜编码时应该很有帮助。此外，一个新的确认对话框添加到整个会话的“搜索和替换”功能中，并且添加了一个选项以在符号树中显示符号，而无需类别组。?️ 其他变化除了上述内容之外，还有一些值得注意的变化：Geany 现在需要 GTK 3.24。你现在可以滚动文档选项卡。更新了多种语言的翻译。修复了文件类型更改时的关键词着色问题。现在默认启用“更改历史记录”功能。有关此版本的更多详细信息，你可以浏览官方发行说明。? 下载 Geany 2.0由于它是 跨平台 IDE，Geany 2.0 可用于 Linux、Windows 和 macOS。你可以前往 Flathub 商店或其 官方网站下载你选择的包。Geany如果你对源代码感兴趣，你还可以访问其 GitHub 仓库。via: https://news.itsfoss.com/geany-2-0/作者：Sourav Rudra 选题：lujun9972 译者：geekpi 校对：wxy本文由 LCTT 原创编译，Linux中国 荣誉推出
硬核观察 #1088 一半以上的 Arm 服务器部署在亚马逊
一半以上的 Arm 服务器部署在亚马逊之前我们 报道 过，据一份报告估计，全球近 10% 的服务器采用了 Arm 处理器，其中 40% 位于中国。但令人吃惊的是，超过全球总数一半的 Arm 服务器 CPU 都部署在 AWS 的数据中心。亚马逊目前使用的是它在 2018 年推出 Graviton 系列芯片。一般认为，Arm 内核可能更节能，但性能却低于 x86 芯片。不过，据亚马逊的客户称，在与同类 x86 芯片性能相同的情况下，Arm 芯片成本降低了 20% 至 70%。消息来源：The Register老王点评：这么说在服务器上 Arm 还是颇有好处的。谷歌推出基于浏览器的全新人工智能开发环境谷歌今天宣布推出 “Project IDX”，提供基于浏览器的人工智能开发环境，用于构建全栈网络和多平台应用程序。它目前支持 Angular、Flutter、Next.js、React 和 Vue 等框架，以及 JavaScript 和 Dart 等语言，还将支持 Python、Go 和其他语言。它基于 VSCode，集成了基于谷歌 PaLM 2 的编程任务基础模型 Codey，因而支持智能代码自动补全、类似 ChatGPT/Bard 的聊天机器人。消息来源：Tech Crunch老王点评：看起来谷歌也不甘于在 AI 编程方面落后啊。谷歌信息应用将默认使用 RCS 短信谷歌今天宣布将默认使用 RCS 短信，使谷歌信息应用更加安全。RCS 是一种旨在取代短信的协议，与苹果 iMessage 的高级功能类似。谷歌表示，通过这次更新，用户在谷歌信息中的所有对话，无论是一对一还是群聊，现在都将保持私密。自 2019 年向美国安卓用户推出 RCS 以来，谷歌一直在努力向苹果施压，希望苹果在自己的信息服务 iMessage 中采用这项技术。去年，谷歌甚至专门推出了一个网站敦促苹果，但苹果无动于衷。消息来源：Tech Crunch老王点评：RCS 或许挺好，奈何苹果就是不上钩。
我们列出了 2022 年适用于 Linux 和 Windows 的六个最佳 Python 代码编辑器。如今，Python 无处不在，它可以说是现代版的 C 语言编程语言。从网站、应用程序、数据科学项目、人工智能到物联网设备，你可以发现 Python 无处不在。因此，作为这十年来流行的编程语言，了解 Python 的开发环境是很有必要的，开发人员用它创建应用程序，特别是如果你是刚刚开始学习 Python 编程，更需要了解 Python 开发环境。许多 Python 开发环境都提供了可以满足你需求的功能和工具。其中有些环境对学习 Python 的初学者很有用，而另外一些用户则适用于重型 Python 开发和复杂的设置。在这里，在这篇文章中，我将谈一谈其中最好的几个，这将有助于你根据自己的需要和使用情况选择一个。最好的 Python 编码编辑器这个榜单上有以下几个编辑器：Visual Studio CodeEclipsePyCharmSpyderSublime TextThonny1、Visual Studio Code尽管它是微软创造的，但 Visual Studio Code 是最好的代码编辑器之一。不仅是 Python，对于所有流行和趋势的编程语言都是。它具有语法高亮、代码补完、调试、代码片段、内置 Git 等诸如此类的功能。对于新手来说，它有点复杂，但也只需几个小时就能学会。然而，它是用 Electron 框架构建的，可能会感觉稍微慢一些。但在高端的开发硬件下这不是问题。它是一个自由开源的应用程序，适用于 Linux、macOS 和 Windows。以下是适用于 Ubuntu、Fedora 和相关发行版的单个 deb 和 RPM 包：下载 VS Code你也可以为 Flatpak 设置你的系统，并从终端运行以下命令，在所有 Linux 发行版上安装它。flatpak install flathub com.visualstudio.code 2、带有 PyDev 的 EclipseEclipse 是一个由 IBM 开发的自由开源的 IDE。这个完备的 IDE 可用于 Java 和 Android 开发。然而，它也支持许多其他编程语言，包括 Python。你可以将 Eclipse 与流行的 PyDev 插件一起使用，它可以将 Eclipse 转换成一个完整的 Python 开发环境。通过将 PyDev 集成在 Eclipse 中，你可以进行编译、代码分析、实时调试、交互式控制台访问，以及更多的功能。优势：丰富的功能和完整的 Python 开发 IDE。劣势：对系统性能有很大影响。针对高级用户。安装和更多信息：平台：Linux、Mac 和 Windows类型：集成开发环境价格：免费源代码：开源官方下载链接：PyDev、Eclipse官方网站：Eclipse、PyDev 插件Flatpak：Eclipse for Java 通过 Flathub 以 Flatpak 的形式提供，你可以在 设置 Flatpak 之后尝试这个版本3、PyCharm 编辑器由 JetBrains 开发的 PyCharm 提供了智能代码补完、代码检查、即时错误高亮、快速修复、自动代码重构和丰富的导航功能。PyCharm 开箱即用的大量工具包括：集成的调试器和测试运行器；Python 剖析器；内置终端；与主要版本控制系统和内置数据库工具的集成；借助远程解释器提供的远程开发能力；集成 SSH 终端；以及与 Docker 和 Vagrant 的集成。除了 Python，PyCharm 还为各种 Python 网页开发框架、特定模板语言、JavaScript、CoffeeScript、TypeScript、HTML/CSS、AngularJS、Node.js 等提供了一流的支持。PyCharm 有两个版本的安装程序：专业版和社区版。社区版是自由开源的。专业版不是免费的，因为它带有专业工具和广泛的支持。专业版有一个不到 10 美元的月度订阅版本，供个人使用。然而，如果你是一个初学者，你可以从 PyCharm 免费的社区版开始。它适用于科学和网页 Python 开发。具有 HTML、JS 和 SQL 支持。优势：为专业人士提供先进的现代编辑功能，有助于快速开发。劣势：大多数专业工具都在付费版本中提供（个人使用时每月约 8 至 10 美元）。安装和其他信息：平台：Linux、Mac 和 Windows类型：IDE价格：免费（社区版）和付费（专业版）源代码：开源（社区版）官方下载链接Flatpak：你可以在 为 Flatpak 设置你的 Linux 系统 之后安装 Flathub 提供的社区版本4、Spyder 编辑器Spyder 是一个强大的 Python 编辑器，是用 Python 编写的。它是为科学家、工程师和数据科学家所设计的。它将综合开发工具的高级编辑、分析、调试和剖析功能与科学软件包的数据探索、交互式执行、深度检查和漂亮的可视化功能独特地结合起来。优势：轻量级和免费劣势：你必须把它作为 Anaconda 软件包的一部分来下载。没有独立的安装程序。安装和其他说明：平台：Anaconda类型：IDE价格：免费源代码：开源官方下载链接官方网站5、Sublime TextSublime Text 是一个支持 Python 编程的复杂的代码编辑器。它是一个跨平台的工具，原生支持许多编程语言。你可以使用插件来扩展其特性和功能。Sublime Text 带有提高生产力的功能，如 “Goto anything”，可以同时对文件的多个部分进行修改。优点：轻量级、免费、可用于 Windows、Mac 和 Linux。缺点：它是免费评估的，但你必须购买一个许可证来进行高级使用。（LCTT 译注：但可以一直免费评估，而不限制时间，只是会时不时提醒）其他信息和安装：平台：Windows、Linux、OS X类型：IDE价格：免费，但必须购买许可证才能继续使用源代码：闭源官方下载链接官方网站Flatpak：Sublime Text 可以通过 Flathub 以 Flatpak 软件包 获得。设置你的 Linux 上的 Flatpak，然后安装它。6、Thonny Python 编辑器Thonny 是一个面向初学者的 Python IDE，使用起来很简单。它内置了最新的 Python（截至本文撰写时为 3.7+），所以你不需要在你的操作系统中单独安装 Python。用户界面毫不杂乱，对初学者来说没有任何干扰。Thonny 的其他一些显著特点包括：变量视图、简单调试器、单步调试和语法错误。优点：轻量级、免费，可用于 Windows、Mac 和 Linux。非常适合 Python 的绝对初学者（甚至是编码的初学者）。缺点：由于它是一个初学者的 IDE，所以只有基本的功能。安装和其他信息：平台：Windows、Linux 和 Mac类型：IDE价格：免费源代码：开源官方下载链接Flatpak：它通过 Flathub 以 Flatpak 的形式提供。设置你的 Linux 系统安装 Flatpak，然后去安装它。有很多 Python 编辑器可用，这些是用于编码的六个最好的 Python 编辑器。你可以尝试其他值得注意的 Python 编辑器：VIM、IDLE（默认 Python 自带）、Cloud 9 和 Emacs。?️ 你最喜欢哪个编辑器？请在下面的评论区告诉我们。via: https://www.debugpoint.com/5-best-python-ide-code-editor/作者：Arindam 选题：lkxed 译者：wxy 校对：wxy本文由 LCTT 原创编译，Linux中国 荣誉推出
硬核观察 #476 红帽称 CentOS Stream 9 基本像 RHEL 一样稳定
红帽称 CentOS Stream 9 基本像 RHEL 一样稳定新的 CentOS Stream 已经可以通过 ISO 镜像下载了，这个新版本通过了一系列的测试和检查，以确保它符合严格的 RHEL 标准。发布在 Stream 上的更新与在 RHEL 未发布的次要版本上的更新是相同的。“目的是让 CentOS Stream 基本像 RHEL 一样稳定”。为了实现这种稳定性，CentOS Stream 建立于 Fedora Linux 的稳定版本，对于 CentOS Stream 9 就是 Fedora 34。而 Fedora 的稳定性也得到了业界肯定，比如 AWS 的 Amazon Linux 3 就是完全基于 Fedora 的。老王点评：具体好用不好用，还是得看用户的感受。JetBrains 发布 Fleet IDE本周一，JetBrains 发布 了一个名为 Fleet 的轻量级多语言 IDE 的预览版，该 IDE 使用 IntelliJ 的代码处理引擎，具有分布式 IDE 架构和一个重新设计的 UI。据称，他们仅在 30 个小时内就收到了 8 万个预览请求，由于收到的请求太多，以至于在周五就关闭了申请通道。JetBrains 称它是一个成熟的编辑器，提供语法高亮、代码补完，以及所有你期待的编辑器的东西，以及重构、导航、调试和其他一切你习惯于在 IDE 中拥有的功能。它还提供了一个协作环境，允许开发人员一起工作，不仅仅是共享编辑器，还包括终端和调试会话。尽管 JetBrains 在发布公告中没有提及微软的 VS Code，但是似乎大家都将其 视作 VS Code 的竞品。老王点评：看来 VS Code 有竞争对手了。华为称鸿蒙系统明年登陆欧洲今年 6 月发布的鸿蒙 2.0 主要是面向中国市场的。近日华为某海外负责人在罗马尼亚交流时 接受采访称，“目前鸿蒙已经拥有超过 1 亿用户，他们对鸿蒙系统带来的体验非常满意。当用户从安卓切换到鸿蒙时，满意度提高了 10%。”而海外市场的大部分华为手机使用的依然是 EMUI，与鸿蒙的区别非常明显。该负责人称，“对于欧洲用户，我们将从明年（2022 年）开始推出鸿蒙操作系统。”老王点评：不知道国外对鸿蒙的认可程度如何。
Code Blocks 是一个用 C++ 编写的开源 IDE，非常适合 C、C++ 和 Fortran 开发。它是跨平台的，可以在 Linux、macOS 和 Windows 上运行。Code Blocks 是轻量级和快速的。它支持工作区、多目标项目、工作区内的项目间依赖关系。你可以得到语法高亮、代码折叠、标签式界面、类浏览器、智能缩进等功能。你还可以通过插件扩展 IDE 的功能。在本教程中，你将学习如何在基于 Ubuntu 的 Linux 发行版上安装 Code Blocks。注意Code Blocks 也可以在 Ubuntu 软件中心找到。然而，从 Ubuntu 21.04 开始，从 Ubuntu 软件中心以图形方式安装 Code Blocks 会安装一个 codeblocks-common 软件包，而不是图形化 IDE。因而你不能看到安装在你系统上的 Code Blocks 以运行。由于这个原因，我建议采取终端的方式在 Ubuntu 上安装 Code Blocks。在基于 Ubuntu 的 Linux 发行版上安装 Code BlocksCode Blocks IDE 在所有 Ubuntu 版本的 universe 库中都有。虽然它通常是默认启用的，但先启用 universe 仓库也无妨：sudo add-apt-repository universe 更新软件包缓存，这样系统就能知道新添加的仓库中的额外软件包的可用性：sudo apt update 最后，你可以使用 apt install 命令在基于 Ubuntu 的发行版上安装 Code Blocks：sudo apt install codeblocks 建议你也安装额外的插件，以便从 Code Blocks IDE 中获得更多。你可以使用 codeblocks-contrib 包来安装它们：sudo apt install codeblocks-contrib 如何使用 Code Blocks在系统菜单中搜索 “Code Blocks”。这是在 Ubuntu 默认的 GNOME 版本中的样子：当你第一次启动 Code Blocks 时，它会寻找你系统中所有可用的编译器，并将其添加到路径中，这样你就不用自己去配置它了。在我的例子中，我的 Ubuntu 系统上已经安装了 gcc，Code Blocks 很好地识别了它。Code Blocks 的用户界面绝对不够现代，但请记住，这个 IDE 是轻量级的，它几乎消耗不到 50MB 的内存。如果你曾经使用过像 Eclipse 这样的其他 IDE，你就不会觉得使用 Code Block 有什么困难。你可以写你的代码并把它们组织在项目中。构建、运行并构建和运行按钮一起放在顶部。当你运行代码时，它会打开一个新的终端窗口来显示输出。这就是你需要的关于 Code Blocks 的最少信息。剩下的留给你，你可以通过浏览它的 维基 和用户手册 来进一步探索它。拥有一个 IDE 可以使 在 Linux 上运行 C 或 C++ 程序 更容易。Eclipse 是一个很好的 IDE，但它比 Code Blocks 要消耗更多的系统资源。当然，最后，重要的是你的选择。via: https://itsfoss.com/install-code-blocks-ubuntu/作者：Abhishek Prakash 选题：lujun9972 译者：geekpi 校对：wxy本文由 LCTT 原创编译，Linux中国 荣誉推出
硬核观察 | Linux 基金会发起庆祝 Linux 三十岁生日的活动
Linux 基金会发起庆祝 Linux 三十岁生日的活动虽然距离 Linux 的生日（1991/9/17）还有不少时间，但是今年 Linux 基金会已经开始提前半年庆祝 Linux 三十岁生日了。Linux 基金会已经为此制作了多张宣传海报，还准备在今年 4 月在其线上商店推出 30 周年纪念周边。作为 Linux 的吉祥物，那只名为“Tux” 的小企鹅，居然都已经三十岁了。Rust 支持进入 Linux-Next 分支Linux-Next 主要用于存放一些将在下一周期合并进内核主支的代码。它最近加入对 Rust 的初步支持，如果未来对 Rust 的支持合并到 Linux 主支，这将是用 Rust 编写设备驱动迈出的重要一步。Linux 对 Rust 寄望很高，但是毕竟 Rust 还很新，所以对于将 Rust 作为内核支持的驱动语言，还是非常审慎的。传统 IDE 驱动将被从 Linux 内中删除两年前，传统的 IDE 驱动代码就已经实质上在 Linux 中废弃，开发者正在准备在今年移除它，大约可以减少 41000 多行内核代码。不过这不代表 IDE 设备就不能使用了，这只是移除传统的 IDE 驱动程序，IDE 本身仍将通过 libata 层在 Linux 内核上得到支持。有谁还在使用 IDE 设备？虽然 Linux 内核内的各种驱动都是模块化的，但是我觉得现在硬件发展这么快，应该加大老旧硬件的支持淘汰力度了，不应该将宝贵的人力放在这上面。
Java IDE 工具提供了大量的方法来根据你的独特需求和偏好创建一个编程环境。通过简化程序员的工作，Java 框架可以使他们的生活更加轻松。这些框架是为了在各种服务器环境上运行各种应用程序而设计开发的；这包括解析注解、扫描描述符、加载配置以及在 Java 虚拟机（JVM）上启动实际的服务等方面的动态行为。控制这么多的任务需要更多的代码，这就很难降低内存占用、加快新应用的启动时间。无论如何，据 TIOBE 指数，在当今使用的编程语言中 Java 一直排名前三，拥有着 700 万到 1000 万开发者的社区。有这么多用 Java 编写的代码，这意味着有一些很好的集成开发环境（IDE）可供选择，可以为开发人员提供有效地编写、整理、测试和运行 Java 应用程序所需的所有工具。下面，我将按字母顺序介绍五个我最喜欢的用于编写 Java 的开源 IDE 工具，以及如何配置它们的基本功能。BlueJBlueJ 为 Java 初学者提供了一个集成的教育性 Java 开发环境。它也可以使用 Java 开发工具包（JDK）开发小型软件。各种版本和操作系统的安装方式都可以在这里找到。在笔记本电脑上安装 BlueJ IDE 后，启动一个新项目，点击 项目 Project 菜单中的 新项目 New Project ，然后从创建一个 新类 New Class 开始编写 Java 代码。生成的示例方法和骨架代码如下所示：BlueJ 不仅为学校的 Java 编程课的教学提供了一个交互式的图形用户界面（GUI），而且可以让开发人员在不编译源代码的情况下调用函数（即对象、方法、参数）。EclipseEclipse 是桌面计算机上最著名的 Java IDE 之一，它支持 C/C++、JavaScript 和 PHP 等多种编程语言。它还允许开发者从 Eclipse 市场中的添加无穷无尽的扩展，以获得更多的开发便利。Eclipse 基金会提供了一个名为 Eclipse Che 的 Web IDE，供 DevOps 团队在多个云平台上用托管的工作空间创建出一个敏捷软件开发环境。可以在这里下载；然后你可以创建一个新的项目或从本地目录导入一个现有的项目。在本文中找到更多 Java 开发技巧。IntelliJ IDEAIntelliJ IDEA CE（社区版）是 IntelliJ IDEA 的开源版本，为 Java、Groovy、Kotlin、Rust、Scala 等多种编程语言提供了 IDE。IntelliJ IDEA CE 在有经验的开发人员中也非常受欢迎，可以用它来对现有源码进行重构、代码检查、使用 JUnit 或 TestNG 构建测试用例，以及使用 Maven 或 Ant 构建代码。可在这里下载它。IntelliJ IDEA CE 带有一些独特的功能；我特别喜欢它的 API 测试器。例如，如果你用 Java 框架实现了一个 REST API，IntelliJ IDEA CE 允许你通过 Swing GUI 设计器来测试 API 的功能。IntelliJ IDEA CE 是开源的，但其背后的公司也提供了一个商业的终极版。可以在这里找到社区版和终极版之间的更多差异。Netbeans IDENetBeans IDE 是一个 Java 的集成开发环境，它允许开发人员利用 HTML5、JavaScript 和 CSS 等支持的 Web 技术为独立、移动和网络架构制作模块化应用程序。NetBeans IDE 允许开发人员就如何高效管理项目、工具和数据设置多个视图，并帮助他们在新开发人员加入项目时使用 Git 集成进行软件协作开发。这里下载的二进制文件支持 Windows、macOS、Linux 等多个平台。在本地环境中安装了 IDE 工具后，新建项目向导可以帮助你创建一个新项目。例如，向导会生成骨架代码（有部分需要填写，如 // TODO 代码应用逻辑在此），然后你可以添加自己的应用代码。VSCodiumVSCodium 是一个轻量级、自由的源代码编辑器，允许开发者在 Windows、macOS、Linux 等各种操作系统平台上安装，是基于 Visual Studio Code 的开源替代品。其也是为支持包括 Java、C++、C#、PHP、Go、Python、.NET 在内的多种编程语言的丰富生态系统而设计开发的。Visual Studio Code 默认提供了调试、智能代码完成、语法高亮和代码重构功能，以提高开发的代码质量。在其资源库中有很多下载项。当你运行 Visual Studio Code 时，你可以通过点击左侧活动栏中的“扩展”图标或按下 Ctrl+Shift+X 键来添加新的功能和主题。例如，当你在搜索框中输入 “quarkus” 时，就会出现 Visual Studio Code 的 Quarkus 工具，该扩展允许你在 VS Code 中使用 Quarkus 编写 Java：总结Java 作为最广泛使用的编程语言和环境之一，这五种只是 Java 开发者可以使用的各种开源 IDE 工具的一小部分。可能很难知道哪一个是正确的选择。和以往一样，这取决于你的具体需求和目标 —— 你想实现什么样的工作负载（Web、移动应用、消息传递、数据交易），以及你将使用 IDE 扩展功能部署什么样的运行时（本地、云、Kubernetes、无服务器）。虽然丰富的选择可能会让人不知所措，但这也意味着你可能可以找到一个适合你的特殊情况和偏好的选择。你有喜欢的开源 Java IDE 吗？请在评论中分享吧。via: https://opensource.com/article/20/7/ide-java作者：Daniel Oh 选题：lujun9972 译者：wxy 校对：wxy本文由 LCTT 原创编译，Linux中国 荣誉推出
为了避免使用微软版本的 VS Code，我们需要另行选择一个开源的代码编辑器。Visual Studio Code，也叫 VS Code，是一个跨平台代码编辑器，通用于 Linux、Windows 以及 macOS。它既能编辑简单文本，也能像集成开发环境（IDE）一样管理整个代码库。它可以通过插件进行扩展，并且已经被证明是一个可靠的文本编辑器，很轻松地就击败了非开源的强大竞品编辑器。微软以开源的方式发布了 VS Code，但是你从微软下载的版本其实并不是开源的。然而，你仍有办法以开源的方式使用 VS Code，或者直接选择其它的开源替代品。以开源的方式构建 VS Code你可以在 GitHub 获得 VS Code 的源代码。然而当你 从微软 下载 VS Code 时，你会发现它是基于 微软软件许可证 授权的。这并不是一个开源许可证。其区别在于构建过程。Chris Dias 是微软 VS Code 项目开发者之一，他对 VS Code 作了一个对比，就像 Chrome 浏览器和其开源的“上游”项目 Chromium 一样。VS Code 确实是基于开源代码库构建的。微软官方发布的版本带有一些与微软相关的功能，包括一项商标、一个插件库、一个 C# 调试器以及遥测。但如果你克隆仓库然后自行编译，这些东西都不会被加入，所以你会得到一个名为 Code - OSS 的“干净”版本（OSS 代表开源软件）。实际上，VS Code 与 Code - OSS 之间的差异很小。最值得注意的是，VS Code 包含遥测功能，它会记录使用数据。微软不可能监控你的一举一动，而且目前越来越多软件都在收集使用数据。是否在乎 VS Code 的遥测功能，完全取决于你自己。如果你不希望它追踪你的使用情况，这里有一些很棒的 VS Code（开源）替代品。VSCodium最简单的替代方案就是构建不带微软附属功能的 VS Code 版本。VSCodium 项目提供了可下载的 Code-OSS 可执行文件，它基于 VS Code 代码库编译，没有配置微软的 product.json 中的改变。VSCodium 的开发者还竭尽全力禁用了所有难以寻找的遥测选项，除非你自行编译，否则这已经是你能找到的最干净的 VS Code 版本了。VSCodium 提醒说，VS Code 悄悄地包含了一些专有工具，这些工具无法与开源版本一起提供。这包括一个 C# 调试器和部分插件。如果你需要它们，可以在 [文档中] 找到解决办法。假如你依赖 VS Code 中某些特定的功能，你应该验证它在 VSCodium 中是否可以发挥功用。此外，你还应该验证是否已禁用所有的遥测功能。Code - OSS如果不想用 VSCodium 的版本，你可以自己 从头编译 VS Code，得到一样的版本。可执行文件叫做 Code - OSS，而不是 VSCode，适用于 VSCodium 的许可证限制也适用于你的构建，而工作方式也是一样。如果通过编译源码构建应用，首次启动时你要确保 [所有遥测都已经被禁用]。AtomAtom 是一个类似于 IDE 的文本编辑器，当微软收购 Github 的同时也收购了它。和 VS Code 一样，你可以使用插件，扩展 Atom 编辑器，此外，你还能通过自己的工具和主题实现定制。它开源且与 Github 集成。简而言之，只要你能找到你想用的插件，或者你愿意自己动手写，那么 Atom 几乎可以满足你的一切需求。跟 VS Code 一样，Atom 也 默认包含遥测。你可以禁用这个功能，而且跟 VS Code 不同的是，使用插件不受任何限制，所以不必再因为隐私改变你的工作流。对写代码的人来说，毫无疑问 Atom 是很有用的工具，而对于 使用电脑的任何人，它同样会是一个很赞的编辑器。如果你需要一个顺手的通用文本编辑器，请试试 Atom。GNOME Builder为 GNOME 桌面而开发的 IDE，GNOME Builder 是一个 Linux 平台的代码编辑器，专门用于构建 GNOME 应用。如果你为 Linux 构建应用程序，希望轻松解决兼容性问题，那么 Builder 就是最简单的选择。从 Flathub.org 安装 Builder；当你开启一个新项目，如果没有安装 GNOME SDK，它会提醒你。这意味着当维护你的应用时，你不必刻意关注 GNOME 的状态，因为 Builder 在替你做这件事。然而，Builder 不仅能构建 GNOME 程序。它还支持各种各样的编程语言，包括 Python、Rust、C/C++、Java、Go、JavaScript、TypeScript、VB.NET、Markdown 和几种标记语言等等。它对部分语言有全面的支持，包括自动补全以及弹出式函数定义，但是其它语言仅仅含有一些比较方便的功能，例如语法高亮跟自动匹配括号。不管你是不是一个专门的程序员，或者你只想要一个给力的 HTML 和 CSS 编辑器，这个 IDE 都能让你舒心使用。GeanyGeany 是一个强大、稳定而轻量级的编辑器，它有很多有用的特性，能帮你写 Bash、Python、Lua、XML、HTML、LaTex，当然远不止这些。对 50 种各种编程及脚本语言、标记语言和各种文件类型（比如 .diff 和 .po），Geany 都有很好的支持。退一万步讲，Geany 还有括号匹配和语法高亮 —— 通常来说，它包含更多功能。Geany 是一个小型编辑器，但是通过插件，你可以为它添加特性，例如项目视图面板、文件系统树、调试、终端等，直到它看起来像一个 IDE。当然，萝卜白菜各有所爱，你也可以尽量使它保持简洁易用。如果因为电脑 CPU 或者内存的限制而无法使用 VS Code，那么很明显 Geany 可以作为你的选择。它只占用少量内存，而且启动迅速。即便跟运行在终端里的 Vim 相比，Geany 稍显笨重，但就算在树莓派，它也能做到快速、灵活。BracketsBrackets 是一款面向网页开发者的文本编辑器和 IDE。对于 HTML、CSS、JavaScript、PHP 甚至 Python，它都有很强大的支持。而且跟 VS Code 一样，它也有一个很丰富的插件生态，所以你可以最大限度地扩展它，以适应你所有编程语言的工作。有的插件用于辅助解析语言、运行脚本，甚至编译执行代码。Brackets 有一个传统的界面，不管你是否熟悉 IDE 或者像记事本一样简单的文本编辑器，都能驾轻就熟。如果稍微花点时间，添加几个相关插件，然后熟悉它们，你会发现 Brackets 真的是一个很精妙、很有用的编辑器，不管你输入什么，它都能通过自动补全、提示帮你避免低级错误。假如你是程序员，它能帮你加快测验和调试周期。Che如果你喜欢新技术，那你应当尝试 Che 编辑器。这是一个基于云的 IDE，所以它默认以软件即服务（SaaS）的形式运行，但它是完全开源的，如果你有 Kubernetes 实例，那就可以运行为你自己的 SaaS。Che 不仅是一个在线 IDE，而且是一个为云开发而构建的 IDE。在 Che 的概念里，用户无需查看本地文件系统。由于它在云端工作，所以你也可以这么做。事实上，如果你有一台 Git 服务器，那就可以直接把它当作你的文件系统，在它的仓库中完成你的项目。当然，你也可以下载所有文件做本地备份。但 Che 的主要特点，也是云开发者最为兴奋的一点，它是一个功能全面、带有 Kubernetes 感知功能的开源 IDE。如果你正在为云构建应用、网站或容器（或三者的组合），那么 Che 是一个你需要尝试的编辑器。那么你的选择是？你有没有在使用这些 VS Code 替代品中的某一个呢？想不想挑一个试试呢？欢迎在评论中分享你的见解。via: https://opensource.com/article/20/6/open-source-alternatives-vs-code作者：Seth Kenlon 选题：lujun9972 译者：nophDog 校对：wxy本文由 LCTT 原创编译，Linux中国 荣誉推出
一个简单又原始的脚本来用 Vim 打开你选择的文件。像大多数开发者一样，我整天都在搜索和阅读源码。就我个人而言，我从来没有习惯过集成开发环境 （IDE），多年来，我主要使用 grep （找到文件），并复制/粘贴文件名来打开 Vi(m)。最终，我写了这个脚本，并根据需要缓慢地对其进行了完善。它依赖 Vim 和 rlwrap，并使用 Apache 2.0 许可证开源。要使用该脚本，请将它放到 PATH 中，然后在文本目录下运行：grepgitvi <grep options> <grep/vim search pattern>它将返回搜索结果的编号列表，并提示你输入结果编号并打开 Vim。退出 Vim 后，它将再次显示列表，直到你输入除结果编号以外的任何内容。你也可以使用向上和向下箭头键选择一个文件。（这对我来说）更容易找到我已经看过的结果。与现代 IDE 甚至与 Vim 的更复杂的用法相比，它简单而原始，但它对我有用。脚本#!/bin/bash # grepgitvi - grep source files, interactively open vim on results # Doesnt really have to do much with git, other than ignoring .git # # Copyright Yedidyah Bar David 2019 # # SPDX-License-Identifier: Apache-2.0 # # Requires vim and rlwrap # # Usage: grepgitvi <grep options> <grep/vim pattern> # TMPD=$(mktemp -d /tmp/grepgitvi.XXXXXX) UNCOLORED=${TMPD}/uncolored COLORED=${TMPD}/colored RLHIST=${TMPD}/readline-history [ -z "${DIRS}" ] && DIRS=. cleanup() { rm -rf "${TMPD}" } trap cleanup 0 find ${DIRS} -iname .git -prune -o \! -iname "*.min.css*" -type f -print0 > ${TMPD}/allfiles cat ${TMPD}/allfiles | xargs -0 grep --color=always -n -H "$@" > $COLORED cat ${TMPD}/allfiles | xargs -0 grep -n -H "$@" > $UNCOLORED max=`cat $UNCOLORED | wc -l` pat="${@: -1}" inp='' while true; do echo "============================ grep results ===============================" cat $COLORED | nl echo "============================ grep results ===============================" prompt="Enter a number between 1 and $max or anything else to quit: " inp=$(rlwrap -H $RLHIST bash -c "read -p \"$prompt\" inp; echo \$inp") if ! echo "$inp" | grep -q '^[0-9][0-9]*$' || [ "$inp" -gt "$max" ]; then break fi filename=$(cat $UNCOLORED | awk -F: "NR==$inp"' {print $1}') linenum=$(cat $UNCOLORED | awk -F: "NR==$inp"' {print $2-1}') vim +:"$linenum" +"norm zz" +/"${pat}" "$filename" donevia: https://opensource.com/article/20/2/no-ide-script作者：Yedidyah Bar David 选题：lujun9972 译者：geekpi 校对：wxy本文由 LCTT 原创编译，Linux中国 荣誉推出