【プログラミング】プログラミング言語23種での”Hello,World!”

勉強
この記事でわかる事

代表的なプログラミング言語23種類の特徴と、それらの言語によるコンピューター画面上に”Hello,World!”と表示する初歩的プログラムである”Hello,World!プログラム”のコードがわかります。

皆さんこんにちは、syuyaです。

今や義務教育に取り入れられ、学校教育で習うまでになったプログラミング言語。

そもそも、プログラミング言語とはいったい何なのでしょうか?

プログラミング言語とは、文字通りプログラミングをする際に使用される言語です。

プログラミングとは、コンピューターなどのデバイスに特定の動作をさせるために、指示や命令をすることを言います。

では、具体的にはどのような事なのでしょうか?

コンピューターなどの機械は元来、0と1からなる二進数(バイナリ数)で情報のやりとりをしています。

しかし、このバイナリ数を人間が理解し、取り扱うのは相当な知識と技術を必要とし、また打ち間違いなども頻発してしまいます。

そこで、0と1からなる機械語を、人間が理解しやすく、扱いやすい言語に”翻訳”した結果生まれたのがプログラミング言語です。

16進数で表された機械語の例

I, Mwtoews, CC BY-SA 3.0 http://creativecommons.org/licenses/by-sa/3.0/, via Wikimedia Commons

そして”Hello,World!”とは、多くのプログラマが新たにプログラミング言語を学ぶ際に最初にプログラムするプログラムで、画面上に”Hello,World!”と表示させる事を目的としたプログラムです。

基礎的なプログラムである為、あらたにプログラミング言語を学ぶ際に最初に書くコードとしてはうってつけと言えます。

プログラミング言語は、2023年現在で全部で200種類ほどあると言われていますが、日常的に使われているものはその中で20~30種類ほどであるとされます。

それぞれのプログラミング言語には特色があり、用途や目的に応じて使い分ける事が出来ます。

この記事では、主要なプログラミングコードにおける”Hello,World!”プログラムをご紹介します。

*ここでご紹介しているコードは、一例にすぎません。 また、ご使用の環境によっては動作しない事も御座いますので、あらかじめご了承ください。

💡 あなたも「Hello, World!」から始めてみませんか?

23の言語を見比べて「自分も書いてみたい」と思ったあなたへ。
このプログラミングスクールなら、現役エンジニアがマンツーマンで指導してくれるので、初心者でも挫折せずに学べます。
人気の「はじめての副業コース」では、学習後に実際の副業案件を1件以上紹介してもらえるので、学んだスキルをすぐに実践可能です。

通学不要・全国対応の完全オンラインスクール
Web制作、アプリ開発、Python、データ分析など、興味のある分野から選んで始められます。

👉 無料体験はこちらから

自宅で学びながら、「Hello, World!」のその先へ

機械語

1001000 1100101 1101100 1101111 101100 1010111 1101111 1110010 1101100 1100100 100001

機械語とは、人間が理解しやすいプログラミング言語とは異なり、コンピュータが唯一直接理解できる「0」と「1」で構成された最も低レベルの言語です。
この無機質な数字の列こそ、CPUが命令を解釈し、動作を実行するための純粋な信号そのものです。

たとえば「1001000 1100101 1101100 1101111 101100 1010111 1101111 1110010 1101100 1100100 100001」というコード列を見ても、人間にはただの数字にしか見えません。
しかし、これをASCIIコードとして解釈すれば、「Hello, World!」という言葉が現れます。
つまり、冷たい数列の裏には、人間の思考や感情を伝える温かいメッセージが潜んでいるのです。

このように、機械語は見た目こそ無機的ですが、すべてのソフトウェアやアプリケーションの根底に流れる「言葉の原型」です。
人間が高級言語を用いて命令を書き、コンパイラやアセンブラを通してそれを翻訳すると、最終的にこの機械語の世界へと還元されます。
いわば、コンピュータと人間を結ぶ最も根源的な対話形式――それが機械語なのです。

アセンブリ言語

global _start
       section    .text
_start:
       mov        rax,    1
       mov        rdi,    1
       mov        rsi,    message
       mov        rdi,    13
       syscall
       ;exit(0)
       mov        eax,    60
       xor        rdi,    rdi
       syscall
message:
       db          "Hello,World!",     10

アセンブリ言語とは、人間が理解しやすい形で機械語を表現した「コンピュータの言葉に最も近い言語」です。
英単語のような命令文で構成され、CPUの動作を細部まで制御できる点が特徴です。

例えば上記のコードは「Hello, World!」と表示するアセンブリ言語の一例です。

一行一行がCPUへの直接的な指令となっており、movでデータをレジスタに移し、syscallでOSに処理を要求する、といった具体的な動作を人間の言葉で記述しています。

C言語やPythonなどの高級言語が抽象化された命令を使うのに対し、アセンブリはCPUの内部構造やレジスタ、メモリアドレスに密接に関わる「裸の論理」です。

そのため習得は難しいものの、プログラムがどのように実行されるかを深く理解でき、ハードウェアとソフトウェアの境界線を直接感じ取ることができます。

