この記事では、24種類のプログラミング言語のHello Worldプログラムを主に紹介しています。よく知られているJava、C言語、C++、C#、Ruby、Python、PHPなどのプログラミング言語を含みます。必要な方は参考にしてください。
Hello Worldは、ほぼすべてのプログラマーがさまざまな言語を学ぶ最初のプログラムです。思いついて、主流の開発言語での実装方法をまとめて整理しました。その言語の概要、開発、コンパイル、環境構築、実行、簡単な言語仕様などを大まかに素早く理解できます。実は多くの言語は関連しています。現在では、1つの言語だけを習得するだけでは不十分です。例えばPythonは、言語が簡潔で開発が速いことが最大の利点ですが、欠点は速度が比較的遅いことです。C/C++/Javaは開発は遅いですが、プログラムの実行速度は比較的速いです。両方の利点を兼ね備えたい場合は、Pythonの拡張を書く必要があり、これには(C、C++、Java、Fortran...)などの言語が関わってきます。PythonのGUIであるTkinterにはTCL言語も関わっています。したがって、Python開発にはCを熟知している必要があり(CPythonはCで開発されています)、できればJava(JythonはJavaベースのPython実装です)、C++/C#(IronPythonはC#および.NETベースの実装です)にも精通していることが望ましいです。また、異なる言語間の通信にはCORBALが使われる可能性があり、PythonからSHELLのコマンドやPerlのコマンドを呼び出すこともあります。ですから、1~2言語を精通し、複数の言語に熟知していることが必須です。
以下では、複数の言語でHello Worldを出力する方法を実装します。必要な環境(主にコンパイル方法、リンク方法など)、コード、言語の説明、言語の特徴紹介を含みます。
付録として、2014年のプログラミング言語総合ランキング上位20位、Web開発言語ランキング上位10位、モバイルアプリ開発言語ランキング上位10位も掲載しています。
01. Java
環境: JDK1.7
C:\>java -version java version "1.7.0_51" Java(TM) SE Runtime Environment (build 1.7.0_51-b13) Java HotSpot(TM) Client VM (build 24.51-b03, mixed mode, sharing)
コード:
#FileName: HelloWorld.java
public class HelloWorld #如果有 public 类的话,类名必须和文件同名,注意大小写
{
#Java 入口程序,程序从此入口
public static void main(String[] args)
{
#向控制台打印一条语句
System.out.println("Hello,World!");
}
}
説明:
D:\HelloWorld>javac HelloWorld.java #用 javac 编译成字节码文件(HelloWorld.class) D:\HelloWorld>java HelloWorld #用 java 解释执行成特定平台的机器码 Hello,World!
02. C
環境: MinGW または各種C/C++コンパイラ
D:\HelloWorld>gcc -v Reading specs from C:/Perl/site/lib/auto/MinGW/bin/../lib/gcc/mingw32/3.4.5/specs Configured with: ../gcc-3.4.5-20060117-3/configure --with-gcc --with-gnu-ld --with-gnu-as --host=min gw32 --target=mingw32 --prefix=/mingw --enable-threads --disable-nls --enable-languages=c,c++,f77,ad a,objc,java --disable-win32-registry --disable-shared --enable-sjlj-exceptions --enable-libgcj --dis able-java-awt --without-x --enable-java-gc=boehm --disable-libgcj-debug --enable-interpreter --enabl e-hash-synchronization --enable-libstdcxx-debug Thread model: win32 gcc version 3.4.5 (mingw-vista special r3)
コード:
#include <stdio.h>
int main() #main 入口函数
{
printf("Hello,World!"); #printf 函数打印
return 1; #函数返回值
}
説明:
D:\HelloWorld>gcc HelloWorld.c -o output #文件名 HelloWorld.c,-o 输出文件名 output HelloWorld.c:6:2: warning: no newline at end of file D:\HelloWorld>output #直接运行输出文件 Hello,World!
#如果未安装 GCC,那么必须按照 http://gcc.gnu.org/install/ 上的详细说明安装 GCC。 #为了在 Windows 上安装 GCC,需要安装 MinGW。 #为了安装 MinGW,请访问 MinGW 的主页 www.mingw.org,进入 MinGW 下载页面,下载最新版本的 MinGW 安装程序,命名格式为 MinGW-<version>.exe。 #当安装 MinWG 时,至少要安装 gcc-core、gcc-g++、binutils 和 MinGW runtime,但是一般情况下都会安装更多其他的项。 #添加您安装的 MinGW 的 bin 子目录到您的 PATH 环境变量中,这样您就可以在命令行中通过简单的名称来指定这些工具。 #当完成安装时,就可以从 Windows 命令行上运行 gcc、g++、ar、ranlib、dlltool 和其他一些 GNU 工具。
03. C++
環境: MinGW または各種C++コンパイラ
ヘッダーファイルの拡張子:.h、.hpp、.hxx
ソースファイルの拡張子:.cpp、.c++、.cxx、.cc、.C
コード:
#include <iostream> //std::cout 要用到的头文件
#include <stdio.h> //标准输入输出头文件
int main()
{
printf("Hello,World!--Way 1\n"); //printf 语句打印
puts("Hello,World!--Way 2"); //puts 语句
puts("Hello," " " "World!--Way 3"); //字符串拼接
std::cout << "Hello,World!--Way 4" << std::endl; //C++ 教科书上写法
return 1; //作为注释
}
説明:
D:\HelloWorld>g++ HelloWorld.c++ -o output //源文件后缀也可为 .cpp、.C D:\HelloWorld>output Hello,World!--Way 1 Hello,World!--Way 2 Hello,World!--Way 3 Hello,World!--Way 4
04. Python
環境: Python 2.x または Python 3.x
D:\HelloWorld>python Python 2.7.4 (default, Apr 6 2013, 19:55:15) [MSC v.1500 64 bit (AMD64)] on win32 Type "help", "copyright", "credits" or "license" for more information.
コード:
>>>> print "Hello,World!" #Python 2.x
Hello,World!
>>> print("Hello,World!") #Python 3.x
Hello,World!
説明:
1. Python 3.x では、print 文は関数なので、print() となります。
2. .py ファイルに記述して、同様に実行することもできます。
3. python2.6 以降のバージョンは python3.x と基本同じで、同様に print() を使って出力できます。
05. C#
環境:Windows
d:\HelloWorld>csc -v Microsoft (R) Visual C# 2005 Compiler version 8.00.50727.4927 for Microsoft (R) Windows (R) 2005 Framework version 2.0.50727 Copyright (C) Microsoft Corporation 2001-2005. All rights reserved.
コード:
//FileName: HelloWorld.cs
using System;
class TestApp
{
public static void Main()
{
Console.WriteLine("Hello,World!");
Console.ReadKey();
}
}
//执行如下:
d:\HelloWorld>csc HelloWorld.cs
Microsoft (R) Visual C# 2005 Compiler version 8.00.50727.4927
for Microsoft (R) Windows (R) 2005 Framework version 2.0.50727
Copyright (C) Microsoft Corporation 2001-2005. All rights reserved.
d:\HelloWorld>HelloWorld.exe
Hello,World!
説明:
C# は実際には Java と非常に似ています。先ほどはコマンドライン方式を使いましたが、環境変数の設定が必要です。参考:http://www.jb51.net/article/67171.htm
Microsoft Visual Studio を直接ダウンロードした場合は、IDE でショートカットキーを使ってコンパイル・実行できます。
06. PHP
環境: XAMPP 1.8.3、環境構築ガイド:http://www.cnblogs.com/wangkangluo1/archive/2011/07/19/2110943.html
コード:
<!DOCTYPE html> <body> <?php echo "Hello,World!"; //打印语句 echo "The first php program!"; //打印语句 echo phpinfo(); //phpinfo()系统函数,输出环境信息 ?> </body> </html>

