プログラミング

静的型付け言語・動的型付け言語とは?

type

こんにちは、nomuyoguです!

無数にあるプログラミング言語の分類として、「静的型付け言語」「動的型付け言語」という分け方があります。

これらはそれぞれどのような言語のことを指すのでしょうか。

本記事では「静的型付け言語」「動的型付け言語」の概要について解説していきます。

それでは始めていきましょう!

静的型付け言語

まず前提として、プログラミングには変数の「」という概念が存在します。

「123」のような数値型、「あいう」のような文字列型などです。

コンピュータはこの「型」を元にして内部的な変数の扱い方を決定します。

そして、プログラマがコードを書く際、明示的に型を記述する必要があるプログラミング言語のことを「静的型付け言語」と言います。

代表的な静的型付け言語として、C・C++・Java・Goなどが挙げられます。

Goでの変数宣言は以下のように行います。

var name string = “nomuyogu”

これは、string型のnameという変数を”nomuyogu”という値で初期化するという意味です。

明示的にstring型であることを記述していますね。

静的型付け言語のメリットとして、変数に想定しない型の値が入ってエラーとなる事象を防ぐことができます。

また、メモリの最適化や、実行速度の速さなどもメリットとして挙げられます。

動的型付け言語

次に動的型付け言語です。

こちらはデータ型の明記が不要なプログラミング言語のことを指します。

静的型付け言語とは異なり、型を明記しなくても機械がコードを解釈し、型を想定して変数を扱ってくれるのです。

代表的な動的型付け言語として、Ruby・PHP・Python・JavaScriptなどが挙げられます。

PHPでの変数宣言は以下のように行います。

$name = “nomuyogu”;

変数の型を明記せずとも、$nameはstring型として扱われます。

動的型付け言語のメリットとして、コードの記述量を減らすことができ、比較的簡単に簡潔にコードを書けることが挙げられます。

ただし、そのように自由度が高い分、型起因のエラーが起きやすいことがデメリットです。

おわりに

今回は「静的型付け言語」「動的型付け言語」について解説しました。

両者の違いやメリット・デメリットを押さえておくことで、プログラミング言語全体の理解につながると思います!