この「Hello, World!」のようなシンプルなコードの背後にも、数千の電気信号が流れ、CPUが一つひとつ命令を解釈して動作しています。

アセンブリ言語はまさに、機械語と人間の知性の間に架けられた、精密で美しい橋なのです。

FORTRAN

program hello
print*,'Hello,World!'
end program hello

FORTRAN(フォートラン)は、世界で最も古い高級プログラミング言語のひとつであり、「Formula Translation(数式の翻訳)」という名前の通り、数学的な計算を人間の書く数式に近い形でコンピュータに伝えるために誕生しました。

1950年代、IBMの研究者ジョン・バッカスらによって開発され、当時はまだ機械語やアセンブリでしかプログラムを書けなかった時代に、「人間が理解できる形で科学計算を自動化する」という革命をもたらしました。

FORTRANのコードは、まるで数学のノートをそのままコンピュータに渡したような構造をしています。
たとえば上記のプログラムで「Hello, World!」と画面に表示できます。

その簡潔さの背後には、コンパイラが数式を最適化して高速な機械語に変換するという、当時としては画期的な仕組みが隠れています。

FORTRANは科学技術計算の分野で圧倒的な地位を築き、気象シミュレーション、流体力学、原子物理学、宇宙工学といった計算量の多い分野で今なお現役で使われています。
計算速度と数値精度に優れ、最新のスーパーコンピュータでもFORTRANによるコードが稼働しているのです。

「Hello, World!」という一行の出力の中にも、FORTRANが築いた半世紀以上の計算科学の歴史が息づいています。
FORTRANは単なる古典ではなく、コンピュータが“数理”を理解するための最初の言語として、今なお静かに輝き続けているのです。

ALGOL60

BIGIN
    FILE F(KINO=REMOTE);
    EBCDIC ARRAY E[0:11];
    REPLACE E BY "Hello,World!";
    WRITE(F,*,E);
END.

ALGOL 60(アルゴル・シックスティ)は、1950年代末に誕生した歴史的なプログラミング言語であり、後のC言語やPascal、Javaなど、数多くの言語に多大な影響を与えた「高級言語の原点」とも呼ばれます。
その名は “Algorithmic Language” の略で、「アルゴリズムを人間の思考に近い形で表現する」ことを目的として設計されました。

ALGOL 60のコードは、当時としては非常に洗練されており、構造化されたプログラムを書くための基本概念――ブロック構造・スコープ・再帰呼び出し――を世界で初めて体系的に導入しました。
たとえば、上記のような「Hello, World!」の例があります。

上記のコードのようにシンプルで数学的な構文は、後に多くの言語設計者たちにインスピレーションを与えました。
C言語の {}、Pascal の begin ... end、Python のインデント構造など、今日のプログラミング文法の源流には、ALGOL 60 の思想が流れています。

さらに、ALGOL 60 は初めて国際的な委員会によって設計された言語であり、コンピュータ科学が「学問」として成立する礎を築いた存在でもあります。
その理念は「計算を明確に、論理を美しく」。
つまり、コードを単なる命令ではなく、論理的な記述として扱おうとした最初の試みだったのです。

「Hello, World!」という一行の背後に、プログラムを“数学的思考の表現”へと昇華させたALGOL 60の哲学が息づいています。
それはまさに、コンピュータと言語の関係を芸術の域にまで高めた、静かなる革命だったのです。

COBOL

IDENTIFICATION DIVISION.
PROGRAM  -  ID HelloWorld.
PROCEDUREDIVISON.
MAIN.
    DISPLAY "Hello,World!".
    STOP RUN.

COBOL(コボル)は、1959年に誕生したビジネス向けプログラミング言語であり、「Common Business Oriented Language」(共通事務処理用言語)の名の通り、企業や行政機関の事務処理を自動化するために設計されました。

人間が読んでも理解しやすい「英語に似た文法」を持ち、当時としては画期的な“読みやすさ”と“業務志向”を実現した言語です。

たとえば、上記のような「Hello, World!」のコードがあります。まるで英文のように見えるこの構文こそが、COBOLの最大の特徴です。

「プログラマーではない人にも理解できるコードを」という思想のもと、事務職員や管理者でも読める言語を目指して開発されました。

COBOLは誕生から60年以上経った今も、銀行の基幹システムや行政機関の会計処理など、社会インフラの深層で動き続けています。

他の多くの言語が流行り廃りを繰り返す中、COBOLはその安定性と信頼性によって“消えない古典”として生き残り続けているのです。「Hello, World!」という出力の背後には、世界の経済システムを何十年も支えてきた堅牢なロジックが存在します。

COBOLは単なるレガシーではなく、現代社会の心臓部を静かに動かし続ける実務の言語なのです。

smalltalk

transcript show:'Hello,World!'.

Smalltalk(スモールトーク)は、1970年代にアラン・ケイ率いるXerox PARCの研究チームによって開発された、オブジェクト指向プログラミングの原点ともいえる言語です。

現代のプログラミング思想――クラス、インスタンス、メッセージ送信、GUIなど――の多くが、このSmalltalkから生まれました。その「Hello, World!」は、驚くほどシンプルです。上記の一文の中に、Smalltalkの哲学が凝縮されています。

