如何让一门语言跑起来

刚接触编程的时候,我们常推荐初学者使用Dev-c++等IDE(Integrated Development Environment:集成开发环境,是用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面等工具。),将“编程”的流程简化为“输入代码->运行程序”的傻瓜式操作,以快速建立对“编程”的最基础认识。但是在macOS上,类似于Dev-c++的IDE并不多。所以我们从输入代码到程序运行的过程出发,介绍下如何在Mac上舒服地写程序。

程序编写的过程

从你的想法开始,到可执行文件,最终到一个满意的程序,有如下几个步骤。

注:python等解释型语言,只有解释器。

读者要尤其注意“编辑”与“编译”的区别,“编辑”是我们常说的“敲代码”的过程,而“编译”是编译器将代码翻译成计算机能理解的二进制01101010......的过程,“编辑”发生在“编译”之前的。理解这两个概念对于“编程”是至关重要的。

一个趁手的编译环境可以统筹这些工具,让你专心于实现自己的想法,减少工具的束缚。总的来说,我们想要IDE实现这些目标:

  1. 代码书写流畅,支持高亮和自动补全
  2. 拥有开放的插件生态和丰富的插件体系
  3. 对编译器和调试器有一定的内嵌支持

在哪写程序?

"Word是最好的程序编辑器"

当然这只是一句玩笑,word以标记语言储存文本,无法被编译器理解(如果你暂时不清楚什么是标记语言,没有关系的。往后我们可能会接触到一些类似的标记语言,到时我们便可对标记语言有一个感性的认识);而语法检查等书写自然语言时常用的工具对编写代码来说更是束缚。一个好的程序编辑器的应具有以下特点:性能高,扩展性强(可以自己安装插件来实现丰富的功能),界面美观,具有跨平台的支持。

写程序工具的主要有两种:集成开发环境(IDE),和文本编辑器(Code Editor),这两者各有侧重。IDE内包含了文本编辑器的功能,而且常常可以进行代码编译和程序调试的工作,特点是“集成而强大”。文本编辑器的主要功能就是编辑文本,拓展功能一般是通过插件体系完成的,由于其“轻量可拓展”的特性也很受欢迎。以下是我本人的使用体验,尽管参考,欢迎大家讨论。

文本编辑器:(待我去试试再补充,欢迎大家补充!)

  1. Visual Studio Code

    简称vscode。开源免费,目前市面上最受欢迎的文本编辑器。拥有丰富的插件,详细的语言支持,完善的远程功能。同时也是本文的写作工具。

  2. Sublime Text

    付费,老牌编辑器

  3. atom

IDE

  1. Visual Studio macOS不适用

    简称vs,有免费社区版。微软开发的老牌IDE,功能丰富,Windows开发常用。

  2. Jetbrains全家桶

    目前IDE界的“老大哥”,语言支持丰富,Java编程首选,对C/C++/JavaScript/Python等语言的支持也很完善。

  3. Qt Creator

    C++语言的IDE,使用Qt写Gui(图形用户界面,而不是我们一般编出来的黑洞洞的窗口)时常用。也有不少学校作为课程推荐IDE使用。

具体设置呢?

请见后续文章。

C++环境配置中包含了vscode的介绍和配置。

Python环境配置中将包含Jetbrains全家桶的下载和配置,以Pycharm为例。

Qt环境配置将介绍CMake,C++依赖,Qt creator和vscode联合配置。