语言和环境
下面列出了书中会用到的集中语言和它们的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)