Transcriptは出力先のオブジェクト、show:はメッセージです。つまり、“Transcriptというオブジェクトに、文字列を表示せよ”というメッセージを送る――それがSmalltalkの動作原理です。

Smalltalkでは、すべてがオブジェクトとして扱われます。

数値も文字列も、ウィンドウやマウスカーソルさえもオブジェクトであり、それらが互いにメッセージを送り合うことで世界が動いています。

この概念は、のちにC++、Java、Python、Rubyといった主要な言語に受け継がれ、オブジェクト指向という思想を現代のプログラミングの中心へと押し上げました。

当時のSmalltalkは、単なる言語ではなく、「対話的なコンピュータ環境」そのものでした。プログラマーはコードを入力しながら、即座にその動作を確認し、オブジェクト同士の関係を“生きた世界”として観察できたのです。

Transcript show: 'Hello, World!'.という一行の背後には、“コードは命令ではなく、会話である”という小さな哲学が宿っています。

Smalltalkは、コンピュータと人間の対話を「オブジェクトとメッセージの宇宙」として再定義した、まさにプログラミングの思想そのものを生んだ言語なのです。

C言語

#include <stdio.h>

int main() {
  printf("Hello,World! \n");
  return 0;
}

C言語(シー言語)は、1972年にAT&Tベル研究所のデニス・リッチーによって誕生した、近代プログラミングの礎と呼ばれる言語です。

その設計思想は「効率」「柔軟性」「移植性」の三拍子を兼ね備え、B言語の後継として開発されました。

当時、UNIXオペレーティングシステムをC言語で書き直したことで、ソフトウェアがハードウェアに依存せず動くという革新をもたらしました。C言語の「Hello, World!」は、今も世界中で最も有名なプログラムとして知られています。

このたった数行の中に、C言語の哲学がすべて詰まっています。

#include <stdio.h> は標準入出力ライブラリを呼び出す命令であり、printf() 関数によって文字列が画面に表示されます。最後に return 0; が、プログラムの正常終了を意味します。

構文は簡潔でありながら、ポインタ、メモリ操作、構造体、関数といった要素を通して、コンピュータの仕組みを直接触れるように設計されています。

まさに「高級言語と低級言語の橋渡し」として生まれたのがC言語でした。この言語は、その後のプログラミング界に圧倒的な影響を与えました。

C++、Objective-C、C#、Java、Python、Go、Rust――数え切れないほどの言語がCの構文や概念を継承しています。

つまり、Cを理解することは「すべての言語の共通語を学ぶこと」と言っても過言ではありません。「Hello, World!」と出力するその一瞬、コンピュータは人間の意志を文字列に変えて返す。その仕組みを初めて体系的に整えたのがC言語でした。

それは、単なるプログラムではなく、人間と機械が同じ“論理の言葉”を話し始めた瞬間だったのです。

C ++

#include <iostream>

int main() {
  std::cout  <<"Hello,World!"  <<  std::endl;
  return 0;
}

C++(シープラスプラス)は、1983年にデンマークの計算機科学者ビャーネ・ストラウストラップによって開発された、C言語の進化形にして、オブジェクト指向時代の扉を開いた言語です。

Cの高い実行効率と低レベル制御をそのまま受け継ぎつつ、クラスや継承、ポリモーフィズムといった抽象化の仕組みを導入しました。これにより、C++は「マシンに近い力強さ」と「人間的な設計思想」を併せ持つ、極めてバランスの取れた言語として発展しました。

C++の”Hello,World!”は、上記のように記述します。C言語の printf に代わって、C++では cout<< 演算子を用いた出力が登場しました。この表現は単なる記法の違いではなく、「データをストリームとして扱う」というオブジェクト指向的な考え方を反映しています。

ここに、C++が単なる“拡張C”ではなく、新しい思想をもった独立した言語であることが示されています。

C++は、その柔軟さと高性能ゆえに、ゲーム開発、金融システム、OS、組み込み機器など、極めて幅広い分野で使われています。また、後に登場するJavaやC#などのオブジェクト指向言語も、このC++を直接的に継承しています。

「Hello, World!」という出力は、C++では単なる文字列表示ではありません。それは、オブジェクトとストリームの対話であり、複雑な仕組みをシンプルに表現するというC++の美学そのものです。

C++は、Cの実用性に“設計の哲学”を加えた言語です。

つまり、「どう書くか」だけでなく「なぜそう書くのか」を問う――その精神こそが、C++を半世紀にわたって第一線に立たせ続けている理由なのです。

Objective-C

#import<Foundation/Foundation.h>

   int  main()
{
        @autoreleasepool{
            NSLog(@Hello,World!);
        }
        return  0;
}

Objective-C(オブジェクティブ・シー)は、Apple社のiOSやmacOSアプリ開発において長年主流だったプログラミング言語です。

C言語をベースに、Smalltalkのオブジェクト指向の概念を取り入れることで、柔軟で直感的な構文を実現しています。

誕生は1980年代前半で、Stepstone社のBrad CoxとTom Loveによって開発されました。その後、NeXT社(スティーブ・ジョブズが設立)に採用され、NeXTSTEPの標準言語として発展します。