説明:
#PHP(Hypertext Preprocessor)。 #PHP 是一种 HTML 内嵌式的语言,PHP 与微软的 ASP 颇有几分相似,都是一种在服务器端执行的嵌入 HTML 文档的脚本语言。 #PHP 语言的风格类似于 C 语言,现在被很多的网站编程人员广泛地运用。 #PHP 独特的语法混合了 C、Java、Perl 以及 PHP 自创新的语法。它可以比 CGI 或者 Perl 更快速地执行动态网页。 #与其他的编程语言相比,PHP 是将程序嵌入到 HTML 文档中去执行,执行效率比完全生成 HTML 标记的 CGI 要高许多。 #与同样是嵌入 HTML 文档的脚本语言 JavaScript 相比,PHP 在服务器端执行,充分利用了服务器的性能。 #PHP 执行引擎还会将用户经常访问的 PHP 程序驻留在内存中,其他用户再一次访问这个程序时就不需要重新编译程序了,只要直接执行内存中的代码就可以了,这也是 PHP 高效率的体现之一。 #PHP 具有非常强大的功能,所有的 CGI 或者 JavaScript 的功能,PHP 都能实现,而且几乎支持所有流行的数据库以及操作系统。
07. JavaScript
環境: node.js または jaxer
nodeダウンロードリンク:http://nodejs.org/download/プロンプトに従って、必要なファイルをダウンロードするだけです。
D:\>node -v v0.10.33
コード:
var sys = require("sys"); #导入需要的 sys 模块
sys.puts("Hello,World!"); #调用里面的 puts 函数来打印字符串
説明:
D:\>node HelloWorld.js #node + *.js,执行 Hello,World! #JavaScript 是 Web 的编程语言。 #所有现代的 HTML 页面都使用 JavaScript。 #JavaScript 非常容易学。
08. Ruby
環境: ruby 1.9.3
D:\HelloWorld>ruby -v ruby 1.9.3p429 (2013-05-15) [i386-mingw32]
コード:
#可用 print 语句打印
print "Hello,World!\n"
#可用 puts 语句打印
puts "Hello,World!\n"
#可以先声明一个变量,然后再用 puts 语句
a = "Hello,World!\n"
puts a
#可以先写个函数再调用
def say(name)
"Hello,#{name}"
end
puts say("World!")
説明:
D:\HelloWorld>ruby HelloWorld.rb #运行方式类似 Python、Perl Hello,World! Hello,World! Hello,World! Hello,World!
09. R
環境:R-3.1.2-win(32ビット、64ビット対応)、それぞれ対応する GUI があります
C:\>R #安装好了之后,输入 R 后显示 R version 3.1.2 (2014-10-31) -- "Pumpkin Helmet" Copyright (C) 2014 The R Foundation for Statistical Computing Platform: i386-w64-mingw32/i386 (32-bit) R 'license()''licence()' R. 'contributors()' 'citation()'RR 'demo()''help()' 'help.start()'HTML 'q()'R.

