🐈

静的型付けと動的型付けの違いをTypeScriptとPythonで学ぶ

に公開

型付けの種類

プログラミング言語には「静的型付け」と「動的型付け」という2つの考え方があります。これは、変数にどのように「型(データの種類)」を割り当てるかの違いです。たとえば「数値」なのか「文字列」なのかを、プログラムがどのタイミングで判断するかが異なります。TypeScriptは静的型付け、Pythonは動的型付けの代表です。

静的型付けのメリット

静的型付けとは、プログラムを実行する前に型を決める方式です。TypeScriptでは「let age: number = 30;」のように型を明示します。もし「age = ‘三十歳’」と文字列を代入しようとすれば、実行前の段階でエラーが検出されます。これは「コンパイル時エラー」と呼ばれ、開発者がコードを書く段階で型の不整合を修正できるという大きな利点があります。

動的型付けのメリット・デメリット

一方、Pythonのような動的型付けでは、変数の型が実行時に決まります。たとえば「age = 30」と書いたあとに「age = ‘三十歳’」と書き換えても問題なく動きます。しかし、もしその後の処理で「年齢に1を足す」という演算を行うと、実行して初めてエラーが発生します。ここで問題になるのは、実行時にエラーが出るということは、実際にプログラムを動かす必要があるという点です。開発環境でプログラムを動かすには、データの準備、データベースやAPIへの接続設定など、時間と手間がかかります。そのたびにエラーで止まっていては効率が悪く、根本的な修正にも時間を要します。だからこそ、実行前に検知できるエラーは早い段階で潰しておくことが重要です。

まとめ

静的型付けはまさにそのための仕組みであり、開発時点で多くの不具合を未然に防ぎます。結果として「実行して確かめるべきこと(テストすべき範囲)」を狭めることができ、開発効率と品質の両方を高めるのです。Pythonのような動的型付けは素早く書けるという利点がある一方で、TypeScriptのような静的型付けは「実行前に安心を得られる」仕組みだと言えるでしょう。

Discussion