AppleがNeXTを買収したことで、Objective-CはmacOS(当時のMac OS X)およびiOSアプリ開発の中核言語となりました。

Objective-Cの大きな特徴は、「動的型付け」と「メッセージ送信」にあります。メソッド呼び出しが実行時に解決されるため、柔軟なプログラミングが可能です。

また、C言語との高い互換性を持ち、低レベルの処理からGUIアプリまで幅広く対応できます。

しかし、2014年にAppleが「Swift」を発表して以降、Objective-Cの新規採用は減少しました。Swiftはより安全でモダンな構文を備えており、現在のApple開発環境では主流となっています。

ただし、既存のObjective-C資産は今も多く残っており、Apple公式SDKとの互換性の高さから、保守や連携のために学ぶ価値もあります。

すなわちObjective-Cは、Apple開発史の重要な一章を築いた古典的ながらも実用的な言語であり、Swiftと並んで理解しておくと、iOS開発の基礎をより深く理解できる言語と言えるでしょう。

Perl

#!/usr/bin/perl

print"Hello,World!\n";

Perl(パール)は、テキスト処理やスクリプト作成を得意とする汎用プログラミング言語です。

1987年にLarry Wall(ラリー・ウォール)によって開発され、「実用的で、楽しく使える言語」を目指して設計されました。

名前の由来は「Practical Extraction and Report Language(実用的抽出・レポート言語)」とされています。

当初はUNIX環境でのテキスト処理やレポート生成を効率化するために誕生しましたが、その柔軟性と豊富な機能から、システム管理やウェブ開発、ネットワークプログラミングなど、幅広い分野で利用されるようになりました。

特に1990年代後半から2000年代初期にかけては、CGI(Common Gateway Interface)を用いた動的Webサイト開発で爆発的に普及し、インターネット黎明期を支えた言語のひとつとして知られています。

Perlの最大の特徴は「テキスト処理能力の高さ」と「自由度の高さ」です。正規表現を強力にサポートしており、複雑な文字列操作を簡潔に記述できます。

また、文法の自由度が非常に高く、「同じ結果を複数の書き方で表現できる」ことも魅力とされています。この柔軟さから、「There’s more than one way to do it(やり方はひとつじゃない)」という哲学がPerl文化の象徴となっています。

一方で、可読性の低下やコードの複雑化が問題視されることもあり、近年ではPythonやRubyなど、よりモダンで構文が明快な言語に置き換えられる場面も増えています。

しかし、Perlは現在も進化を続けており、Perl 5系に加えて、より新しい設計思想を取り入れた「Raku(旧Perl 6)」も登場しています。

つまりPerlは、Web黎明期を支えた歴史的言語でありながら、今もなお堅牢なテキスト処理言語として一定の地位を保ち続けている、独自の魅力を持つ言語です。

Python

print("Hello,World!")

Python(パイソン)は、シンプルで読みやすい文法と、幅広い用途で知られる人気の高いプログラミング言語です。

1991年にオランダ人プログラマーのGuido van Rossum(グイド・ヴァンロッサム)によって公開され、「誰にでも分かりやすく、楽しく使える言語」を目指して設計されました。

名前の由来は、爬虫類のニシキヘビではなく、イギリスのコメディ番組「Monty Python’s Flying Circus」に由来しています。

Pythonの最大の特徴は「読みやすさ」と「汎用性」です。文法が非常に明快で、インデント(字下げ)によって構造を表現するため、他の言語に比べてコードが整然としており、初心者にも理解しやすい構造になっています。

たとえば「Hello, World!」を表示するだけなら、Pythonでは上記のように1行で書けます。

この簡潔さが、教育用途や初心者学習において圧倒的な人気を集める理由の一つです。

また、Pythonは「何でもできる言語」としても知られています。Webアプリ開発(DjangoやFlaskなど)、データ分析や機械学習(NumPy、Pandas、TensorFlowなど)、自動化スクリプト、IoT、ゲーム開発、さらにはAI分野に至るまで、膨大なライブラリとフレームワークが整備されています。

そのため、研究者からエンジニア、クリエイターまで幅広い層に支持されています。

さらに、Pythonのコミュニティは非常に活発で、世界中の開発者が日々新しいツールやパッケージを共有しています。これにより、初心者が困ったときにも情報を見つけやすく、実践的な開発環境を整えやすいという利点もあります。

つまりPythonは、単なるプログラミング言語ではなく、現代のテクノロジー社会を支える「学びやすく、使いやすく、発展し続ける」万能言語なのです。

Microsoft Visual Basic(VB)

Imports System

Module HelloWorld
    Sub main()
        console.writeline("Hello,World!")
    End Sub
End Module

Microsoft Visual Basic(通称VB)は、マイクロソフトが開発したプログラミング言語で、Windowsアプリケーションの開発を劇的に簡単にした言語として知られています。1991年に登場し、「プログラミングを誰にでも分かりやすくする」ことを目標に設計されました。そのルーツは1960年代に登場したBASIC(Beginner’s All-purpose Symbolic Instruction Code)にあり、教育向け言語としてのBASICを、Windows時代に合わせて進化させたのがVisual Basicです。

