问题的提出
相传古时候有个退休的程序员,在家闲来无事,决定修习书法之道。第一日,备好笔墨纸砚,便挥毫写下一行大字:“Hello World”。
学过编程语言的人都笑了,在程序员心目中,hello world是一切的开始,程序语言教科书的第一个演示程序、WordPress的第一篇示例文章(我的hello world)、环境搭建成功后的第一个测试……
可是,为什么呢?为什么都用“Hello World”来做程序语言的入门程序,以及其他这一切的开始呢?
Hello World 起源
可能还需要解释一下什么是“Hello World”:Hello World是一个简短的小程序,其功能是在显示设备上输出一行“Hello World”。几乎每一个程序设计语言的教材中的第一个范例都是hello world程序,因此在学习一门新语言的时候用hello world作为起步已经成为计算机程序界的一个传统。
Hello World的起源要追溯到1972年,贝尔实验室著名研究员Brian Kernighan在撰写“B语言教程与指导(Tutorial Introduction to the Language B)”时初次使用(程序),这是目前已知最早的在计算机著作中将hello和world一起使用的记录。之后,在1978年,他在他和Dennis Ritchie合作撰写的C语言圣经“The C Programming Language”中,延用了“Hello World”句式,作为开篇第一个程序。在这个程序里,输出的”Hello World”全部是小写,没有感叹号,逗号后有一空格。虽然之后几乎没能流传下来这个最初的格式,但从此用Hello World向世界打招呼成为惯例。
hello,world
有趣的是,如果你去看Brian Kernighan的wiki页面,他成果列表里的第一条,不是《C程序语言》,不是《UNIX编程环境》,而是看似不起眼的“Hello World”。
迷恋 Hello World
Hello World的迷人之处在于:它是简单的,即便没有任何基础,你也可以轻松理解,但它又不是苍白的,它带有一个程序语言鲜明的特色,体现了该语言最基本的思想和特征。同样也是Hello World,让人体会到第一份成功的喜悦。
今天开始“全民学编程”的第一课,为了遵循编程界的伟大传统,我们也不能免俗。 第一个程序,教大家怎么写 Hello World,也体验一下计算机的神奇之处。
"Hello World"程序是指在计算机屏幕上输出“Hello, world”这行字符串的计算机程序,“hello, world”的中文意思是“世界,你好”。这个例程在Brian Kernighan 和Dennis M. Ritchie合著的《The C Programme Language》使用而广泛流行。因为它的简洁,实用,并包含了一个程序所应具有的一切,因此为后来的编程类图书的作者提供了范例,一直待续到今。
今天的 Hello World程序,用 9 种计算机语言写成,大家可以点击代码行中的“练练手”来试试看,可以在线运行,并且可以试着修改输出的文字。 为什么要用 9 种语言呢,既然是 Hello World 这样简单的程序,我们就多用几种语言来写,让大家体验一下。后面的正式教学中,我们将分专题教学,而不会 一下子用多门语言,今天就算这些语言跑出来,集体和大家打个招呼啦!
JavaScript:
练练手
代码如下:
document.write("Hello, world!");
console.log("Hello, world!");
练练手
代码如下:
echo "Hello, world!";
Java:
练练手
代码如下:
public class Hello{
public static void main(String[] args) {
System.out.println("Hello, world!");
}
}
Objective-C:
练练手
代码如下:
#import <Foundation/Foundation.h>
int main(int argc, char **argv){
NSLog(@"Hello, world!");
return 0;
}
C:
练练手
代码如下:
#include <stdio.h>
int main(int argc, char **argv){
printf("Hello, world!");
return 0;
}
HTML:
练练手
代码如下:
<h1>Hello, world</h1>
Python:
练练手1
代码如下:
print("Hello, World!\n");
Ruby:
练练手
代码如下:
puts ("Hello, World!\n");
Go:
练练手
代码如下:
package main
import "fmt"func main() {
fmt.Println("Hello, world!")
}
更多信息请查看IT技术专栏