コード:
print("Hello,World!")

説明:
R言語は、フリーソフトウェアのプログラミング言語および操作環境であり、主に統計解析、グラフ作成、データマイニングに使用されます。
以下は、インストールとダウンロードのより詳細な手順です。参照:
http://www.jb51.net/os/RedHat/335436.html
10. SQL
環境: ORACLE SQL/PLUS
コード:
SQL> select 'Hello,World!' from dual; 'HELLO,WORLD ------------ Hello,World!
説明:
テーブルを作成し、挿入し、クエリし、最後にそのテーブルを削除することもできます。
SQL> CREATE TABLE MESSAGE (TEXT CHAR(15)); #创建表
INSERT INTO MESSAGE (TEXT) VALUES ('Hello, world!'); #插入表
SELECT TEXT FROM MESSAGE; #查询表
DROP TABLE MESSAGE; #删除表
Table created.
SQL>
1 row created.
SQL>
TEXT
---------------
Hello, world!
11. Perl
環境:Perl 5.16 または MinGW
ダウンロード URL:http://www.activestate.com/activeperl/downloads
D:\HelloWorld>perl -v This is perl 5, version 16, subversion 3 (v5.16.3) built for MSWin32-x86-multi-thread (with 1 registered patch, see perl -V for more detail) Copyright 1987-2012, Larry Wall Binary build 1603 [296746] provided by ActiveState http://www.ActiveState.com Built Mar 13 2013 11:29:21 Perl may be copied only under the terms of either the Artistic License or the GNU General Public License, which may be found in the Perl 5 source kit. Complete documentation for Perl, including FAQ lists, should be found on this system using "man perl" or "perldoc perl". If you have access to the Internet, point your browser at http://www.perl.org/, the Perl Home Page.
コード:
#!C:\Perl\bin #Windows 平台下
#!/usr/bin/env perl #Linux 环境下
print "Hello,World!\n"; #print("Hello,World") 也可
出力結果:
D:\HelloWorld>perl HelloWorld.pl #类似于 python file.py Hello,World!
説明:
#Perl 5.10 及以上的版本可以用 use 5.010; say "Hello,World!";
12. HTML
環境:HTML または HTML 5.0
コード:
<!DOCTYPE html> <html> <body> <h1>This is the first program!</h1> <p>Hello,World!</p> </body> </html>
説明:
ほとんどの主要ブラウザはHTML4.0をサポートしており、一部のブラウザはHTML5.0の一部の機能のみをサポートしています。
13. VB
環境:
VBC version 8.0.5 D:\Learn\C>vbc -v Microsoft (R) Visual Basic Compiler version 8.0.50727.5483 for Microsoft (R) .NET Framework version 2.0.50727.5485 Copyright (c) Microsoft Corporation. All rights reserved. vbc : Command line warning BC2007 : unrecognized option 'v'; ignored vbc : Command line error BC2008 : no input sources specified
コード:
'FileName: HelloWorld.rb rb 作为 VB 源文件的后缀
Module Hello
Sub Main() '程序人口函数
MsgBox("Hello,World!") '计算机屏幕上显示信息
End Sub 'End 作为程序块结尾
End Module '单引号作为注释
説明:
D:\>vbc HelloWorld.vb #vbs 来编译,生成 HelloWorld.exe 可执行文件 Microsoft (R) Visual Basic Compiler version 8.0.50727.5483 for Microsoft (R) .NET Framework version 2.0.50727.5485 Copyright (c) Microsoft Corporation. All rights reserved. D:\>HelloWorld
14. Scala
環境:scala-2.11.4.msi コンパイラ
d:\>scala
Welcome to Scala version 2.11.4 (Java HotSpot(TM) Client VM, Java 1.7.0_51).
Type in expressions to have them evaluated.
Type :help for more information.
scala> println("Hello,World!"); #可在交互式界面执行 println 语句,很像 java
Hello,World!
コード:
object HelloWorld
{
def main(args:Array[String])
{
println("Hello,World!");
}
}
//编译
d:\HelloWorld>scala HelloWorld.scala
Hello,World!
説明:
Scalaは、オブジェクト指向と関数型プログラミングの考え方を静的型付けに取り入れたプログラミング言語であり、簡潔で優雅かつ型安全な方法で一般的なプログラミングパターンを表現することを目指しています。オブジェクト指向と関数型言語の特性をシームレスに統合しており、Javaや他の言語のプログラマーがScalaを使用する際により生産的になります。
15. Shell
環境:Linux/Unix プラットフォーム、または MinGW と MSYS をインストールした Windows プラットフォーム
コード:
#安装了MinGW和MSYS的Windows平台 D:\HelloWorld>echo "Hello,World!" "Hello,World!" #Linux平台下 #echo "Hello,World!" 或 printf "Hello,World!" #如果是写在文件中: chmod +x HelloWorld.sh ./HelloWorld.sh
説明:
#Shell 诞生于 Unix,是与 Linux/Unix 交互的工具,单独地学习 Shell 是没有意义的,必须先学习 Linux/Unix。 #Shell 虽然是 Unix 的第一个脚本语言,但它是相当优秀的。它结合了延展性与效率,持续保有独具的特色,并不断的被改良,功能更加强大。 #缺点:Shell 需要依赖其他程序才能完成大部分的工作,优点:简洁的脚本语言标记方式,比 C 语言编写的程序执行更快、更有效率。
16. Delphi
環境:Delphi 7
コード:
[File|New|Application]-->Buttonを1つ、Labelを1つドラッグ-->Buttonをダブルクリック、コーディングは次の通り:
procedure TForm1.Button1Click(Sender: TObject); begin label1.Caption := 'Hello,World!'; end; procedure TForm1.FormCreate(Sender: TObject); begin end; end.
説明:
Delphiは、Windowsプラットフォーム向けの有名な高速アプリケーション開発ツール(Rapid Application Development、略称RAD)です。
多くの人がDelphiは衰退して時代遅れだと思っているようです(私の周りの同僚の多くはDelphiを聞いたことすらありません)。
しかし、私はそうは思いません。「本当のプログラマーはCを使い、賢いプログラマーはDelphiを使う」。古典は多くを語る必要はありません。特にGUIプログラムの開発では、ドラッグするだけでOKです!!!
17. Fortran
環境:Linux または MinGW をインストールした Windows プラットフォーム
D:\HelloWorld>gfortran -v Using built-in specs. COLLECT_GCC=gfortran COLLECT_LTO_WRAPPER=c:/mingw/bin/../libexec/gcc/mingw32/4.8.1/lto-wrapper.exe Target: mingw32 Configured with: ../gcc-4.8.1/configure --prefix=/mingw --host=mingw32 --build=mingw32 --without-pic --enable-shared --enable-static --with-gnu-ld --enable-lto --enable-libssp --disable-multilib --ena ble-languages=c,c++,fortran,objc,obj-c++,ada --disable-sjlj-exceptions --with-dwarf2 --disable-win32 -registry --enable-libstdcxx-debug --enable-version-specific-runtime-libs --with-gmp=/usr/src/pkg/gm p-5.1.2-1-mingw32-src/bld --with-mpc=/usr/src/pkg/mpc-1.0.1-1-mingw32-src/bld --with-mpfr= --with-sy stem-zlib --with-gnu-as --enable-decimal-float=yes --enable-libgomp --enable-threads --with-libiconv -prefix=/mingw32 --with-libintl-prefix=/mingw --disable-bootstrap LDFLAGS=-s CFLAGS=-D_USE_32BIT_TIM E_T Thread model: win32 gcc version 4.8.1 (GCC)
コード:
program hello
print *, "Hello World!"
end program hello
説明:
Fortranは最も初期に登場したコンピュータ言語であり、主に科学・工学計算の分野で使用されます。この点はPythonと同じです。
D:\HelloWorld>gfortran -ffree-form HelloWorld.f -o out.exe #-ffree-form 自由格式 -o 后面是输出文件 #后缀名可以为.f, .F, .f90, .fpp. 如果是 .f90 结尾的文件,可以不用 -ffree-form,因为该后缀结尾的文件默认是自由格式 D:\HelloWorld>out #如果是 .f 结尾的话,必须要加上,否则报错 Hello World!
18. TCL
環境:Linux または WinGW を備えた Windows プラットフォーム
コード:
#命令行交互方式 D:\>tclsh % puts "Hello,World!" Hello,World! % exit D:> #文件方式运行 #!/usr/local/bin/tcl puts "Hello, world!" D:\>tclsh HelloWorld.tcl Hello,World!
説明:
1. ファイル名の拡張子 .tcl のコンパイラは tclsh(コマンド方式で表示)または wish(GUI方式で表示)です。
2. TCL(Tool Command Language)は汎用スクリプト言語であり、ほぼすべてのプラットフォームで実行でき、機能は非常に強力です。
19. FoxPro
環境:VFP9.0
コード:
?"Hello,World!"