Visual Basicの最大の特徴は「視覚的な(Visual)」開発環境にあります。従来のようにすべてのUIをコードで書くのではなく、ドラッグ&ドロップでボタンやテキストボックスなどの部品を配置し、それにイベント(クリックや入力など)を関連づけるだけで、直感的にアプリケーションを作ることができます。この手軽さから、1990年代〜2000年代初頭にかけて、企業の業務ソフトや教育現場などで広く採用されました。

「Hello, World!」を表示するVBのプログラムも、上記のように非常に分かりやすく書けます。

このように簡潔で、英語に近い構文を採用しているため、初心者でもすぐに読み書きできるのがVBの魅力です。

その後、Visual Basicは進化を続け、.NET Framework上で動作するVisual Basic .NET(VB.NET)として生まれ変わりました。これにより、C#など他の.NET言語と共通の基盤でアプリ開発が可能になり、デスクトップだけでなくWebアプリやクラウド開発にも対応するようになりました。

今日では、C#の影に隠れがちな存在となりましたが、VBは依然として企業の業務システムや教育現場などで利用され続けています。プログラミング初心者が「コードを書くことの楽しさ」を体験するための入口としても、今なお価値のある言語です。


advertising


Visual Basic for Applications(VBA)

Sub Hello,World()
    MsgBox"Hello,World!"
End Sub

Visual Basic for Applications(VBA)は、Microsoft Office製品――Word、Excel、Access、PowerPointなど――に組み込まれたマクロ言語であり、「Officeを自動化するためのVisual Basic」として1990年代に登場しました。もともとは「Visual Basic」の派生言語であり、同じ構文を採用しながらも、アプリケーション内部で動作し、ユーザーの繰り返し作業を効率化する目的で設計されています。

VBAの魅力は、プログラミング初心者でも「今使っているExcelやWordをもっと便利にしたい」という実務的な動機から始めやすい点にあります。たとえば、日報の自動作成や大量データの整理、ボタンひとつでメール送信など、手作業を一瞬で処理できるようにすることで、業務効率を劇的に向上させます。

「Hello, World!」を表示するVBAのコードは、上記のようにシンプルです。

上記のコードを実行すると、Excel上に「Hello, World!」というメッセージボックスが表示されます。VBAは、Visual Basicと同じように人間に読みやすい構文を持ち、文法的にも自然な英語に近いため、非エンジニアでも学びやすい言語です。

VBAの特徴は、単なるプログラミング言語ではなく、「Officeの内部に埋め込まれた自動化エンジン」であることです。Excelのセル操作、Wordの文書整形、Outlookのメール送信など、Office製品のあらゆる機能をコードで制御できます。また、他のOfficeアプリを連携させる「マクロ間通信」も可能で、たとえばExcelのデータを自動でWord文書に出力する、といった複雑な処理も実現できます。

現在でも、VBAは企業の現場で非常に多く使われています。特に、非IT部門で「プログラミング未経験者が自分で業務を自動化できる」唯一の手段として支持され続けており、“事務職からはじめるプログラミング”の代表格と言えます。
VBAは、Visual Basicの精神――「誰でもプログラミングを使えるように」――を最も実務的な形で継承している言語です。

Ruby

puts "Hello,World!"

Ruby(ルビー)は、日本で生まれた純粋なオブジェクト指向プログラミング言語で、世界中の開発者から高く評価されています。1995年にまつもとゆきひろ(通称Matz)氏によって公開され、「人間が楽しんで書けるプログラミング言語」を目指して設計されました。その理念は「プログラマーの幸せのために」という言葉に集約されています。

Rubyの特徴は、コードが美しく、直感的で、読みやすいという点です。複雑な構文を極力排除し、自然な英語に近い書き方で、誰でも理解しやすい設計になっています。たとえば「Hello, World!」を表示する場合、Rubyでは上記のようにたった1行で書けます。

このように簡潔でありながら、内部ではしっかりとしたオブジェクト指向設計が採用されており、すべての要素――数値、文字列、クラス、メソッド――がオブジェクトとして扱われます。これにより、柔軟で拡張性の高いプログラムを美しく構築することができます。

Rubyが世界的に注目を浴びるきっかけとなったのは、Webアプリケーションフレームワーク「Ruby on Rails(ルビー・オン・レイルズ)」の登場です。2004年に公開されたこのフレームワークは、「少ないコードで多くのことを実現する」ことを可能にし、スタートアップや個人開発者の間で爆発的に普及しました。TwitterやGitHubといった有名サービスも、初期にはRuby on Railsで開発されていたことが知られています。

さらに、Rubyは開発者の自由度を大切にしており、「同じ結果を得るために複数の書き方が許される」という柔軟な哲学を持ちます。これは「プログラマーの思考や好みを尊重する」設計思想であり、他の言語にはない魅力です。

現在でもRubyは、Web開発だけでなく、自動化スクリプト、教育、データ処理など多様な分野で利用されています。
Rubyは、日本発の言語として世界中に「プログラミングの楽しさ」を広めた存在であり、今なお多くの開発者に愛され続けています。

Java

public class HelloWorld {
  public static void main(string[]args){
      System.out.println("Hello,World!");
  }
}

Java(ジャバ)は、1995年にSun Microsystems(現Oracle社)によって開発された、世界で最も広く使われているプログラミング言語の一つです。
もともとは家電製品の制御を目的に設計されましたが、インターネットの発展とともに「どんな環境でも動くプログラム」を実現できる言語として急速に普及しました。

Javaの代表的なスローガンは、「Write Once, Run Anywhere(1度書けば、どこでも動く)」。
これは、Javaで書かれたプログラムが特定のOSに依存せず、Windows・macOS・Linuxなどどの環境でも同じように動作するという思想を表しています。
その秘密は「Java仮想マシン(JVM)」という仕組みにあります。ソースコードをコンパイルすると、JVM上で実行される中間言語(バイトコード)に変換されるため、異なるOSでも同じ動作を実現できるのです。

「Hello, World!」を表示するJavaの基本的なコードは上記の通りです。

このように、Javaはクラスとメソッドを明確に定義する構造を持ち、厳格でありながらも整然としたプログラム設計を可能にします。
そのため、規模の大きいシステム開発やチーム開発において特に重宝されており、企業の業務アプリケーション、Webサービス、モバイルアプリ(特にAndroidアプリ開発)など、あらゆる分野で利用されています。

また、Javaは「堅牢で安全」という評価も高く、メモリ管理の自動化(ガーベジコレクション)や、例外処理の仕組みによって、バグやクラッシュの少ない信頼性の高いシステムを構築できます。
さらに、Spring Frameworkなどの強力なライブラリ群により、Webアプリケーション開発にも強みを発揮します。

今日では、PythonやJavaScriptなどのモダン言語が人気を集めていますが、Javaは依然として金融・通信・官公庁・Android開発といった分野の基盤を支える重要な存在となっています。
堅実で長く使える言語を学びたい人にとって、Javaは今もなお最良の選択肢のひとつと言えるでしょう。

PHP/FI

<HTML>
<HEAD>
<TITLE>Hello,World! in PHP/FI</TITLE>
</HEAD>
<BODY>
  <?php
    echo "Hello,World!";
   ?>
</BODY>
</HTML>

PHP/FIは、1990年代半ばに誕生した、ウェブスクレイピング/CGI向けスクリプト言語の先駆的存在です。当初はRasmus Lerdorfが自身の履歴ページ用に作成した「Personal Home Page Tools」が起源で、その後フォーム入力を処理するための「Forms Interpreter(FI)」という実装が加わり、PHP/FIとして発展しました。

PHP/FIのコードは、現在のPHPと比べると非常に簡素で、HTML内に埋め込まれたスクリプトを直接実行するスタイルを持っていました。たとえば、フォームデータを読み取り、条件分岐してHTML出力を切り替えるような処理が可能でした。

このひとつの環境から発展し、後にPHPとして、インターネット上で最も普及したサーバーサイド言語のひとつへと成長しました。PHP/FIの段階では、変数の扱いやHTML埋め込み構文、フォーム/データベース連携などの基礎機能が試みられており、1996年末にはすでに数万サイトで使われていたという記録もあります。

つまり、PHP/FIは「動的Webページを手軽に作る」という時代背景の中で、HTML+スクリプト連携のひな形を示した言語であり、今日のWeb開発潮流を形作った“原点のひとつ”と言えます。

要するに、PHP/FIは高性能な汎用言語ではありませんでしたが、「フォーム処理」「動的ページ生成」「HTMLとの結合」というWeb開発の必須テーマを、当時の環境で実践可能にした画期的な試みだったのです。

JavaScript

console.log("Hello,World!");

JavaScript(ジャバスクリプト)は、Webの世界を支える中核的なプログラミング言語のひとつです。
1995年、Netscape社のエンジニアであったブレンダン・アイクによって、わずか10日間で設計されました。
当時、Webページは単なる静的な文書にすぎませんでしたが、JavaScriptの登場によって「ユーザーの操作に反応する動的なページ」が実現し、インターネットの体験が一変しました。

名前に「Java」と付いていますが、Javaとは直接の関係はありません。
当時のJavaの人気にあやかって名付けられたもので、JavaScriptはあくまでブラウザ上で動くスクリプト言語として独自に発展しました。

JavaScriptの特徴は、即時実行性と柔軟性の高さです。
ブラウザに組み込まれた実行環境(エンジン)によって、サーバーとの通信を待たずにページの内容を書き換えたり、アニメーションを動かしたり、ボタン操作に反応したりできます。
たとえば、Webページ上に「Hello, World!」を表示するコードは上記の通りです。

このように、JavaScriptは初心者でも動作をすぐに確認できる手軽さがあり、学習のハードルが低い言語としても知られています。

その後、2000年代に入ると、JavaScriptは「Ajax」という非同期通信技術によって再び注目を浴び、Webアプリがデスクトップアプリ並みに動作するようになりました。
さらに、Googleが開発した「V8エンジン」により処理速度が飛躍的に向上し、Node.jsの登場によってサーバーサイドでも使える言語へと進化しました。

