どっちが良い?静的型付と動的型付【プログラミング言語】

どっちが良いの??静的型付or動的型付プログラミング言語
プログラミング言語には、静的型付と動的型付の2種類が存在します。intのようなデータ型をあらかじめ決めるか、柔軟に扱えるかの違いですが、それぞれメリット/メリットがあります。




どーも、新卒エンジニアのえびじゅん(@ebijun1007)です!

プログラミング言語には、静的型付言語と動的型付言語の2種類が存在します。
聞きなれない単語だと思いますが、簡単に説明すると変数の宣言の仕方で分かれます。

  • データ型が厳密なのが静的型付言語、柔軟なのが動的型付言語
  • 静的型付言語の方がコード量は多いが、バグが少なくなるため大規模開発するときに安心
  • 動的型付言語はコード量が少なくすみ、初心者にもわかりやすく、簡単なツールを作る時に向いている

静的型付言語とは

静的型付言語とは

C言語やJava、Go言語は静的型付言語と呼ばれ、変数を宣言する時にintやcharなどのデータ型を指定する必要があります。また、異なるデータ型の変数同士では、そのままデータを代入したり加算したりすることができません。

静的型付言語のメリット

コンパイル時にエラーを出力してくれるので、データの型が明確になり、いざ実行した時に曖昧なバグが発生する可能性を排除してくれる。大規模なシステムの場合、メンテナンスが大変なため、静的型付言語を用いることが多い。

コンパイルとは

プログラムのソースコードをコンピューターが実行可能な機械語に翻訳すること。C言語などで記述されたプログラムは、そのままでは実行できず、コンパイラーを使ってコンピューターが理解できるオブジェクトコードに翻訳する必要がある。

静的型付言語のデメリット

動的型付言語と比べて、同じ処理をするプログラムでもコード数が多くなりやすい。
自分だけが使うような、バグが多くても問題がないプログラムを作るときでも、厳密なチャックがされてしまうため、小規模開発やプログラミング入門には向いていない。

動的型付言語とは

動的型付言語とは

RubyやPytohnは動的型付言語と呼ばれ、変数にデータ型を指定する必要がなく、異なるデータ型同士の変数でも代入したり加算することができます。

動的型付言語のメリット

少ないコードでも複雑な処理ができるため、初心者でも簡単にプログラムを作ることができる。

動的型付言語のデメリット

コードに書かれていない部分の処理が多く、予期せぬエラーが発生しやすい。
また、アルゴリズム的には正しく見えていても、裏側の処理が見えないためエラーの発見が難しいことがある。

プログラミング初心者にオススメの勉強方法

プログラミング初心者にオススメの勉強方法

プログラミング初心者にオススメなのは、動的型付言語ですが、自分が興味を持ったほうでOKです。
プログラミングは楽しんで取り組むのが一番捗ります。

でも、どうせ勉強するなら新しい言語を勉強するのがオススメです。

動的型付言語であればGo言語
動的型付言語であればPythonかRubyといったところですね

下記リンクは実際に僕も使った教材の中から、自身を持ってオススメできるものです。

1 個のコメント

  • コメントを残す

    メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

    このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください