Java Technology

動的型付け言語と静的型付け言語|データ型を宣言する・しないのメリットは?

2020-12-07

Javaの学習中、データ型についてこんがらがってきたので、整理のために下の記事を書いていたのだが、そもそもなんでデータ型なんてあるのだろうとずっと疑問だった。


しかし上記の回答はしっかりこの動的型付け言語と静的型付け言語という分類の中にあったのでメモ。


データ型の宣言は言語によってはなくてもよいものもある

データ型の宣言は絶対しなければいけないものではない。

実際、データ型を宣言しないプログラミング言語も存在する。それが動的型付け言語。逆に、静的型付け言語は、データ型を宣言する必要がある。

動的型付け言語:変数の宣言時にデータ型を宣言しない。

動的型付け言語の種類:JavaScript / Python / Ruby /

静的型付け言語:変数の宣言時にデータ型を宣言する。

静的型付け言語の種類:C / C++ / C# / Java / Scala / Swift

じゃあそれぞれの言語でわざわざデータ型を宣言したりしなかったりするのか。


データ型を宣言する・しないのメリットは?

メリットデメリットの比較に関しては、このリンク先がとてもわかりやすかった。

まとめると以下の理由があるとのこと。

データ型を宣言しない(動的型付け言語)メリット

  • コードの記述量が減る(int とか Stringとかつける必要がないから)
  • プログラムを書く難易度が下がる(静的型付き言語ではデータ型の記述を間違えるとエラーになる

データ型を宣言する(静的型付け言語)メリット

  • コンパイル時にエラーが出てくれる(「整数を入れなければいけない変数なのに文字列が入っている」というようなエラーが把握できる。これはデータ型を書くからこそ把握しやすいエラー)
  • メモリ領域の最適化が行える(データ型が書いてないと、正確に必要なメモリ領域を把握できない)
  • 演算処理のスピードが上がる(前もって小数なのか整数なのか把握できるから)

ということで、データ型の宣言は絶対必要なものではなくて、あってもなくても良いものだった。

-Java, Technology