今では、HTML・CSS・JavaScriptの3つがWeb開発の基盤とされ、Webサイト、スマートフォンアプリ、デスクトップアプリ、さらにはAIやIoTの分野にまで応用されています。

JavaScriptは、単なるスクリプト言語ではなく、Webそのものを動かすエンジンです。
その柔軟さと発展性によって、今もなお世界中の開発者に最も愛されるプログラミング言語のひとつとして君臨しています。

C#

using System;

namespace HelloWorld
{
  class program
  {
    static void Main(string[] args)
    {
      Console.WriteLines("Hello,World!");
    }
  }
}

C#(シーシャープ)は、Microsoftが2000年に発表したモダンなプログラミング言語で、主にWindowsアプリケーション開発を目的として誕生しました。
その設計には、JavaやC++、そしてVisual Basicなどの影響が見られますが、これらの長所を統合しつつ、より安全で扱いやすい構文を備えた言語として開発されました。
C#の名前の「#」は、音楽記号のシャープを意味し、「C++より一段上の言語」という意図が込められています。

C#の最大の特徴は、.NET Framework(現在は.NET)と密接に統合されていることです。
このフレームワークは、プログラムの実行を支える共通基盤であり、メモリ管理、例外処理、ファイル操作、ネットワーク通信など、開発に必要な機能を包括的に提供しています。
そのため、C#はWebアプリケーション、デスクトップアプリ、モバイルアプリ、ゲーム開発まで幅広い用途に対応できる、まさに「万能言語」といえる存在です。

「Hello, World!」を表示する基本的なC#のコードは上記の通りです。

このように、C#はC系の構文を持ちながらも、非常に読みやすく整った文法をしています。
また、静的型付けによるエラー防止、ガーベジコレクションによる自動メモリ管理、そしてオブジェクト指向を重視した設計により、安全で堅牢なアプリケーション開発が可能です。

C#の魅力はその汎用性にあります。
Windows環境での開発はもちろん、現在では「.NET Core」や「.NET MAUI」によって、macOS、Linux、iOS、Androidといったマルチプラットフォームにも対応。
さらに、Unityエンジンを通じてゲーム開発の主要言語としても広く利用されています。
世界中のインディー開発者から大手ゲームスタジオまで、C#で作られた作品は数多く存在します。

つまりC#は、Microsoftが築いた堅牢な基盤の上で進化し続ける、安定性と柔軟性を兼ね備えた近代的なプログラミング言語です。
その実用性と美しい構文は、エンタープライズ開発からクリエイティブな分野まで、あらゆる場面で輝きを放ち続けています。

D言語

import std.stdio;

void main()
{
  writeln("Hello,World!");
}

『D言語(D Programming Language)』は、C言語やC++の後継として設計された高性能なプログラミング言語です。

1999年にウォルター・ブライトによって構想され、2001年に初版が公開されました。C系の構文をベースにしながらも、ガベージコレクションや例外処理、ユニットテスト機能、そして強力なメタプログラミングを標準で備えています。これにより、低レベルの制御が可能でありながら、安全でモダンな開発が行える点が特徴です。

たとえば、もっとも基本的な「Hello, World!」を出力するプログラムは上記のように書かれます。

このコードでは、標準入出力ライブラリを読み込み、writeln 関数で文字列を表示しています。C++に比べて記述が簡潔でありながら、コンパイル後はネイティブコードとして非常に高速に動作します。

D言語は、C++の複雑さを整理しつつ、Pythonのような生産性を取り入れた設計思想を持ちます。コンパイル時メタプログラミングや静的解析など、現代的な機能を自然に扱える点でも優れており、システムプログラミングからゲーム開発、科学技術分野まで幅広く応用されています。

Go

package main

import "fmt"

func main(){
    fmt.Println("Hello,World!")
}

Go言語(Golang)』は、Googleによって開発されたシンプルかつ高性能なプログラミング言語です。

2009年にロバート・グリースマー、ロブ・パイク、ケン・トンプソンらによって発表され、C言語の効率性とPythonのような簡潔さを併せ持つことを目的に設計されました。Goは特に並行処理(Concurrency)を得意としており、複数のタスクを同時に実行する「ゴルーチン(goroutine)」や「チャネル(channel)」によって、高速かつ安定した処理を容易に実現できます。

もっとも基本的な「Hello, World!」を出力するコードは上記のようになります。

このコードでは、fmtパッケージのPrintln関数を使用して文字列を出力しています。構文はシンプルで、セミコロンや冗長な宣言が不要なため、コードの可読性と保守性が高いのが特徴です。

Go言語は、コンパイルが非常に速く、メモリ管理も自動で行われるため、大規模なWebサービスやクラウドインフラ開発などで広く利用されています。DockerやKubernetesなどの代表的なオープンソースプロジェクトにも採用されており、現代の分散システム開発を支える重要な言語の一つとなっています。

Dart

void main() {
    print('Hello,World!');
}

『Dart(ダート)』は、Googleが開発したモダンなプログラミング言語で、主にWebアプリやモバイルアプリの開発に利用されています。

