###はじめに
未来電子テクノロジーでインターンをしているやっきーです。
プログラミング初心者であるため、内容に誤りがあるかもしれません。
もし、誤りがあれば修正するのでどんどん指摘してください。
#マルチパラダイムプログラミング言語とは
複数のプログラミングパラダイムに対応するプログラミング言語のことです。
...と言われても、「プログラミングパラダイムとは何か?」と思いますよね。
#プログラミングパラダイムとは
プログラミングパラダイムは、プログラミングの記述における方法や考え方を表したものです。
例えば、人間関係のトラブルを解決する時に取る手法には様々なものがあると思います。話し合いで解決するとか、人伝いで言いたいことを伝え合うか、はたまたコブシで決着をつけるか(これは良くないですね)。
プログラミング言語にも、与えられた問題を処理するための方法があり、これをプログラミングパラダイムといいます。
##プログラミングパラダイムの例
- 手続き型言語
- 構造化プログラミング
- オブジェクト指向プログラミング
- 関数型プログラミング
- 論理プログラミング
など、本当に様々なパラダイムがあります。
#プログラミングパラダイムに対応する言語の例
プログラミングパラダイム | 言語 |
---|---|
手続き型言語 | C言語 |
オブジェクト指向プログラミング | Python, C# |
関数型プログラミング | Scala |
論理プログラミング | Prolog |
#マルチパラダイムプログラミング言語の例
- C++ 手続き型言語、オブジェクト指向プログラミングなどが含まれています。
- Javascript 手続き型言語、関数型言語、オブジェクト指向プログラミングなどが含まれています。
#まとめ
プログラミング言語には多数のパラダイムと呼ばれる手法、考え方が存在しており、複数のプログラミングパラダイムを持つ言語をマルチパラダイムプログラミング言語といいます。
どの言語も、何らかのプログラミングパラダイムに属していることが多く、マルチパラダイムではない言語を見つけることは非常に困難だと思われます。
しかし、マルチパラダイムの定義が曖昧なため、複数のパラダイムをもつ言語でもマルチパラダイムプログラミング言語とされないこともあるようです。