説明:
コンパイルも実行も成功しましたが、GUIインターフェースでコンパイル結果を表示する方法が分からず、結局コマンドラインインターフェースで .FXP ファイルを実行して結果を表示しました。
Visual FoxProは元々FoxBaseという名前で、最初は1988年にアメリカのFox Software社が発表したデータベース製品で、DOS上で動作し、xBaseシリーズと互換性がありました。FoxProはFoxBaseの強化版で、最高バージョンは2.6まで発行されました。その後1992年にFox Software社はMicrosoftに買収され、開発が進められ、Windows上で動作するようになり、Visual FoxProと改名されました。FoxProはFoxBASEに比べて機能と性能が大幅に改善され、主にウィンドウ、ボタン、リストボックス、テキストボックスなどのコントロールが導入され、システム開発能力がさらに向上しました。
20. Ada
環境:ADA95 の gnat コンパイラ
d:\HelloWorld>gnat GNAT 4.8.1 Copyright 1996-2013, Free Software Foundation, Inc. List of available commands gnat bind gnatbind gnat chop gnatchop gnat clean gnatclean gnat compile gnatmake -f -u -c gnat check gnatcheck gnat elim gnatelim gnat find gnatfind gnat krunch gnatkr gnat link gnatlink gnat list gnatls gnat make gnatmake gnat metric gnatmetric gnat name gnatname gnat preprocess gnatprep gnat pretty gnatpp gnat stack gnatstack gnat stub gnatstub gnat test gnattest gnat xref gnatxref
コード:

説明:
Adaは表現力が非常に強い汎用プログラミング言語であり、アメリカ国防総省がソフトウェア開発危機を克服するために開発しました。#行を除去して最終処理されたファイルを得た後、GNATでコンパイルできます。
21. AWK
環境:Linux/Unix プラットフォーム、または MinGW と MSYS をインストールした Windows プラットフォーム
コード:
[root@Linux ~]# echo | awk '{print "Hello,World!"}'
Hello,World!
[root@Linux ~]# echo | awk 'BEGIN {print "Hello,World!"}'
Hello,World!
[root@Linux ~]# awk 'BEGIN {print "Hello,World!"}'
Hello,World!
[root@Linux ~]# echo "hello world" | awk '{print}'
hello world
説明:
#AWK 是一种优良的文本处理工具。它不仅是 Linux 中也是任何环境中现有的功能最强大的数据处理引擎之一。<br /> #AWK 名称得自于它的创始人,分别是 Alfred Aho、Peter Weinberger 和 Brian Kernighan 姓氏的首个字母。<br /> #AWK 提供了极其强大的功能:可以进行样式装入、流控制、数学运算符、进程控制语句甚至于内置的变量和函数。它具备了一个完整的语言所应具有的几乎所有精美特性。
22. Sed
環境:Linux/Unix
コード:
# sed -ne '1s/.*/Hello, world!/p' Hello,World! #第一行为输入 Hello, world! #
説明:
sed ストリームエディタは、awk、正規表現などとともに、Linux スクリプトを作成する際に非常に便利なツールです。
23. Pascal
環境:Free Pacal IDE
コード:
Program HelloWorld(output);
begin
writeln('Hello, world!')
{程序块的最后一条语句后不需要";" - 如果添加一个";",会在程序中增加一个“空语句”}
end.
説明:
Pascal プログラムは、外部ファイル記述子をパラメータとする program キーワードで始まります。次に begin と end キーワードで囲まれたメインブロックが続きます。セミコロンは文を区切り、ピリオドはプログラム全体(またはユニット)を終了します。Pascal のソースコードは大文字と小文字を区別しません。ここにあるのは非常にシンプルな "Hello world" プログラムのサンプルソースコードです。実際のプログラミングでは、通常最初の行の output は省略できます。構文のに見ると、Delphi に非常によく似ており、基本的に同じレベルです。また、FPC コンパイラをインストールしたところ、文字化けが表示されました。やはり(Turbo Pascal)の方が古典ので良いようです。ただし、Turbo Pascal のダウンロードは難しいと聞いていますし、WIN*64 ビットのプラットフォームでコンパイルできるかどうかも分からないので、とりあえず FPC をダウンロードして使っています。
24. Prolog
環境:SWI-PrologPortable コンパイラ
コード:
write("Hello,World!").
#注意,句末有点号

説明:
Prolog(Programming in Logic)は論理プログラミング言語です。論理学の理論的基礎の上に構築されており、当初は自然言語などの研究分野で使用されていました。現在では人工知能の研究で広く応用されており、エキスパートシステム、自然言語理解、知的知識ベースなどの構築に使用できます。
付録:
IEEE Spectrum は、10以上のデータソースに基づいて、主要なプログラミング言語の使用普及率を統計し、2014年のプログラミング言語総合ランキングトップ20、Web開発言語ランキングトップ10、モバイルアプリ開発言語ランキングトップ10を発表しました。統計データの結果は以下のとおりです。
総合ランキング:

Web 開発ランキング TOP10:
- Java
- Python
- C#
- PHP
- JavaScript
- Ruby
- Perl
- HTML
- Scala
- Go
モバイルアプリ開発言語ランキング TOP10:
- Java
- C
- C++
- C#
- JavaScript
- Objective-C
- Scala
- Delphi
- Scheme
- ActionScript
上の統計データは、それぞれ Google の検索結果、Google トレンド分析、Twitter、GitHub リポジトリ、StackOverflow のQ&A、Reddit の投稿、Hacker News、Career Builder、ice job、および IEEE ジャーナル論文などから取得されています。