2011年に登場したDartは、JavaScriptの課題を解決するために設計され、オブジェクト指向・クラスベースの構文を採用しています。静的型付けと動的型付けの両方を柔軟に扱える点が特徴で、可読性が高く、初心者にも学びやすい設計です。また、Dartの最大の特徴は、Google製のクロスプラットフォーム開発フレームワーク『Flutter』の開発言語として採用されていることです。

もっとも基本的な「Hello, World!」を出力するコードは上記のように記述します。

このシンプルな構文は、C言語やJavaに馴染みのある開発者にも理解しやすく、コンパクトながらも強力です。print()関数で文字列を標準出力に表示するだけで、特別な設定やライブラリを必要としません。

Dartは、Webブラウザ上で動作するJavaScriptへのコンパイル機能に加え、JIT(実行時コンパイル)とAOT(事前コンパイル)の両方をサポートしています。そのため、開発中は高速なホットリロードが可能で、リリース時にはネイティブコードとして高いパフォーマンスを発揮します。

その洗練された設計とFlutterとの強力な連携により、Dartはスマートフォン、デスクトップ、Web、さらには組み込みシステムまでを網羅する次世代の開発言語として注目を集めています。

Swift

import Swift
print("Hello,World!")

『Swift(スウィフト)』は、Appleが開発したモダンで安全性の高いプログラミング言語です。

2014年にWWDCで発表され、Objective-Cの後継としてiOSやmacOSなどApple製デバイス向けのアプリ開発を目的に設計されました。Swiftは、簡潔な構文と強力な型推論機能を備えており、パフォーマンスと安全性の両立を実現しています。C言語系の厳密な記述を必要とせず、コードの可読性と保守性を高めながらも、ネイティブレベルの高速な実行が可能です。

もっとも基本的な「Hello, World!」を出力するコードは上記のようになります。

このように、わずか一行でコンソール出力が可能であり、宣言やインポートを明示的に書く必要はありません。シンプルで直感的な文法は、初心者から上級者まで扱いやすいものとなっています。

Swiftは、メモリ安全性を重視した設計により、ヌルポインタ例外などの一般的なバグを防ぎやすく、関数型プログラミングの概念も柔軟に取り入れています。また、Playground機能を使えば、コードをリアルタイムで実行・検証でき、学習や試作にも最適です。

現在では、iPhoneアプリ開発だけでなく、サーバーサイドや機械学習、さらにはオープンソース化によってWindowsやLinux上でも利用が進んでおり、Swiftはモバイル開発の枠を超えて進化を続ける言語として広く注目されています。

Hack

<?hh

<<__EntryPoint>>
function main(9: void{
  echo "Hello,World!\n";
}

『Hack(ハック)』は、Meta(旧Facebook)が開発したプログラミング言語で、PHPをベースに改良された次世代のWeb開発向け言語です。

2014年に発表されたHackは、PHPの柔軟さを保ちながら、静的型付けを導入して安全性とパフォーマンスを大幅に向上させました。Facebook内部での大規模なWebシステムを効率的に開発・保守するために設計されており、現在も同社の基幹システムで広く利用されています。

Hackの大きな特徴は、「Gradual Typing(段階的型付け)」の採用です。これにより、従来のPHPコードをそのまま動かしつつ、必要に応じて静的型を追加できます。つまり、スクリプト言語の自由度と、コンパイル言語の安全性の両方を兼ね備えているのです。

もっとも基本的な「Hello, World!」を出力するコードは上記のように書かれます。

このコードでは、<?hh タグでHackのスクリプトであることを示し、<<__EntryPoint>> 属性によってプログラムの実行開始点を定義しています。echo文はPHPと同様に文字列を出力する構文で、Hackでもそのまま利用可能です。

HackはHHVM(HipHop Virtual Machine)上で動作し、PHPコードとの高い互換性を維持しながらも、型検査・ラムダ式・ジェネリクスなどのモダンな機能を備えています。特に、数千人規模の開発チームでもコードの一貫性を保ちやすいよう設計されており、Webサービスのバックエンド開発における生産性と堅牢性を高める言語として注目されています。

まとめ

いかがだったでしょうか?

ご紹介した通り、世の中には様々なプログラミング言語が存在し、簡単な”Hello,World!”プログラムだけでもこのような違いがあるのです。

また、プログラミング言語の歴史をひも解けば0と1からなる機械語から始まり、低水準言語であるアセンブリ言語を経て、革命的な言語であるC言語が登場。

その後、pythonなどのオブジェクト指向プログラミングが登場するなど、その発展の過程そのものが大変興味深いものであることが分かります。

皆さんも今回ご紹介した言語の中で興味がある言語がありましたら、是非勉強してみてはいかがでしょうか?

ここまでお読みいただき、ありがとうございました。

syuya

はじめまして、syuyaと申します。
読書から学んだ事や、サブカルチャーなど、様々な知識を日本中の人々と共有するべく日々ブログを続けています。
よろしくお願いいたします。

syuyaをフォローする
勉強
syuyaをフォローする
Syuyapedia -シュヤペディア-

コメント

タイトルとURLをコピーしました