logo

语言和环境

下面列出了书中会用到的集中语言和它们的hello world的例子。我们尽量使用 REPL(Read–eval–print loop,即交互模式)来获得更快的反馈,和更直观的印象。如果没有特别说明,可以通过提示符来判断是什么语言。

Bash

在 macOS 和 Linux 中可以直接打开 terminal 运行。Windows 下则建议安装 WSL (Windows Subsystem for Linux)。提示符为$

$ echo "hello world"
hello world

C/C++

C/C++没有自带的交互模式。使用 Clang 或 GCC 编译并执行:

$ clang++ tmp.cpp; ./a.out

Java

Java 9 之后提供了jshell(在$JAVA_HOME/bin下)。提示符是jshell>

jshell> "hello world"
$1 ==> "hello world"

Python

如果没有特别声明,文中的例子都是 Python 3 的。运行python进入 Python 2,或python3进入 Python 3。提示符都是>>>:

>>> 'hello world'
'hello world'

JavaScript

JavaScript 的命令都通过node来执行。提示符是>:

> 'hello world'
'hello world'

Go

下载和安装 Go: https://go.dev/doc/install

Go 不提供 REPL,可以使用go run来执行一个.go文件。

$ go run main.go

或者把代码放在 https://go.dev/play 直接在线运行。

Rust

下载和安装 Rust: https://www.rust-lang.org/tools/install

升级 Rust: $ rustup update

$ rustc main.rs
$ ./main

PHP/Hack

PHP5 于 2018 年退役,但文中有的例子是只存在于 PHP5 的。如果无特别声明,PHP 都使用 7 以上的版本。运行$ php -a进入交互模式。提示符为php >

php > print 'hello world';
hello world

Hack 大多数情况兼容 PHP。但版本 3.24 后可能不再兼容 PHP5。运行$ hhvm -a可进入交互模式。提示符为hphpd>:

hphpd> print 'hello world';
print 'hello world';
"hello world"

SQL

我们用 MySQL 来执行 SQL。$ mysql -u root -p然后输入密码进入交互模式。提示符为mysql>

mysql> SELECT 'hello world';
+-------------+
| hello world |
+-------------+
| hello world |
+-------------+
1 row in set (0.00 sec)